On Thursday, 29 May 2014 at 11:08:03 UTC, Leandro Lucarella wrote:
I think void means "you don't know what the
value is", not "is a random value" or "a value different from
default" (which is impossible for stack values, at least if the
behind void is to avoid the extra runtime cost ;).
The language docs state, "If the Initializer is void, however,
the variable is not initialized." Which I suspect is false in the
case of module scope and as Steven pointed out, other times doing
special "don't init" is costly.