digitalmars.D.bugs - [Issue 16354] New: CTFE static foreach doesn't work with mixin import
- via Digitalmars-d-bugs (38/42) Aug 05 2016 https://issues.dlang.org/show_bug.cgi?id=16354
https://issues.dlang.org/show_bug.cgi?id=16354 Issue ID: 16354 Summary: CTFE static foreach doesn't work with mixin import Product: D Version: D2 Hardware: x86_64 OS: Linux Status: NEW Severity: minor Priority: P1 Component: dmd Assignee: nobody puremagic.com Reporter: greensunny12 gmail.com Using static foreach with mixin imports doesn't seem to work whereas it works with the CTFE foreach loop;foo.dvoid main() { import std.meta : AliasSeq; alias mods = AliasSeq!("test1"); foreach (mod; mods) mixin("import bar : " ~ mod ~ " = bar_fun;"); test1(); }bar.dvoid bar_fun() { import std.stdio; writeln("works"); } One gets:foo.d(9): Error: undefined identifier 'test1'However this does work ("manual loop unrolling") fine:foo.dvoid main() { import std.meta : AliasSeq; alias mods = AliasSeq!("test1"); mixin("import bar : " ~ mods[0] ~ " = bar_fun;"); test1(); } --
Aug 05 2016