http://d.puremagic.com/issues/show_bug.cgi?id=9026
Summary: Template mixin identifier as template alias parameter doesn't work Product: D Version: D2 Platform: All OS/Version: All Status: NEW Keywords: rejects-valid Severity: normal Priority: P2 Component: DMD AssignedTo: nob...@puremagic.com ReportedBy: k.hara...@gmail.com --- Comment #0 from Kenji Hara <k.hara...@gmail.com> 2012-11-14 21:13:35 PST --- >From the digitalmars.d.learn forum: http://forum.dlang.org/thread/xftbyifuuubxhhsol...@forum.dlang.org Code: --- mixin template node() { static if (is(this == struct)) alias typeof(this)* E; else alias typeof(this) E; //Line5 E prev, next; } struct list(alias N) { N.E head; N.E tail; } class A { mixin node L1; //Line13 mixin node L2; //Line14 } list!(A.L1) l1; //Line16 list!(A.L2) l2; //Line17 --- Output: --- test.d(5): Error: this is not in a class or struct scope test.d(5): Error: 'this' is only defined in non-static member functions, not node!() test.d(13): Error: mixin test.node!() error instantiating test.d(16): Error: list!(L1) is used as a type test.d(5): Error: this is not in a class or struct scope test.d(5): Error: 'this' is only defined in non-static member functions, not node!() test.d(14): Error: mixin test.node!() error instantiating test.d(17): Error: list!(L2) is used as a type --- -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------