@@ -60,7 +60,7 @@ namespace ts {
6060 let enclosingDeclaration : Node ;
6161 let necessaryTypeReferences : Set < string > | undefined ;
6262 let lateMarkedStatements : LateVisibilityPaintedStatement [ ] | undefined ;
63- let lateStatementReplacementMap : ESMap < Node , VisitResult < LateVisibilityPaintedStatement | ExportAssignment > > ;
63+ let lateStatementReplacementMap : ESMap < NodeId , VisitResult < LateVisibilityPaintedStatement | ExportAssignment > > ;
6464 let suppressNewDiagnosticContexts : boolean ;
6565 let exportedModulesFromDeclarationEmit : Symbol [ ] | undefined ;
6666
@@ -84,7 +84,7 @@ namespace ts {
8484 let errorFallbackNode : Declaration | undefined ;
8585
8686 let currentSourceFile : SourceFile ;
87- let refs : ESMap < Node , SourceFile > ;
87+ let refs : ESMap < NodeId , SourceFile > ;
8888 let libs : ESMap < string , boolean > ;
8989 let emittedImports : readonly AnyImportSyntax [ ] | undefined ; // must be declared in container so it can be `undefined` while transformer's first pass
9090 const resolver = context . getEmitResolver ( ) ;
@@ -110,7 +110,7 @@ namespace ts {
110110 }
111111 // Otherwise we should emit a path-based reference
112112 const container = getSourceFileOfNode ( node ) ;
113- refs . set ( getOriginalNode ( container ) , container ) ;
113+ refs . set ( getOriginalNodeId ( container ) , container ) ;
114114 }
115115
116116 function handleSymbolAccessibilityError ( symbolAccessibilityResult : SymbolAccessibilityResult ) {
@@ -426,12 +426,12 @@ namespace ts {
426426 }
427427 }
428428
429- function collectReferences ( sourceFile : SourceFile | UnparsedSource , ret : ESMap < Node , SourceFile > ) {
429+ function collectReferences ( sourceFile : SourceFile | UnparsedSource , ret : ESMap < NodeId , SourceFile > ) {
430430 if ( noResolve || ( ! isUnparsedSource ( sourceFile ) && isSourceFileJS ( sourceFile ) ) ) return ret ;
431431 forEach ( sourceFile . referencedFiles , f => {
432432 const elem = host . getSourceFileFromReference ( sourceFile , f ) ;
433433 if ( elem ) {
434- ret . set ( getOriginalNode ( elem ) , elem ) ;
434+ ret . set ( getOriginalNodeId ( elem ) , elem ) ;
435435 }
436436 } ) ;
437437 return ret ;
@@ -812,7 +812,7 @@ namespace ts {
812812 needsDeclare = i . parent && isSourceFile ( i . parent ) && ! ( isExternalModule ( i . parent ) && isBundledEmit ) ;
813813 const result = transformTopLevelDeclaration ( i ) ;
814814 needsDeclare = priorNeedsDeclare ;
815- lateStatementReplacementMap . set ( getOriginalNode ( i ) , result ) ;
815+ lateStatementReplacementMap . set ( getOriginalNodeId ( i ) , result ) ;
816816 }
817817
818818 // And lastly, we need to get the final form of all those indetermine import declarations from before and add them to the output list
@@ -821,10 +821,10 @@ namespace ts {
821821
822822 function visitLateVisibilityMarkedStatements ( statement : Statement ) {
823823 if ( isLateVisibilityPaintedStatement ( statement ) ) {
824- const originalNode = getOriginalNode ( statement ) ;
825- if ( lateStatementReplacementMap . has ( originalNode ) ) {
826- const result = lateStatementReplacementMap . get ( originalNode ) ;
827- lateStatementReplacementMap . delete ( originalNode ) ;
824+ const key = getOriginalNodeId ( statement ) ;
825+ if ( lateStatementReplacementMap . has ( key ) ) {
826+ const result = lateStatementReplacementMap . get ( key ) ;
827+ lateStatementReplacementMap . delete ( key ) ;
828828 if ( result ) {
829829 if ( isArray ( result ) ? some ( result , needsScopeMarker ) : needsScopeMarker ( result ) ) {
830830 // Top-level declarations in .d.ts files are always considered exported even without a modifier unless there's an export assignment or specifier
@@ -1146,7 +1146,7 @@ namespace ts {
11461146
11471147 const result = transformTopLevelDeclaration ( input ) ;
11481148 // Don't actually transform yet; just leave as original node - will be elided/swapped by late pass
1149- lateStatementReplacementMap . set ( getOriginalNode ( input ) , result ) ;
1149+ lateStatementReplacementMap . set ( getOriginalNodeId ( input ) , result ) ;
11501150 return input ;
11511151 }
11521152
@@ -1348,9 +1348,9 @@ namespace ts {
13481348 needsDeclare = false ;
13491349 visitNode ( inner , visitDeclarationStatements ) ;
13501350 // eagerly transform nested namespaces (the nesting doesn't need any elision or painting done)
1351- const originalNode = getOriginalNode ( inner ! ) ; // TODO: GH#18217
1352- const body = lateStatementReplacementMap . get ( originalNode ) ;
1353- lateStatementReplacementMap . delete ( originalNode ) ;
1351+ const id = getOriginalNodeId ( inner ! ) ; // TODO: GH#18217
1352+ const body = lateStatementReplacementMap . get ( id ) ;
1353+ lateStatementReplacementMap . delete ( id ) ;
13541354 return cleanup ( factory . updateModuleDeclaration (
13551355 input ,
13561356 /*decorators*/ undefined ,
0 commit comments