https://issues.dlang.org/show_bug.cgi?id=11763
yebblies <yebbl...@gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Keywords| |pull Assignee|nob...@puremagic.com |yebbl...@gmail.com --- Comment #4 from yebblies <yebbl...@gmail.com> --- Reduced: struct NoDtor {} struct HasDtor { NoDtor func() { return NoDtor(); } ~this() {} } void main() { HasDtor().func(); } The glue layer tries to take the address of func's return, but doesn't use addressElem and just ends up making a mess. The backend ices because (OPaddr (OPcall ...)) is invalid. https://github.com/D-Programming-Language/dmd/pull/3832 --