Index: compiler/java/com/google/dart/compiler/parser/DartParser.java |
=================================================================== |
--- compiler/java/com/google/dart/compiler/parser/DartParser.java (revision 8338) |
+++ compiler/java/com/google/dart/compiler/parser/DartParser.java (working copy) |
@@ -1889,6 +1889,10 @@ |
} else { |
right = done(new DartTypeExpression(parseTypeAnnotation())); |
} |
+ } else if (token == Token.AS) { |
+ beginCastExpression(); |
+ beginTypeExpression(); |
+ right = done(new DartTypeExpression(parseTypeAnnotation())); |
} else { |
right = parseBinaryExpression(level + 1); |
} |
@@ -1898,7 +1902,8 @@ |
lastResult = right; |
result = doneWithoutConsuming(new DartBinaryExpression(token, result, right)); |
- if ((token == Token.IS) |
+ if (token == Token.IS |
+ || token == Token.AS |
|| token.isRelationalOperator() |
|| token.isEqualityOperator()) { |
// The operations cannot be chained. |