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

Steven Schveighoffer <[email protected]> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Hardware|x86                         |All
                 OS|Mac OS X                    |All
           Severity|enhancement                 |regression

--- Comment #2 from Steven Schveighoffer <[email protected]> ---
I have another simpler case which is absolutely unacceptable:

Nullable!string s;

string x = s.get(""); // error

This is because Nullable.get is taking the above input as an inout(char[])!

It should be inout(string).

Checking all versions, looks like this worked in 2.065 and prior. Well, the
concept worked anyway, since I don't think that form of get was added to
Nullable until later.

An equivalent test:

struct S
{
    string boo;
    auto get(U)(inout(U) u) inout
    {
        return boo.length == 0 ? u : boo;
    }
}
void main()
{
    S s;
    string x = s.get("");
}

This fails from 2.066 on. Changing to regression.

--

Reply via email to