A
Andrey Simanovsky
VS 2003 C# compiler (as well as Rotor one) compiles the
following code:
System.Console.WriteLine(o2 as C + (o2 as C)); //!?
System.Console.WriteLine(o2 as C << 1); //!?
whereas the syntactic grammar of the specification says
(including the .doc on msdn said to reflect the actual
compiler) that this code is invalid: 'o2 as C' cannot be
deduced from an additive-expression or a shift-expression
non-terminals.
following code:
System.Console.WriteLine(o2 as C + (o2 as C)); //!?
System.Console.WriteLine(o2 as C << 1); //!?
whereas the syntactic grammar of the specification says
(including the .doc on msdn said to reflect the actual
compiler) that this code is invalid: 'o2 as C' cannot be
deduced from an additive-expression or a shift-expression
non-terminals.