Skip to content

Commit 8c33a79

Browse files
committed
Do not query for bind errors if skipLibCheck or skipDefaultLibCheck is set
1 parent 92d592c commit 8c33a79

File tree

3 files changed

+9
-0
lines changed

3 files changed

+9
-0
lines changed

src/compiler/program.ts

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -908,6 +908,13 @@ namespace ts {
908908

909909
function getSemanticDiagnosticsForFileNoCache(sourceFile: SourceFile, cancellationToken: CancellationToken): Diagnostic[] {
910910
return runWithCancellationToken(() => {
911+
// If skipLibCheck is enabled, skip reporting errors if file is a declaration file.
912+
// If skipDefaultLibCheck is enabled, skip reporting errors if file contains a
913+
// '/// <reference no-default-lib="true"/>' directive.
914+
if (options.skipLibCheck && sourceFile.isDeclarationFile || options.skipDefaultLibCheck && sourceFile.hasNoDefaultLib) {
915+
return emptyArray;
916+
}
917+
911918
const typeChecker = getDiagnosticsProducingTypeChecker();
912919

913920
Debug.assert(!!sourceFile.bindDiagnostics);

tests/cases/compiler/noDefaultLib.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
// @skipDefaultLibCheck: false
12
/// <reference no-default-lib="true"/>
23
var x;
34

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,3 @@
1+
// @skipDefaultLibCheck: false
12
"use strict";
23
var eval;

0 commit comments

Comments
 (0)