https://issues.dlang.org/show_bug.cgi?id=18267
Mike Franklin <[email protected]> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |[email protected] --- Comment #4 from Mike Franklin <[email protected]> --- Attributing `opEquals` with `nothrow` resolves the linker error: struct S { P payload; alias payload this; } struct P { auto opEquals(T)(T other) const nothrow //*** Needs nothrow ***/ { static assert(is(typeof(performOp!(S[], T)))); return const(S[]).init == other; } } bool performOp(T, A)(T value, A arg) { return value == arg; } --
