From c38569655bb151ec351c27032fbd3ef43b8856ba Mon Sep 17 00:00:00 2001 From: Jake Bailey <5341706+jakebailey@users.noreply.github.com> Date: Tue, 18 Jun 2024 17:28:44 -0700 Subject: [PATCH] Set JSDocParsingMode.ParseForTypeErrors in compiler tests (#58917) --- src/harness/fakesHosts.ts | 3 +++ src/harness/harnessIO.ts | 3 +++ 2 files changed, 6 insertions(+) diff --git a/src/harness/fakesHosts.ts b/src/harness/fakesHosts.ts index b677d724826..cbd2a285080 100644 --- a/src/harness/fakesHosts.ts +++ b/src/harness/fakesHosts.ts @@ -381,6 +381,9 @@ export class CompilerHost implements ts.CompilerHost { } } + // Set ParseForTypeErrors like tsc. + languageVersionOrOptions = typeof languageVersionOrOptions === "object" ? languageVersionOrOptions : { languageVersion: languageVersionOrOptions }; + languageVersionOrOptions = { ...languageVersionOrOptions, jsDocParsingMode: ts.JSDocParsingMode.ParseForTypeErrors }; const parsed = ts.createSourceFile(fileName, content, languageVersionOrOptions, this._setParentNodes || this.shouldAssertInvariants); if (this.shouldAssertInvariants) { Utils.assertInvariants(parsed, /*parent*/ undefined); diff --git a/src/harness/harnessIO.ts b/src/harness/harnessIO.ts index ea8e988eb99..dae49ff142f 100644 --- a/src/harness/harnessIO.ts +++ b/src/harness/harnessIO.ts @@ -222,6 +222,9 @@ export namespace Compiler { const shouldAssertInvariants = !lightMode; // Only set the parent nodes if we're asserting invariants. We don't need them otherwise. + // Set ParseForTypeErrors like tsc. + languageVersionOrOptions = typeof languageVersionOrOptions === "object" ? languageVersionOrOptions : { languageVersion: languageVersionOrOptions }; + languageVersionOrOptions = { ...languageVersionOrOptions, jsDocParsingMode: ts.JSDocParsingMode.ParseForTypeErrors }; const result = ts.createSourceFile(fileName, sourceText, languageVersionOrOptions, /*setParentNodes:*/ shouldAssertInvariants); if (shouldAssertInvariants) {