Skip to content

Commit a8519fe

Browse files
committed
Add server test for triple-slash reference mode overrides
1 parent f615b78 commit a8519fe

File tree

2 files changed

+30
-2
lines changed

2 files changed

+30
-2
lines changed

src/compiler/resolutionCache.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -347,8 +347,8 @@ namespace ts {
347347
return primaryResult;
348348
}
349349

350-
function resolveTypeReferenceDirective(typeReferenceDirectiveName: string, containingFile: string | undefined, options: CompilerOptions, host: ModuleResolutionHost, redirectedReference?: ResolvedProjectReference): CachedResolvedTypeReferenceDirectiveWithFailedLookupLocations {
351-
return ts.resolveTypeReferenceDirective(typeReferenceDirectiveName, containingFile, options, host, redirectedReference, typeReferenceDirectiveResolutionCache);
350+
function resolveTypeReferenceDirective(typeReferenceDirectiveName: string, containingFile: string | undefined, options: CompilerOptions, host: ModuleResolutionHost, redirectedReference?: ResolvedProjectReference, _containingSourceFile?: SourceFile, resolutionMode?: SourceFile["impliedNodeFormat"] | undefined): CachedResolvedTypeReferenceDirectiveWithFailedLookupLocations {
351+
return ts.resolveTypeReferenceDirective(typeReferenceDirectiveName, containingFile, options, host, redirectedReference, typeReferenceDirectiveResolutionCache, resolutionMode);
352352
}
353353

354354
interface ResolveNamesWithLocalCacheInput<T extends ResolutionWithFailedLookupLocations, R extends ResolutionWithResolvedFileName> {
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
/// <reference path="../fourslash.ts" />
2+
3+
// @Filename: /tsconfig.json
4+
//// { "compilerOptions": { "module": "nodenext", "declaration": true, "strict": true, "outDir": "out" }, "files": ["./index.ts"] }
5+
6+
// @Filename: /package.json
7+
//// { "private": true, "type": "commonjs" }
8+
9+
// @Filename: /node_modules/pkg/package.json
10+
////{ "name": "pkg", "version": "0.0.1", "exports": { "require": "./require.cjs", "default": "./import.js" }, "type": "module" }
11+
12+
// @Filename: /node_modules/pkg/require.d.cts
13+
////export {};
14+
////export interface PkgRequireInterface { member: any; }
15+
////declare global { const pkgRequireGlobal: PkgRequireInterface; }
16+
17+
// @Filename: /node_modules/pkg/import.d.ts
18+
////export {};
19+
////export interface PkgImportInterface { field: any; }
20+
////declare global { const pkgImportGlobal: PkgImportInterface; }
21+
22+
// @Filename: /index.ts
23+
/////// <reference types="pkg" resolution-mode="import" />
24+
////pkgImportGlobal;
25+
////export {};
26+
27+
goTo.file("/index.ts");
28+
verify.numberOfErrorsInCurrentFile(0);

0 commit comments

Comments
 (0)