anchor.diff:                listener.beginLocalFunctionDeclaration(token);
                 listener.handleModifiers(0);
                 listener.handleNoType(token);
  -              return parseNamedFunctionRest(begin, beforeToken, formals, false);
  +              return parseNamedFunctionRest(beforeToken, begin, formals, false);
               }
             } else if (optional('<', token.next)) {
               Token gt = closeBraceTokenFor(token.next);
  
positive.code:         }
          if (beforeName.next != name)
            throw new StateError("beforeName.next != name");
          return parseNamedFunctionRest(begin, beforeName, formals, true);
  
        case TypeContinuation.VariablesDeclarationOrExpression:
          if (looksLikeType &&
  
negative.code:                 commitType();
                }
                return parseNamedFunctionRest(
                    beforeToken, begin, beforeFormals, false);
              }
            } else if (identical(afterIdKind, LT_TOKEN)) {
              // We are looking at `type identifier '<'`.
  