[Issue 12740] DMD accepts invalid version syntax
via Digitalmars-d-bugs
digitalmars-d-bugs at puremagic.com
Wed May 28 19:21:37 PDT 2014
https://issues.dlang.org/show_bug.cgi?id=12740
--- Comment #2 from Kenji Hara <k.hara.pg at gmail.com> ---
The issue is in the definition of ConditionalDeclaration.
$(GNAME ConditionalDeclaration):
$(GLINK Condition) $(GLINK DeclarationBlock)
$(GLINK Condition) $(GLINK DeclarationBlock) $(D else) $(GLINK
DeclarationBlock)
$(GLINK Condition) $(D :) $(GLINK DeclDefs)$(OPT)
In here, `version(id): ...` is explicitly allowed but `version(id) ... else:`
is not.
To fix the issue, ConditionalDeclaration should have following additional
grammar.
$(GLINK Condition) $(GLINK DeclarationBlock) $(D else) $(D :) $(GLINK
DeclDefs)$(OPT)
--
More information about the Digitalmars-d-bugs
mailing list