Merge pull request #34659 from amcasey/FARGlobalThis

Don't assume that all symbols have declarations
This commit is contained in:
Andrew Casey
2019-10-22 16:26:19 -07:00
committed by GitHub
2 changed files with 9 additions and 1 deletions
+1 -1
View File
@@ -584,7 +584,7 @@ namespace ts.FindAllReferences.Core {
}
function getReferencedSymbolsForModuleIfDeclaredBySourceFile(symbol: Symbol, program: Program, sourceFiles: readonly SourceFile[], cancellationToken: CancellationToken, options: Options, sourceFilesSet: ReadonlyMap<true>) {
const moduleSourceFile = symbol.flags & SymbolFlags.Module ? find(symbol.declarations, isSourceFile) : undefined;
const moduleSourceFile = (symbol.flags & SymbolFlags.Module) && symbol.declarations && find(symbol.declarations, isSourceFile);
if (!moduleSourceFile) return undefined;
const exportEquals = symbol.exports!.get(InternalSymbolName.ExportEquals);
// If !!exportEquals, we're about to add references to `import("mod")` anyway, so don't double-count them.
@@ -0,0 +1,8 @@
/// <reference path='fourslash.ts' />
// @noLib: true
////[|this|];
////export const c = 1;
const [glob] = test.ranges();
verify.referenceGroups(glob, undefined);