anchor.diff:      // better.
       //
       List<FormalParameter> parameters = new List<FormalParameter>();
  -    List<FormalParameter> normalParameters = new List<FormalParameter>();
  -    List<FormalParameter> positionalParameters = new List<FormalParameter>();
  -    List<FormalParameter> namedParameters = new List<FormalParameter>();
  -    List<FormalParameter> currentParameters = normalParameters;
       Token leftSquareBracket = null;
       Token rightSquareBracket = null;
       Token leftCurlyBracket = null;
       Token rightCurlyBracket = null;
       ParameterKind kind = ParameterKind.REQUIRED;
       bool firstParameter = true;
  -    bool reportedMuliplePositionalGroups = false;
  -    bool reportedMulipleNamedGroups = false;
  +    bool reportedMultiplePositionalGroups = false;
  +    bool reportedMultipleNamedGroups = false;
       bool reportedMixedGroups = false;
       bool wasOptionalParameter = false;
       Token initialToken = null;
  
positive.code:         kind = ParameterKind.REQUIRED;
        } else if (_matches(TokenType.CLOSE_CURLY_BRACKET)) {
          rightCurlyBracket = getAndAdvance();
          currentParameters = normalParameters;
          if (leftCurlyBracket == null) {
            if (leftSquareBracket != null) {
              _reportErrorForCurrentToken(
  
negative.code:       //
        FormalParameter parameter = _parseFormalParameter(kind);
        parameters.add(parameter);
        if (kind == ParameterKind.REQUIRED && wasOptionalParameter) {
          _reportErrorForNode(
              ParserErrorCode.NORMAL_BEFORE_OPTIONAL_PARAMETERS, parameter);
  