diff --git a/src/compiler/parser.ts b/src/compiler/parser.ts index 6f578433beb..615f472aaa5 100644 --- a/src/compiler/parser.ts +++ b/src/compiler/parser.ts @@ -3166,8 +3166,14 @@ module ts { return finishNode(node); } - function parseShortOrLonghandPropertyAssignment(): PropertyAssignment { + function parsePropertyAssignment(): PropertyAssignment { var nodePos = scanner.getStartPos(); + var initialToken = token; + + if (parseContextualModifier(SyntaxKind.GetKeyword) || parseContextualModifier(SyntaxKind.SetKeyword)) { + var kind = initialToken === SyntaxKind.GetKeyword ? SyntaxKind.GetAccessor : SyntaxKind.SetAccessor; + return parseAccessorDeclaration(kind, nodePos, /*modifiers*/undefined); + } var asteriskToken = parseOptionalToken(SyntaxKind.AsteriskToken); var tokenIsIdentifier = isIdentifier(); @@ -3208,16 +3214,6 @@ module ts { } } - function parsePropertyAssignment(): PropertyAssignment { - var initialPos = getNodePos(); - var initialToken = token; - if (parseContextualModifier(SyntaxKind.GetKeyword) || parseContextualModifier(SyntaxKind.SetKeyword)) { - var kind = initialToken === SyntaxKind.GetKeyword ? SyntaxKind.GetAccessor : SyntaxKind.SetAccessor; - return parseAccessorDeclaration(kind, initialPos, /*modifiers*/ undefined); - } - return parseShortOrLonghandPropertyAssignment(); - } - function parseObjectLiteralExpression(): ObjectLiteralExpression { var node = createNode(SyntaxKind.ObjectLiteralExpression); parseExpected(SyntaxKind.OpenBraceToken);