https://issues.dlang.org/show_bug.cgi?id=19616

--- Comment #1 from Bolpat <[email protected]> ---
The same is true for interfaces:

interface I { }
interface A : I { }
bool condValue;
bool cond() { return condValue; }

pragma(msg, typeof(cond() ? &a : cond() ? &b : &i)); // I*
I* iPtr = cond() ? &a : &i; // fails with error message: cannot assign I* to I*
const(I)* iPtr = cond() ? &a : &i; // succeeds
(cond() ? a : i) = i; // succeeds and breaks @safe

--

Reply via email to