[Issue 9650] __traits(compiles) + mixin

d-bugmail at puremagic.com d-bugmail at puremagic.com
Sat Mar 23 12:20:00 PDT 2013


http://d.puremagic.com/issues/show_bug.cgi?id=9650



--- Comment #2 from github-bugzilla at puremagic.com 2013-03-23 12:19:57 PDT ---
Commits pushed to master at https://github.com/D-Programming-Language/dmd

https://github.com/D-Programming-Language/dmd/commit/ac89791f2a4c54cb255ee7e802fde74643b12412
fix Issue 9650 - __traits(compiles) + mixin

I couldn't minimize test case, but the bug fix is obvious.

The bug had been hiding for a long time, but recent Phobos change
(https://github.com/D-Programming-Language/phobos/commit/2a88fea7867f33fd1cf15c2dca7790a3c8aea474)
had exposed the bug.

When a mixin expression gets invalid code string, the parsing error had not
handled correctly. In such case, it had generated *invalid* AST instead of
returning ErrorExp. I guess that the invalid AST would report weird error in
later semantic analysis.

I think that both CompileDeclaration and CompileStatement do not have same
problem. So they are not changed.

https://github.com/D-Programming-Language/dmd/commit/618d8277aaf20c9f8d8eebc39289e3d2a1c63d42
Merge pull request #1728 from 9rnsr/fix9650

Issue 9650 - __traits(compiles) + mixin

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------


More information about the Digitalmars-d-bugs mailing list