anchor.diff:     *
      * <pre>
      * logicalAndExpression ::=
  -   *     equalityExpression ('&&' equalityExpression)*
  +   *     bitwiseOrExpression ('&&' bitwiseOrExpression)*
      * </pre>
      *
      * @return the logical and expression that was parsed
      */
     Expression parseLogicalAndExpression() {
  -    Expression expression = parseEqualityExpression();
  +    Expression expression = parseBitwiseOrExpression();
       while (matches5(TokenType.AMPERSAND_AMPERSAND)) {
         Token operator = andAdvance;
  -      expression = new BinaryExpression.full(expression, operator, parseEqualityExpression());
  +      expression = new BinaryExpression.full(expression, operator, parseBitwiseOrExpression());
       }
       return expression;
     }
  
positive.code:    *
     * <pre>
     * relationalExpression ::=
     *     bitwiseOrExpression ('is' '!'? type | 'as' type | relationalOperator bitwiseOrExpression)?
     *   | 'super' relationalOperator shiftExpression
     * </pre>
     *
  
negative.code:       expression = new IsExpression.full(expression, isOperator, notOperator, parseTypeName());
      } else if (_currentToken.type.isRelationalOperator) {
        Token operator = andAdvance;
        expression = new BinaryExpression.full(expression, operator, parseShiftExpression());
      }
      return expression;
    }
  