https://issues.dlang.org/show_bug.cgi?id=12496
--- Comment #3 from Mike <[email protected]> --- A better example: module test; import std.stdio; final abstract class T1 { final abstract class C(uint value) { static uint getValue() { return value; } } alias Child = C!2; } final abstract class T2 { final abstract class Child { static uint getValue() { return 2; } } } void main() { writeln(__traits(parent, T1.Child).stringof); // this should be T1 writeln(__traits(parent, T2.Child).stringof); // this should be, and is, T2 } --
