Simen kjaeraas: > With the exception of your first example, these require quite a lot of > plumbing in the compiler, and are thus not an alternative for D2 and, > I would say, unlikely for D3. The wrapper struct with a disabled default > constructor is close to possible in D2.
Some "plumbing" is needed even for the first half of the proposal, to correctly manage partially initialized objects, it's explained here: http://research.microsoft.com/pubs/67461/non-null.pdf Some partial notes of mine on the topic are here: http://d.puremagic.com/issues/show_bug.cgi?id=4571 Bye, bearophile
