Phobos pull request 2266 [1] has been blocked by an ICE (issue 12057
[2]) for almost a month now. I'm wondering if somebody more familiar
with dmd internals can help fix it.  I've managed to reduce the code
down to a minimal (or close to minimal) test case:

        // Compile with: dmd -O
        bool prop(real x) { return false; }
        double f(real) { return double.init; }
        void main()
        {
            real fc = f(real.init);
            if (fc == 0 || fc.prop) {}
        }

The bug goes away if -O is not specified. Looks like an optimizer bug.
However, I don't know enough about the backend to be able to proceed
from here. Can somebody help?

[1] https://github.com/D-Programming-Language/phobos/pull/2266
[2] https://issues.dlang.org/show_bug.cgi?id=12057


T

-- 
Give me some fresh salted fish, please.

Reply via email to