shouldn't this code at least trigger a warning?
Gary Willoughby via Digitalmars-d-learn
digitalmars-d-learn at puremagic.com
Wed Apr 29 03:48:36 PDT 2015
On Wednesday, 29 April 2015 at 06:37:44 UTC, ketmar wrote:
> subj. the code:
>
> void main () {
> import std.stdio;
> char ch = '!';
> switch (ch) {
> int n = 42;
> case '!': writeln(n, ": wow!"); break;
> default:
> }
> }
>
>
> i think that such abomination should:
> 1. be forbidden, or
> 2. trigger a warning, or
> 3. execute initializer anyway.
>
> currently the code is allowed, no warnings triggered, yet `n` is
> uninitialized. and having uninitialized variable without
> "=void" "should
> not be".
Please raise an issue in bugzilla. This is obviously an error.
More information about the Digitalmars-d-learn
mailing list