I've a project on which I enabled the new Nullable reference type feature
<Nullable>enable</Nullable>
Now let's consider this code
public class Foo { }
var foo = new Foo();
The compiler considers the foo variable to be nullable (Foo?).
Why is that? I don't understand.
Now with the Nullable reference type feature enabled the returned Foo object isn't supposed to be null because it is a non-nullable type.
If I wanted it to be nullable I'd specify it has a Foo?
So why is the compiler saying it's a nullable variable?
Thank you
EDIT
Here is a screenshot of what I'm describing here. When you hover your mouse over the foo variable
