/* TEST_OUTPUT: --- fail_compilation/fail117.d(37): Error: expression `foo.mixin MGettor!(a) geta; ` is `void` and has no value fail_compilation/fail117.d(38): Error: expression `foo.mixin MGettor!(b) getb; ` is `void` and has no value --- */ // https://issues.dlang.org/show_bug.cgi?id=420 // mixin make dmd break //import std.stdio; template MGettor(alias Fld) { typeof(Fld) opCall() { //writefln("getter"); return Fld; } } class Foo { int a = 1, b = 2; mixin MGettor!(a) geta; mixin MGettor!(b) getb; } void main() { auto foo = new Foo; int a = foo.geta; int b = foo.getb; }