| Index: pkg/analyzer_experimental/lib/src/generated/parser.dart
|
| diff --git a/pkg/analyzer_experimental/lib/src/generated/parser.dart b/pkg/analyzer_experimental/lib/src/generated/parser.dart
|
| index b9e238b5be62361d6217032668bd55477bebbee3..26185b68ee8ee8a487eee4fc89638c62c41b03f3 100644
|
| --- a/pkg/analyzer_experimental/lib/src/generated/parser.dart
|
| +++ b/pkg/analyzer_experimental/lib/src/generated/parser.dart
|
| @@ -1172,8 +1172,8 @@ class Parser {
|
| *
|
| * <pre>
|
| * bitwiseAndExpression ::=
|
| - * equalityExpression ('&' equalityExpression)*
|
| - * | 'super' ('&' equalityExpression)+
|
| + * shiftExpression ('&' shiftExpression)*
|
| + * | 'super' ('&' shiftExpression)+
|
| * </pre>
|
| *
|
| * @return the bitwise and expression that was parsed
|
| @@ -1183,11 +1183,11 @@ class Parser {
|
| if (matches(Keyword.SUPER) && matches4(peek(), TokenType.AMPERSAND)) {
|
| expression = new SuperExpression.full(andAdvance);
|
| } else {
|
| - expression = parseEqualityExpression();
|
| + expression = parseShiftExpression();
|
| }
|
| while (matches5(TokenType.AMPERSAND)) {
|
| Token operator = andAdvance;
|
| - expression = new BinaryExpression.full(expression, operator, parseEqualityExpression());
|
| + expression = new BinaryExpression.full(expression, operator, parseShiftExpression());
|
| }
|
| return expression;
|
| }
|
| @@ -3251,16 +3251,16 @@ class Parser {
|
| *
|
| * <pre>
|
| * logicalAndExpression ::=
|
| - * bitwiseOrExpression ('&&' bitwiseOrExpression)*
|
| + * equalityExpression ('&&' equalityExpression)*
|
| * </pre>
|
| *
|
| * @return the logical and expression that was parsed
|
| */
|
| Expression parseLogicalAndExpression() {
|
| - Expression expression = parseBitwiseOrExpression();
|
| + Expression expression = parseEqualityExpression();
|
| while (matches5(TokenType.AMPERSAND_AMPERSAND)) {
|
| Token operator = andAdvance;
|
| - expression = new BinaryExpression.full(expression, operator, parseBitwiseOrExpression());
|
| + expression = new BinaryExpression.full(expression, operator, parseEqualityExpression());
|
| }
|
| return expression;
|
| }
|
| @@ -3969,8 +3969,8 @@ class Parser {
|
| *
|
| * <pre>
|
| * relationalExpression ::=
|
| - * shiftExpression ('is' '!'? type | 'as' type | relationalOperator shiftExpression)?
|
| - * | 'super' relationalOperator shiftExpression
|
| + * bitwiseOrExpression ('is' '!'? type | 'as' type | relationalOperator bitwiseOrExpression)?
|
| + * | 'super' relationalOperator bitwiseOrExpression
|
| * </pre>
|
| *
|
| * @return the relational expression that was parsed
|
| @@ -3979,10 +3979,10 @@ class Parser {
|
| if (matches(Keyword.SUPER) && _currentToken.next.type.isRelationalOperator) {
|
| Expression expression = new SuperExpression.full(andAdvance);
|
| Token operator = andAdvance;
|
| - expression = new BinaryExpression.full(expression, operator, parseShiftExpression());
|
| + expression = new BinaryExpression.full(expression, operator, parseBitwiseOrExpression());
|
| return expression;
|
| }
|
| - Expression expression = parseShiftExpression();
|
| + Expression expression = parseBitwiseOrExpression();
|
| if (matches(Keyword.AS)) {
|
| Token asOperator = andAdvance;
|
| expression = new AsExpression.full(expression, asOperator, parseTypeName());
|
| @@ -3995,7 +3995,7 @@ class Parser {
|
| expression = new IsExpression.full(expression, isOperator, notOperator, parseTypeName());
|
| } else if (_currentToken.type.isRelationalOperator) {
|
| Token operator = andAdvance;
|
| - expression = new BinaryExpression.full(expression, operator, parseShiftExpression());
|
| + expression = new BinaryExpression.full(expression, operator, parseBitwiseOrExpression());
|
| }
|
| return expression;
|
| }
|
|
|