anchor.diff:      if (!_matches(TokenType.PERIOD)) {
         return qualifier;
       }
  -    Token period = andAdvance;
  +    Token period = getAndAdvance();
       SimpleIdentifier qualified = parseSimpleIdentifier();
       return new PrefixedIdentifier(qualifier, period, qualified);
     }
  
positive.code:    * @return the symbol literal that was parsed
     */
    SymbolLiteral _parseSymbolLiteral() {
      Token poundSign = andAdvance;
      List<Token> components = new List<Token>();
      if (_matchesIdentifier()) {
        components.add(andAdvance);
        while (_matches(TokenType.PERIOD)) {
          _advance();
          if (_matchesIdentifier()) {
            components.add(andAdvance);
          } else {
            _reportErrorForCurrentToken(ParserErrorCode.MISSING_IDENTIFIER);
            components.add(_createSyntheticToken(TokenType.IDENTIFIER));
  
negative.code:     Expression expression;
      if (_matchesKeyword(Keyword.SUPER) &&
          _currentToken.next.type.isShiftOperator) {
        expression = new SuperExpression(getAndAdvance());
      } else {
        expression = _parseAdditiveExpression();
      }
      while (_currentToken.type.isShiftOperator) {
        Token operator = getAndAdvance();
        expression =
            new BinaryExpression(expression, operator, _parseAdditiveExpression());
      }
  