https://issues.dlang.org/show_bug.cgi?id=12624
Rainer Schuetze <[email protected]> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |[email protected] --- Comment #3 from Rainer Schuetze <[email protected]> --- I've used this bug to test the DustMite integration of Visual D, the result was: // datetime.d struct SysTime { import typecons; Rebindable!(immutable TimeZone) _timezone = UTC(); } class TimeZone { this(string , string , string ) immutable {} } class UTC : TimeZone { static immutable(UTC) opCall() { return _utc; } this() immutable { super("UTC", "UTC", "UTC"); } static _utc = new immutable(UTC); } // typecons.d template RebindableCommon(T, U, This) { union { U stripped; } void opAssign(T another) { stripped = cast() another; } this(T initializer) { opAssign(initializer); } } template Rebindable(T) { static if (is(T == immutable U, U)) struct Rebindable { mixin RebindableCommon!(T, U, Rebindable); } } //// compile with "dmd -lib datetime.d typecons.d" on git HEAD: Internal error: backend\cgobj.c 2332 Compiling with "-c" instead of "-lib" does not raise the ICE. --
