[Issue 1399] Wrapping a case statement in a version statement gives a shadowing declaration error.
d-bugmail at puremagic.com
d-bugmail at puremagic.com
Mon Aug 12 10:24:25 UTC 2019
https://issues.dlang.org/show_bug.cgi?id=1399
RazvanN <razvan.nitu1305 at gmail.com> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
CC| |razvan.nitu1305 at gmail.com
Resolution|--- |INVALID
--- Comment #7 from RazvanN <razvan.nitu1305 at gmail.com> ---
This the correct behavior. The compiler identifies the end of a case statement
if it has encountered another case/default statement or the ending `}` of the
switch statement. Once a version identifier or even a static if is encountered,
the parser sees it as part of the case statement that it is analyzing at that
time.
A workaround would be to add the version block in the default statement and
lose the `case 2` statement.
Closing as invalid.
--
More information about the Digitalmars-d-bugs
mailing list