From 762db0717099086b005b1159e549a216a6c7721c Mon Sep 17 00:00:00 2001 From: Nathan Shively-Sanders <293473+sandersn@users.noreply.github.com> Date: Wed, 9 May 2018 16:36:13 -0700 Subject: [PATCH] Prevent infinite js symbol merge in the checker This just cuts off the infinite merging; it doesn't address the underlying bug which is probably in bindPropertyAssignment. --- src/compiler/checker.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/compiler/checker.ts b/src/compiler/checker.ts index cc3ce1d728a33..96712090adcbf 100644 --- a/src/compiler/checker.ts +++ b/src/compiler/checker.ts @@ -895,7 +895,7 @@ namespace ts { if ((source.flags | target.flags) & SymbolFlags.JSContainer) { const sourceInitializer = getJSInitializerSymbol(source); const targetInitializer = getJSInitializerSymbol(target); - if (sourceInitializer !== source || targetInitializer !== target) { + if (sourceInitializer !== targetInitializer && (sourceInitializer !== source || targetInitializer !== target)) { mergeSymbol(targetInitializer, sourceInitializer); } }