diff --git a/src/compiler/transformers/module/module.ts b/src/compiler/transformers/module/module.ts index 1de4de782cb..31f68a4cb5e 100644 --- a/src/compiler/transformers/module/module.ts +++ b/src/compiler/transformers/module/module.ts @@ -552,7 +552,7 @@ namespace ts { } else { statements.push( - createExportStatement(node.name, node.name, /*location*/ node) + createExportStatement(node.name, setNodeEmitFlags(getSynthesizedClone(node.name), NodeEmitFlags.LocalName), /*location*/ node) ); } } @@ -712,6 +712,10 @@ namespace ts { } function substituteExpressionIdentifier(node: Identifier): Expression { + if (getNodeEmitFlags(node) & NodeEmitFlags.LocalName) { + return node; + } + const container = resolver.getReferencedExportContainer(node, (getNodeEmitFlags(node) & NodeEmitFlags.ExportName) !== 0); if (container) { if (container.kind === SyntaxKind.SourceFile) {