From aa20400a815c1583fb760104186d67a537eab0e5 Mon Sep 17 00:00:00 2001 From: Andy Hanson Date: Mon, 25 Sep 2017 08:45:29 -0700 Subject: [PATCH] Make it a parse error for an `@augments` jsdoc tag to not include a type --- src/compiler/parser.ts | 4 ++-- src/harness/unittests/jsDocParsing.ts | 5 +++++ 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/src/compiler/parser.ts b/src/compiler/parser.ts index 3809a07142139..e2eb3efc01224 100644 --- a/src/compiler/parser.ts +++ b/src/compiler/parser.ts @@ -6599,12 +6599,12 @@ namespace ts { const result = createNode(SyntaxKind.JSDocTypeTag, atToken.pos); result.atToken = atToken; result.tagName = tagName; - result.typeExpression = parseJSDocTypeExpression(/*mayBail*/ true); + result.typeExpression = parseJSDocTypeExpression(/*requireBraces*/ true); return finishNode(result); } function parseAugmentsTag(atToken: AtToken, tagName: Identifier): JSDocAugmentsTag { - const typeExpression = tryParseTypeExpression(); + const typeExpression = parseJSDocTypeExpression(/*requireBraces*/ true); const result = createNode(SyntaxKind.JSDocAugmentsTag, atToken.pos); result.atToken = atToken; diff --git a/src/harness/unittests/jsDocParsing.ts b/src/harness/unittests/jsDocParsing.ts index 209aaa48c19d9..2116d87dc6f47 100644 --- a/src/harness/unittests/jsDocParsing.ts +++ b/src/harness/unittests/jsDocParsing.ts @@ -144,6 +144,11 @@ namespace ts { `/** * @type */`); + + parsesIncorrectly("@augments with no type", +`/** + * @augments + */`); }); describe("parsesCorrectly", () => {