https://issues.dlang.org/show_bug.cgi?id=14406
Issue ID: 14406
Summary: GIT HEAD ignores forward reference and generates wrong
code
Product: D
Version: unspecified
Hardware: x86_64
OS: Linux
Status: NEW
Severity: regression
Priority: P1
Component: DMD
Assignee: [email protected]
Reporter: [email protected]
Reduced test.
// assertion fails -- both bar_obj and foo should be null though
class Foo {}
string str_mixin(T)() {
alias P = Poo!T;
return "Bar bar_obj;
static class Bar { Foo foo; }";
}
template Poo(T) {
static if(T.tupleof.length) {};
}
class Frop {
mixin(str_mixin!(typeof(this)));
}
void main() {
Frop simple = new Frop;
assert(simple.bar_obj.foo is null, "foo is not null");
}
--