Pardon me for butting in but maybe that's not so bad. I'm not very clear on new and how it is different in Java, or "supertype" and if that means what it should in OOP jargon, but it seems like this error is only an error because you're doing too much on one line.The only way that this can "work" is if you specify the supertype in the declaration!Code:Type ref = data, // OK copy = new Type( data ); // Error
And we all know that's cute in C++ too. Your argument doesn't wash with me.
Of course, it's another thing that's great for obfuscation, but that shouldn't be how we make our preferences.