It would be impossible to _actually_ have a feature like this as opt in since it would effectively create two different versions of C#. What the proposal does is emit warnings (and not errors) which is another shame.<p>I&#x27;d much rather have it opt in at the class declaration level like:<p>`strong class Foo`<p>Where strong means references to it act like value type references with regards to nullability.<p>Alternatively, they can just fork C# and remove all the weird parts they&#x27;ve accumulated over the years and stay with a sub-language that&#x27;s more powerful and they can add useful features on top of.