The following code sample fails in all cases: import std.stdio; void main() { class test { this(double t) { } }; struct testStruct { this(double t) { } }; double b = 2; double c = 4; void funcTest(double t) { } //testStruct( b /= c ); // <-- Internal error: backend/cg87.c 202 when pulled in //new test( b /= c ); // <-- Internal error: backend/cg87.c 202 when pulled in funcTest(b *= c); // <-- Internal error: backend/cg87.c 202 writefln("b = %1$s", b); }
Created attachment 1036 [details] Test sample file
This works without error on dmd 2.060 latest, on Linux with -m32 and -m64.