Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Nullable] == comparing against a non-null value should inform the null state #28655

Closed
gafter opened this issue Jul 18, 2018 · 1 comment
Closed

Comments

@gafter
Copy link
Member

gafter commented Jul 18, 2018

See HERE.

In the nullable reference types branch, the compiler produces four warnings on the following code, only two of which are deserved.

using System;
public class C {
    public static void Main()
    {
        A a = new A();
        if (a.B == "")
        {
            a.B.ToString(); // improper warning
        }
        else
        {
            a.B.ToString(); // warning (OK)
        }
        
        A? a2 = null;
        if (a2 == A.Instance)
        {
            a2.ToString(); // improper warning
        }
        else
        {
            a2.ToString(); // warning (OK)
        }
    }
}

class A
{
    public static A Instance => new A();
    public string? B = M();
    static string? M() => null;
}
@gafter gafter added this to the 16.0 milestone Jul 18, 2018
@gafter
Copy link
Member Author

gafter commented Jul 18, 2018

Dup of #27928

@gafter gafter closed this as completed Jul 18, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant