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

--- Comment #2 from [email protected] ---
Another solution would be to always create a temporary for CallExp.

This would also solve problems like this:

===========================================
extern(C) int puts(const scope char*);

void main()
{
    assert(foo(1));
}

int foo(int i) pure nothrow
{
    debug puts("Hello");
    return i - 1;
}
============================================
Currently outputs:
Hello
Hello

--

Reply via email to