From 85225c8f2912b6b943dc5144b39da900fc4e7599 Mon Sep 17 00:00:00 2001 From: Anders Hejlsberg Date: Fri, 18 Jul 2014 17:04:06 -0700 Subject: [PATCH] Ensuring local module names are unique in emit. Fixes #41 and #42. --- src/compiler/binder.ts | 13 +++- src/compiler/checker.ts | 63 +++++++++++++---- src/compiler/emitter.ts | 14 ++-- src/compiler/parser.ts | 7 +- src/compiler/scanner.ts | 40 +++++------ src/compiler/types.ts | 8 ++- ...ModuleWithExportedAndNonExportedClasses.js | 6 +- .../cloduleWithRecursiveReference.js | 4 +- ...ionCodeGenModuleWithConstructorChildren.js | 14 ++-- ...lisionCodeGenModuleWithFunctionChildren.js | 14 ++-- ...ionCodeGenModuleWithMemberClassConflict.js | 10 +-- ...ollisionCodeGenModuleWithMemberVariable.js | 6 +- ...ollisionCodeGenModuleWithMethodChildren.js | 14 ++-- ...ollisionCodeGenModuleWithModuleChildren.js | 18 ++--- ...llisionCodeGenModuleWithModuleReopening.js | 12 ++-- ...collisionCodeGenModuleWithPrivateMember.js | 4 +- .../collisionCodeGenModuleWithUnicodeNames.js | 4 +- .../baselines/reference/escapedIdentifiers.js | 4 +- .../importAndVariableDeclarationConflict1.js | 4 +- .../importAndVariableDeclarationConflict2.js | 4 +- .../importAndVariableDeclarationConflict3.js | 4 +- .../importAndVariableDeclarationConflict4.js | 4 +- .../reference/importedModuleAddToGlobal.js | 4 +- .../mergedModuleDeclarationCodeGen2.js | 10 +-- .../mergedModuleDeclarationCodeGen3.js | 16 ++--- .../mergedModuleDeclarationCodeGen4.js | 28 ++++---- .../mergedModuleDeclarationCodeGen5.js | 28 ++++---- .../moduleWithStatementsOfEveryKind.js | 2 +- tests/baselines/reference/nameCollision.js | 30 ++++---- .../reference/recursiveClassReferenceTest.js | 6 +- .../recursiveClassReferenceTest.js.map | 2 +- .../recursiveClassReferenceTest.sourcemap.txt | 68 +++++++++---------- .../reference/recursiveCloduleReference.js | 4 +- .../reference/thisInModuleFunction1.js | 4 +- 34 files changed, 264 insertions(+), 209 deletions(-) diff --git a/src/compiler/binder.ts b/src/compiler/binder.ts index d5b3a91eab2..ad0a74f1079 100644 --- a/src/compiler/binder.ts +++ b/src/compiler/binder.ts @@ -32,6 +32,7 @@ module ts { var parent: Node; var container: Declaration; var symbolCount = 0; + var lastLocals: Declaration; var Symbol = objectAllocator.getSymbolConstructor(); if (!file.locals) { @@ -162,6 +163,14 @@ module ts { } } + // All nodes with locals are kept on a linked list in declaration order. This list is used by the getLocalNameOfContainer function + // in the type checker to validate that the local name used for a container is unique. + function initializeLocals(node: Declaration) { + node.locals = {}; + if (lastLocals) lastLocals.nextLocals = node; + lastLocals = node; + } + function bindDeclaration(node: Declaration, symbolKind: SymbolFlags, symbolExcludes: SymbolFlags) { switch (container.kind) { case SyntaxKind.ModuleDeclaration: @@ -198,7 +207,7 @@ module ts { declareSymbol(container.symbol.exports, container.symbol, node, symbolKind, symbolExcludes); break; } - if (symbolKind & SymbolFlags.HasLocals) node.locals = {}; + if (symbolKind & SymbolFlags.HasLocals) initializeLocals(node); var saveParent = parent; var saveContainer = container; parent = node; @@ -232,7 +241,7 @@ module ts { function bindAnonymousDeclaration(node: Node, symbolKind: SymbolFlags, name: string) { var symbol = createSymbol(symbolKind, name); addDeclarationToSymbol(symbol, node, symbolKind); - if (symbolKind & SymbolFlags.HasLocals) node.locals = {}; + if (symbolKind & SymbolFlags.HasLocals) initializeLocals(node); var saveParent = parent; var saveContainer = container; parent = node; diff --git a/src/compiler/checker.ts b/src/compiler/checker.ts index 6a9d1cd44fd..6bb6a12903e 100644 --- a/src/compiler/checker.ts +++ b/src/compiler/checker.ts @@ -3795,7 +3795,7 @@ module ts { } return checkUntypedCall(node); } - // If FuncExprs apparent type(section 3.8.1) is a function type, the call is a typed function call. + // If FuncExpr's apparent type(section 3.8.1) is a function type, the call is a typed function call. // TypeScript employs overload resolution in typed function calls in order to support functions // with multiple call signatures. if (!signatures.length) { @@ -3827,7 +3827,7 @@ module ts { return checkUntypedCall(node); } - // If ConstructExprs apparent type(section 3.8.1) is an object type with one or + // If ConstructExpr's apparent type(section 3.8.1) is an object type with one or // more construct signatures, the expression is processed in the same manner as a // function call, but using the construct signatures as the initial set of candidate // signatures for overload resolution.The result type of the function call becomes @@ -3848,7 +3848,7 @@ module ts { return checkCall(node, constructSignatures); } - // If ConstructExprs apparent type is an object type with no construct signatures but + // If ConstructExpr's apparent type is an object type with no construct signatures but // one or more call signatures, the expression is processed as a function call. A compile-time // error occurs if the result of the function call is not Void. The type of the result of the // operation is Any. @@ -6004,14 +6004,53 @@ module ts { // Emitter support - function getModuleObjectName(node: ModuleDeclaration): string { - return getSourceTextOfNode(node.name); - } - function isExternalModuleSymbol(symbol: Symbol): boolean { return symbol.flags & SymbolFlags.ValueModule && symbol.declarations.length === 1 && symbol.declarations[0].kind === SyntaxKind.SourceFile; } + function isNodeParentedBy(node: Node, parent: Node): boolean { + while (node) { + if (node === parent) return true; + node = node.parent; + } + return false; + } + + function isUniqueLocalName(name: string, container: Node): boolean { + name = escapeIdentifier(name); + if (container.locals) { + for (var node = container; isNodeParentedBy(node, container); node = node.nextLocals) { + if (hasProperty(node.locals, name) && node.locals[name].flags & (SymbolFlags.Value | SymbolFlags.ExportValue)) { + return false; + } + } + } + return true; + } + + function getLocalNameOfContainer(container: Declaration): string { + var links = getNodeLinks(container); + if (!links.localModuleName) { + var name = container.name.text ? unescapeIdentifier(container.name.text) : "M"; + while (!isUniqueLocalName(name, container)) { + name = "_" + name; + } + links.localModuleName = name; + } + return links.localModuleName; + } + + function getLocalNameForSymbol(symbol: Symbol, location: Node): string { + var node = location; + while (node) { + if ((node.kind === SyntaxKind.ModuleDeclaration || node.kind === SyntaxKind.EnumDeclaration) && getSymbolOfNode(node) === symbol) { + return getLocalNameOfContainer(node); + } + node = node.parent; + } + Debug.fail("getLocalNameForSymbol failed"); + } + function getExpressionNamePrefix(node: Identifier): string { var symbol = getNodeLinks(node).resolvedSymbol; if (symbol) { @@ -6021,15 +6060,11 @@ module ts { // kind of entity. SymbolFlags.ExportHasLocal encompasses all the kinds that we // do NOT prefix. var exportSymbol = getExportSymbolOfValueSymbolIfExported(symbol); - var isExportedSymbolFoundInLocalScope = exportSymbol !== symbol; - var shouldEmitExportWithoutPrefix = (exportSymbol.flags & SymbolFlags.ExportHasLocal) !== 0; - if (isExportedSymbolFoundInLocalScope && !shouldEmitExportWithoutPrefix) { + if (symbol !== exportSymbol && !(exportSymbol.flags & SymbolFlags.ExportHasLocal)) { symbol = exportSymbol; } - - // symbol will have a parent if it is an export symbol if (symbol.parent) { - return isExternalModuleSymbol(symbol.parent) ? "exports" : symbolToString(symbol.parent); + return isExternalModuleSymbol(symbol.parent) ? "exports" : getLocalNameForSymbol(getParentOfSymbol(symbol), node.parent); } } } @@ -6116,7 +6151,7 @@ module ts { function invokeEmitter() { var resolver: EmitResolver = { getProgram: () => program, - getModuleObjectName: getModuleObjectName, + getLocalNameOfContainer: getLocalNameOfContainer, getExpressionNamePrefix: getExpressionNamePrefix, getPropertyAccessSubstitution: getPropertyAccessSubstitution, getExportAssignmentName: getExportAssignmentName, diff --git a/src/compiler/emitter.ts b/src/compiler/emitter.ts index 0d056c0375e..90661c08fc0 100644 --- a/src/compiler/emitter.ts +++ b/src/compiler/emitter.ts @@ -1043,7 +1043,7 @@ module ts { emitStart(node.name); if (node.flags & NodeFlags.Export) { var container = getContainingModule(node); - write(container ? resolver.getModuleObjectName(container) : "exports"); + write(container ? resolver.getLocalNameOfContainer(container) : "exports"); write("."); } emitNode(node.name); @@ -1444,16 +1444,18 @@ module ts { writeLine(); emitStart(node); write("(function ("); - emit(node.name); + emitStart(node.name); + write(resolver.getLocalNameOfContainer(node)); + emitEnd(node.name); write(") {"); increaseIndent(); scopeEmitStart(node); forEach(node.members, member => { writeLine(); emitStart(member); - emitNode(node.name); + write(resolver.getLocalNameOfContainer(node)); write("["); - emitNode(node.name); + write(resolver.getLocalNameOfContainer(node)); write("["); emitQuotedIdentifier(member.name); write("] = "); @@ -1509,7 +1511,9 @@ module ts { } emitStart(node); write("(function ("); - emit(node.name); + emitStart(node.name); + write(resolver.getLocalNameOfContainer(node)); + emitEnd(node.name); write(") "); if (node.body.kind === SyntaxKind.ModuleBlock) { emit(node.body); diff --git a/src/compiler/parser.ts b/src/compiler/parser.ts index 9dadc80d970..fcfb2120b7c 100644 --- a/src/compiler/parser.ts +++ b/src/compiler/parser.ts @@ -62,7 +62,12 @@ module ts { // Add an extra underscore to identifiers that start with two underscores to avoid issues with magic names like '__proto__' export function escapeIdentifier(identifier: string): string { - return identifier.charCodeAt(0) === CharacterCodes._ && identifier.charCodeAt(1) === CharacterCodes._ ? "_" + identifier : identifier; + return identifier.length >= 2 && identifier.charCodeAt(0) === CharacterCodes._ && identifier.charCodeAt(1) === CharacterCodes._ ? "_" + identifier : identifier; + } + + // Remove extra underscore from escaped identifier + export function unescapeIdentifier(identifier: string): string { + return identifier.length >= 3 && identifier.charCodeAt(0) === CharacterCodes._ && identifier.charCodeAt(1) === CharacterCodes._ && identifier.charCodeAt(2) === CharacterCodes._ ? identifier.substr(1) : identifier; } // Return display name of an identifier diff --git a/src/compiler/scanner.ts b/src/compiler/scanner.ts index b109ba8bfbd..2ff32171a3d 100644 --- a/src/compiler/scanner.ts +++ b/src/compiler/scanner.ts @@ -142,18 +142,18 @@ module ts { As per ECMAScript Language Specification 3th Edition, Section 7.6: Identifiers IdentifierStart :: Can contain Unicode 3.0.0 categories: - Uppercase letter (Lu), - Lowercase letter (Ll), - Titlecase letter (Lt), - Modifier letter (Lm), - Other letter (Lo), or - Letter number (Nl). + Uppercase letter (Lu), + Lowercase letter (Ll), + Titlecase letter (Lt), + Modifier letter (Lm), + Other letter (Lo), or + Letter number (Nl). IdentifierPart :: = Can contain IdentifierStart + Unicode 3.0.0 categories: - Non-spacing mark (Mn), - Combining spacing mark (Mc), - Decimal number (Nd), or - Connector punctuation (Pc). + Non-spacing mark (Mn), + Combining spacing mark (Mc), + Decimal number (Nd), or + Connector punctuation (Pc). Codepoint ranges for ES3 Identifiers are extracted from the Unicode 3.0.0 specification at: http://www.unicode.org/Public/3.0-Update/UnicodeData-3.0.0.txt @@ -165,18 +165,18 @@ module ts { As per ECMAScript Language Specification 5th Edition, Section 7.6: ISyntaxToken Names and Identifiers IdentifierStart :: Can contain Unicode 6.2 categories: - Uppercase letter (Lu), - Lowercase letter (Ll), - Titlecase letter (Lt), - Modifier letter (Lm), - Other letter (Lo), or - Letter number (Nl). + Uppercase letter (Lu), + Lowercase letter (Ll), + Titlecase letter (Lt), + Modifier letter (Lm), + Other letter (Lo), or + Letter number (Nl). IdentifierPart :: Can contain IdentifierStart + Unicode 6.2 categories: - Non-spacing mark (Mn), - Combining spacing mark (Mc), - Decimal number (Nd), - Connector punctuation (Pc), + Non-spacing mark (Mn), + Combining spacing mark (Mc), + Decimal number (Nd), + Connector punctuation (Pc), , or . diff --git a/src/compiler/types.ts b/src/compiler/types.ts index b17e64dcd4d..ee9a298b524 100644 --- a/src/compiler/types.ts +++ b/src/compiler/types.ts @@ -240,6 +240,7 @@ module ts { parent?: Node; // Parent node (initialized by binding) symbol?: Symbol; // Symbol declared by node (initialized by binding) locals?: SymbolTable; // Locals associated with node (initialized by binding) + nextLocals?: Node; // Next node in declaration order with locals (initialized by binding) } export interface NodeArray extends Array, TextRange { } @@ -614,7 +615,7 @@ module ts { export interface EmitResolver { getProgram(): Program; - getModuleObjectName(node: ModuleDeclaration): string; + getLocalNameOfContainer(container: Declaration): string; getExpressionNamePrefix(node: Identifier): string; getPropertyAccessSubstitution(node: PropertyAccess): string; getExportAssignmentName(node: SourceFile): string; @@ -690,7 +691,7 @@ module ts { ExportHasLocal = Function | Class | Enum | ValueModule, - HasLocals = Function | Module | Method | Constructor | Accessor | Signature, + HasLocals = Function | Enum | Module | Method | Constructor | Accessor | Signature, HasExports = Class | Enum | Module, HasMembers = Class | Interface | TypeLiteral | ObjectLiteral, @@ -742,7 +743,8 @@ module ts { flags?: NodeCheckFlags; // Set of flags specific to Node enumMemberValue?: number; // Constant value of enum member isIllegalTypeReferenceInConstraint?: boolean; // Is type reference in constraint refers to the type parameter from the same list - isVisible?: boolean; // Is this node visible + isVisible?: boolean; // Is this node visible + localModuleName?: string; // Local name for module instance } export enum TypeFlags { diff --git a/tests/baselines/reference/ModuleWithExportedAndNonExportedClasses.js b/tests/baselines/reference/ModuleWithExportedAndNonExportedClasses.js index c4d189bf76b..590bf1bb794 100644 --- a/tests/baselines/reference/ModuleWithExportedAndNonExportedClasses.js +++ b/tests/baselines/reference/ModuleWithExportedAndNonExportedClasses.js @@ -35,19 +35,19 @@ var ag2 = new A.A2(); //// [ModuleWithExportedAndNonExportedClasses.js] var A; -(function (A) { +(function (_A) { var A = (function () { function A() { } return A; })(); - A.A = A; + _A.A = A; var AG = (function () { function AG() { } return AG; })(); - A.AG = AG; + _A.AG = AG; var A2 = (function () { function A2() { } diff --git a/tests/baselines/reference/cloduleWithRecursiveReference.js b/tests/baselines/reference/cloduleWithRecursiveReference.js index 783433ee2b8..00f58260814 100644 --- a/tests/baselines/reference/cloduleWithRecursiveReference.js +++ b/tests/baselines/reference/cloduleWithRecursiveReference.js @@ -16,8 +16,8 @@ var M; return C; })(); M.C = C; - (function (C) { - C.C = M.C; + (function (_C) { + _C.C = M.C; })(M.C || (M.C = {})); var C = M.C; })(M || (M = {})); diff --git a/tests/baselines/reference/collisionCodeGenModuleWithConstructorChildren.js b/tests/baselines/reference/collisionCodeGenModuleWithConstructorChildren.js index 2a83baa479c..33a9f97f6d1 100644 --- a/tests/baselines/reference/collisionCodeGenModuleWithConstructorChildren.js +++ b/tests/baselines/reference/collisionCodeGenModuleWithConstructorChildren.js @@ -25,31 +25,31 @@ module M { //// [collisionCodeGenModuleWithConstructorChildren.js] var M; -(function (M) { - M.x = 3; +(function (_M) { + _M.x = 3; var c = (function () { function c(M, p) { - if (p === void 0) { p = M.x; } + if (p === void 0) { p = _M.x; } } return c; })(); })(M || (M = {})); var M; -(function (M) { +(function (_M) { var d = (function () { function d(M, p) { - if (p === void 0) { p = M.x; } + if (p === void 0) { p = _M.x; } this.M = M; } return d; })(); })(M || (M = {})); var M; -(function (M) { +(function (_M) { var d2 = (function () { function d2() { var M = 10; - var p = M.x; + var p = _M.x; } return d2; })(); diff --git a/tests/baselines/reference/collisionCodeGenModuleWithFunctionChildren.js b/tests/baselines/reference/collisionCodeGenModuleWithFunctionChildren.js index 4eaead87cad..bb1c0e7845b 100644 --- a/tests/baselines/reference/collisionCodeGenModuleWithFunctionChildren.js +++ b/tests/baselines/reference/collisionCodeGenModuleWithFunctionChildren.js @@ -21,24 +21,24 @@ module M { //// [collisionCodeGenModuleWithFunctionChildren.js] var M; -(function (M) { - M.x = 3; +(function (_M) { + _M.x = 3; function fn(M, p) { - if (p === void 0) { p = M.x; } + if (p === void 0) { p = _M.x; } } })(M || (M = {})); var M; -(function (M) { +(function (_M) { function fn2() { var M; - var p = M.x; + var p = _M.x; } })(M || (M = {})); var M; -(function (M) { +(function (_M) { function fn3() { function M() { - var p = M.x; + var p = _M.x; } } })(M || (M = {})); diff --git a/tests/baselines/reference/collisionCodeGenModuleWithMemberClassConflict.js b/tests/baselines/reference/collisionCodeGenModuleWithMemberClassConflict.js index 79c2b74745e..3c75d2e5738 100644 --- a/tests/baselines/reference/collisionCodeGenModuleWithMemberClassConflict.js +++ b/tests/baselines/reference/collisionCodeGenModuleWithMemberClassConflict.js @@ -17,29 +17,29 @@ var foo = new m2._m2(); //// [collisionCodeGenModuleWithMemberClassConflict.js] var m1; -(function (m1) { +(function (_m1) { var m1 = (function () { function m1() { } return m1; })(); - m1.m1 = m1; + _m1.m1 = m1; })(m1 || (m1 = {})); var foo = new m1.m1(); var m2; -(function (m2) { +(function (__m2) { var m2 = (function () { function m2() { } return m2; })(); - m2.m2 = m2; + __m2.m2 = m2; var _m2 = (function () { function _m2() { } return _m2; })(); - m2._m2 = _m2; + __m2._m2 = _m2; })(m2 || (m2 = {})); var foo = new m2.m2(); var foo = new m2._m2(); diff --git a/tests/baselines/reference/collisionCodeGenModuleWithMemberVariable.js b/tests/baselines/reference/collisionCodeGenModuleWithMemberVariable.js index b7edd01b858..d57de06dfa7 100644 --- a/tests/baselines/reference/collisionCodeGenModuleWithMemberVariable.js +++ b/tests/baselines/reference/collisionCodeGenModuleWithMemberVariable.js @@ -7,8 +7,8 @@ var foo = m1.m1; //// [collisionCodeGenModuleWithMemberVariable.js] var m1; -(function (m1) { - m1.m1 = 10; - var b = m1.m1; +(function (_m1) { + _m1.m1 = 10; + var b = _m1.m1; })(m1 || (m1 = {})); var foo = m1.m1; diff --git a/tests/baselines/reference/collisionCodeGenModuleWithMethodChildren.js b/tests/baselines/reference/collisionCodeGenModuleWithMethodChildren.js index 14e07ac4039..56efb2dcc02 100644 --- a/tests/baselines/reference/collisionCodeGenModuleWithMethodChildren.js +++ b/tests/baselines/reference/collisionCodeGenModuleWithMethodChildren.js @@ -34,37 +34,37 @@ module M { // Shouldnt bn _M //// [collisionCodeGenModuleWithMethodChildren.js] var M; -(function (M) { - M.x = 3; +(function (_M) { + _M.x = 3; var c = (function () { function c() { } c.prototype.fn = function (M, p) { - if (p === void 0) { p = M.x; } + if (p === void 0) { p = _M.x; } }; return c; })(); })(M || (M = {})); var M; -(function (M) { +(function (_M) { var d = (function () { function d() { } d.prototype.fn2 = function () { var M; - var p = M.x; + var p = _M.x; }; return d; })(); })(M || (M = {})); var M; -(function (M) { +(function (_M) { var e = (function () { function e() { } e.prototype.fn3 = function () { function M() { - var p = M.x; + var p = _M.x; } }; return e; diff --git a/tests/baselines/reference/collisionCodeGenModuleWithModuleChildren.js b/tests/baselines/reference/collisionCodeGenModuleWithModuleChildren.js index 6fbefcdc40e..ecc5fca2e9f 100644 --- a/tests/baselines/reference/collisionCodeGenModuleWithModuleChildren.js +++ b/tests/baselines/reference/collisionCodeGenModuleWithModuleChildren.js @@ -44,16 +44,16 @@ module M { //// [collisionCodeGenModuleWithModuleChildren.js] var M; -(function (M) { - M.x = 3; +(function (_M) { + _M.x = 3; var m1; (function (m1) { var M = 10; - var p = M.x; + var p = _M.x; })(m1 || (m1 = {})); })(M || (M = {})); var M; -(function (M) { +(function (_M) { var m2; (function (m2) { var M = (function () { @@ -61,17 +61,17 @@ var M; } return M; })(); - var p = M.x; + var p = _M.x; var p2 = new M(); })(m2 || (m2 = {})); })(M || (M = {})); var M; -(function (M) { +(function (_M) { var m3; (function (m3) { function M() { } - var p = M.x; + var p = _M.x; var p2 = M(); })(m3 || (m3 = {})); })(M || (M = {})); @@ -84,12 +84,12 @@ var M; })(m3 || (m3 = {})); })(M || (M = {})); var M; -(function (M) { +(function (_M) { var m4; (function (m4) { var M; (function (M) { - var p = M.x; + var p = _M.x; })(M || (M = {})); })(m4 || (m4 = {})); })(M || (M = {})); diff --git a/tests/baselines/reference/collisionCodeGenModuleWithModuleReopening.js b/tests/baselines/reference/collisionCodeGenModuleWithModuleReopening.js index e34cbf988c0..4c3d6023063 100644 --- a/tests/baselines/reference/collisionCodeGenModuleWithModuleReopening.js +++ b/tests/baselines/reference/collisionCodeGenModuleWithModuleReopening.js @@ -31,13 +31,13 @@ var foo2 = new m2.m2(); //// [collisionCodeGenModuleWithModuleReopening.js] var m1; -(function (m1) { +(function (_m1) { var m1 = (function () { function m1() { } return m1; })(); - m1.m1 = m1; + _m1.m1 = m1; })(m1 || (m1 = {})); var foo = new m1.m1(); var m1; @@ -65,16 +65,16 @@ var m2; })(m2 || (m2 = {})); var foo3 = new m2.c1(); var m2; -(function (m2) { +(function (_m2) { var m2 = (function () { function m2() { } return m2; })(); - m2.m2 = m2; + _m2.m2 = m2; var b = new m2(); - var d = m2.b10; - var c = new m2.c1(); + var d = _m2.b10; + var c = new _m2.c1(); })(m2 || (m2 = {})); var foo3 = new m2.c1(); var foo2 = new m2.m2(); diff --git a/tests/baselines/reference/collisionCodeGenModuleWithPrivateMember.js b/tests/baselines/reference/collisionCodeGenModuleWithPrivateMember.js index 27d66514964..28901bd11e8 100644 --- a/tests/baselines/reference/collisionCodeGenModuleWithPrivateMember.js +++ b/tests/baselines/reference/collisionCodeGenModuleWithPrivateMember.js @@ -10,7 +10,7 @@ var foo = new m1.c1(); //// [collisionCodeGenModuleWithPrivateMember.js] var m1; -(function (m1) { +(function (_m1) { var m1 = (function () { function m1() { } @@ -22,6 +22,6 @@ var m1; } return c1; })(); - m1.c1 = c1; + _m1.c1 = c1; })(m1 || (m1 = {})); var foo = new m1.c1(); diff --git a/tests/baselines/reference/collisionCodeGenModuleWithUnicodeNames.js b/tests/baselines/reference/collisionCodeGenModuleWithUnicodeNames.js index 68a70f6bc35..d4e919e0a17 100644 --- a/tests/baselines/reference/collisionCodeGenModuleWithUnicodeNames.js +++ b/tests/baselines/reference/collisionCodeGenModuleWithUnicodeNames.js @@ -11,12 +11,12 @@ var x = new 才能ソЫⅨ蒤郳र्क्ड्राüışğİliيونيكو //// [collisionCodeGenModuleWithUnicodeNames.js] var 才能ソЫⅨ蒤郳र्क्ड्राüışğİliيونيكودöÄüß才能ソЫⅨ蒤郳र्क्ड्राüışğİliيونيكودöÄüßAbcd123; -(function (才能ソЫⅨ蒤郳र्क्ड्राüışğİliيونيكودöÄüß才能ソЫⅨ蒤郳र्क्ड्राüışğİliيونيكودöÄüßAbcd123) { +(function (_才能ソЫⅨ蒤郳र्क्ड्राüışğİliيونيكودöÄüß才能ソЫⅨ蒤郳र्क्ड्राüışğİliيونيكودöÄüßAbcd123) { var 才能ソЫⅨ蒤郳र्क्ड्राüışğİliيونيكودöÄüß才能ソЫⅨ蒤郳र्क्ड्राüışğİliيونيكودöÄüßAbcd123 = (function () { function 才能ソЫⅨ蒤郳र्क्ड्राüışğİliيونيكودöÄüß才能ソЫⅨ蒤郳र्क्ड्राüışğİliيونيكودöÄüßAbcd123() { } return 才能ソЫⅨ蒤郳र्क्ड्राüışğİliيونيكودöÄüß才能ソЫⅨ蒤郳र्क्ड्राüışğİliيونيكودöÄüßAbcd123; })(); - 才能ソЫⅨ蒤郳र्क्ड्राüışğİliيونيكودöÄüß才能ソЫⅨ蒤郳र्क्ड्राüışğİliيونيكودöÄüßAbcd123.才能ソЫⅨ蒤郳र्क्ड्राüışğİliيونيكودöÄüß才能ソЫⅨ蒤郳र्क्ड्राüışğİliيونيكودöÄüßAbcd123 = 才能ソЫⅨ蒤郳र्क्ड्राüışğİliيونيكودöÄüß才能ソЫⅨ蒤郳र्क्ड्राüışğİliيونيكودöÄüßAbcd123; + _才能ソЫⅨ蒤郳र्क्ड्राüışğİliيونيكودöÄüß才能ソЫⅨ蒤郳र्क्ड्राüışğİliيونيكودöÄüßAbcd123.才能ソЫⅨ蒤郳र्क्ड्राüışğİliيونيكودöÄüß才能ソЫⅨ蒤郳र्क्ड्राüışğİliيونيكودöÄüßAbcd123 = 才能ソЫⅨ蒤郳र्क्ड्राüışğİliيونيكودöÄüß才能ソЫⅨ蒤郳र्क्ड्राüışğİliيونيكودöÄüßAbcd123; })(才能ソЫⅨ蒤郳र्क्ड्राüışğİliيونيكودöÄüß才能ソЫⅨ蒤郳र्क्ड्राüışğİliيونيكودöÄüßAbcd123 || (才能ソЫⅨ蒤郳र्क्ड्राüışğİliيونيكودöÄüß才能ソЫⅨ蒤郳र्क्ड्राüışğİliيونيكودöÄüßAbcd123 = {})); var x = new 才能ソЫⅨ蒤郳र्क्ड्राüışğİliيونيكودöÄüß才能ソЫⅨ蒤郳र्क्ड्राüışğİliيونيكودöÄüßAbcd123.才能ソЫⅨ蒤郳र्क्ड्राüışğİliيونيكودöÄüß才能ソЫⅨ蒤郳र्क्ड्राüışğİliيونيكودöÄüßAbcd123(); diff --git a/tests/baselines/reference/escapedIdentifiers.js b/tests/baselines/reference/escapedIdentifiers.js index f68e540cee4..8e6ef5d830b 100644 --- a/tests/baselines/reference/escapedIdentifiers.js +++ b/tests/baselines/reference/escapedIdentifiers.js @@ -131,8 +131,8 @@ var moduleType1; moduleType1.baz1; })(moduleType1 || (moduleType1 = {})); var moduleType\u0032; -(function (moduleType\u0032) { - moduleType\u0032.baz2; +(function (moduleType2) { + moduleType2.baz2; })(moduleType\u0032 || (moduleType\u0032 = {})); moduleType1.baz1 = 3; moduleType\u0031.baz1 = 3; diff --git a/tests/baselines/reference/importAndVariableDeclarationConflict1.js b/tests/baselines/reference/importAndVariableDeclarationConflict1.js index d906812ce1c..78484b2c295 100644 --- a/tests/baselines/reference/importAndVariableDeclarationConflict1.js +++ b/tests/baselines/reference/importAndVariableDeclarationConflict1.js @@ -9,8 +9,8 @@ var x = ''; //// [importAndVariableDeclarationConflict1.js] var m; -(function (m) { - m.m = ''; +(function (_m) { + _m.m = ''; })(m || (m = {})); var x = m.m; var x = ''; diff --git a/tests/baselines/reference/importAndVariableDeclarationConflict2.js b/tests/baselines/reference/importAndVariableDeclarationConflict2.js index fa053220633..bea146fe9bf 100644 --- a/tests/baselines/reference/importAndVariableDeclarationConflict2.js +++ b/tests/baselines/reference/importAndVariableDeclarationConflict2.js @@ -13,8 +13,8 @@ class C { //// [importAndVariableDeclarationConflict2.js] var m; -(function (m) { - m.m = ''; +(function (_m) { + _m.m = ''; })(m || (m = {})); var x = m.m; var C = (function () { diff --git a/tests/baselines/reference/importAndVariableDeclarationConflict3.js b/tests/baselines/reference/importAndVariableDeclarationConflict3.js index cf9370240e4..426d44bab21 100644 --- a/tests/baselines/reference/importAndVariableDeclarationConflict3.js +++ b/tests/baselines/reference/importAndVariableDeclarationConflict3.js @@ -9,8 +9,8 @@ import x = m.m; //// [importAndVariableDeclarationConflict3.js] var m; -(function (m) { - m.m = ''; +(function (_m) { + _m.m = ''; })(m || (m = {})); var x = m.m; var x = m.m; diff --git a/tests/baselines/reference/importAndVariableDeclarationConflict4.js b/tests/baselines/reference/importAndVariableDeclarationConflict4.js index b17e79ea417..2adb78594a2 100644 --- a/tests/baselines/reference/importAndVariableDeclarationConflict4.js +++ b/tests/baselines/reference/importAndVariableDeclarationConflict4.js @@ -9,8 +9,8 @@ import x = m.m; //// [importAndVariableDeclarationConflict4.js] var m; -(function (m) { - m.m = ''; +(function (_m) { + _m.m = ''; })(m || (m = {})); var x = ''; var x = m.m; diff --git a/tests/baselines/reference/importedModuleAddToGlobal.js b/tests/baselines/reference/importedModuleAddToGlobal.js index 075621e92c2..6685bec69e3 100644 --- a/tests/baselines/reference/importedModuleAddToGlobal.js +++ b/tests/baselines/reference/importedModuleAddToGlobal.js @@ -18,13 +18,13 @@ module C { //// [importedModuleAddToGlobal.js] var B; -(function (B) { +(function (_B) { var B = (function () { function B() { } return B; })(); - B.B = B; + _B.B = B; })(B || (B = {})); var C; (function (C) { diff --git a/tests/baselines/reference/mergedModuleDeclarationCodeGen2.js b/tests/baselines/reference/mergedModuleDeclarationCodeGen2.js index 3780b08a52b..eff079e0c34 100644 --- a/tests/baselines/reference/mergedModuleDeclarationCodeGen2.js +++ b/tests/baselines/reference/mergedModuleDeclarationCodeGen2.js @@ -22,11 +22,11 @@ var my; var data = my.data; })(my || (my = {})); var my; -(function (my) { - (function (data) { +(function (_my) { + (function (_data) { function data(my) { - data.foo.buz(); + _data.foo.buz(); } - })(my.data || (my.data = {})); - var data = my.data; + })(_my.data || (_my.data = {})); + var data = _my.data; })(my || (my = {})); diff --git a/tests/baselines/reference/mergedModuleDeclarationCodeGen3.js b/tests/baselines/reference/mergedModuleDeclarationCodeGen3.js index 36daa3e1957..88b349dd02b 100644 --- a/tests/baselines/reference/mergedModuleDeclarationCodeGen3.js +++ b/tests/baselines/reference/mergedModuleDeclarationCodeGen3.js @@ -19,14 +19,14 @@ var my; var data = my.data; })(my || (my = {})); var my; -(function (my) { - (function (data) { - (function (foo) { +(function (_my) { + (function (_data) { + (function (_foo) { function data(my, foo) { - data.buz(); + _data.buz(); } - })(data.foo || (data.foo = {})); - var foo = data.foo; - })(my.data || (my.data = {})); - var data = my.data; + })(_data.foo || (_data.foo = {})); + var foo = _data.foo; + })(_my.data || (_my.data = {})); + var data = _my.data; })(my || (my = {})); diff --git a/tests/baselines/reference/mergedModuleDeclarationCodeGen4.js b/tests/baselines/reference/mergedModuleDeclarationCodeGen4.js index 04ea06e0df9..361a657e7e7 100644 --- a/tests/baselines/reference/mergedModuleDeclarationCodeGen4.js +++ b/tests/baselines/reference/mergedModuleDeclarationCodeGen4.js @@ -19,7 +19,7 @@ module superContain { //// [mergedModuleDeclarationCodeGen4.js] var superContain; (function (superContain) { - (function (contain) { + (function (_contain) { (function (my) { (function (buz) { (function (data) { @@ -30,21 +30,21 @@ var superContain; var data = buz.data; })(my.buz || (my.buz = {})); var buz = my.buz; - })(contain.my || (contain.my = {})); - var my = contain.my; - (function (my) { - (function (buz) { - (function (data) { + })(_contain.my || (_contain.my = {})); + var my = _contain.my; + (function (_my) { + (function (_buz) { + (function (_data) { function bar(contain, my, buz, data) { - data.foo(); + _data.foo(); } - data.bar = bar; - })(buz.data || (buz.data = {})); - var data = buz.data; - })(my.buz || (my.buz = {})); - var buz = my.buz; - })(contain.my || (contain.my = {})); - var my = contain.my; + _data.bar = bar; + })(_buz.data || (_buz.data = {})); + var data = _buz.data; + })(_my.buz || (_my.buz = {})); + var buz = _my.buz; + })(_contain.my || (_contain.my = {})); + var my = _contain.my; })(superContain.contain || (superContain.contain = {})); var contain = superContain.contain; })(superContain || (superContain = {})); diff --git a/tests/baselines/reference/mergedModuleDeclarationCodeGen5.js b/tests/baselines/reference/mergedModuleDeclarationCodeGen5.js index e3d0de74497..70e8de4c62a 100644 --- a/tests/baselines/reference/mergedModuleDeclarationCodeGen5.js +++ b/tests/baselines/reference/mergedModuleDeclarationCodeGen5.js @@ -20,7 +20,7 @@ module M.buz.plop { //// [mergedModuleDeclarationCodeGen5.js] var M; -(function (M) { +(function (_M) { (function (buz) { (function (plop) { function doom() { @@ -31,13 +31,13 @@ var M; plop.M = M; })(buz.plop || (buz.plop = {})); var plop = buz.plop; - })(M.buz || (M.buz = {})); - var buz = M.buz; + })(_M.buz || (_M.buz = {})); + var buz = _M.buz; })(M || (M = {})); var M; (function (M) { - (function (buz) { - (function (plop) { + (function (_buz) { + (function (_plop) { function gunk() { } function buz() { @@ -47,18 +47,18 @@ var M; } return fudge; })(); - plop.fudge = fudge; + _plop.fudge = fudge; (function (plop) { - })(plop.plop || (plop.plop = {})); - var plop = plop.plop; + })(_plop.plop || (_plop.plop = {})); + var plop = _plop.plop; var v1 = gunk; var v2 = buz; - plop.v3 = plop.doom; - plop.v4 = plop.M; - plop.v5 = fudge; - plop.v6 = plop; - })(buz.plop || (buz.plop = {})); - var plop = buz.plop; + _plop.v3 = _plop.doom; + _plop.v4 = _plop.M; + _plop.v5 = fudge; + _plop.v6 = plop; + })(_buz.plop || (_buz.plop = {})); + var plop = _buz.plop; })(M.buz || (M.buz = {})); var buz = M.buz; })(M || (M = {})); diff --git a/tests/baselines/reference/moduleWithStatementsOfEveryKind.js b/tests/baselines/reference/moduleWithStatementsOfEveryKind.js index d3d320b376f..f123c854cca 100644 --- a/tests/baselines/reference/moduleWithStatementsOfEveryKind.js +++ b/tests/baselines/reference/moduleWithStatementsOfEveryKind.js @@ -58,7 +58,7 @@ var __extends = this.__extends || function (d, b) { d.prototype = new __(); }; var A; -(function (A) { +(function (_A) { var A = (function () { function A() { } diff --git a/tests/baselines/reference/nameCollision.js b/tests/baselines/reference/nameCollision.js index 4bdf4750d54..307e30053e5 100644 --- a/tests/baselines/reference/nameCollision.js +++ b/tests/baselines/reference/nameCollision.js @@ -48,7 +48,7 @@ module D { //// [nameCollision.js] var A; -(function (A) { +(function (__A) { var A = 12; var _A = ''; })(A || (A = {})); @@ -57,7 +57,7 @@ var B; var A = 12; })(B || (B = {})); var B; -(function (B) { +(function (_B) { var B = (function () { function B() { } @@ -65,29 +65,29 @@ var B; })(); })(B || (B = {})); var X; -(function (X) { +(function (_X) { var X = 13; - (function (Y) { + (function (_Y) { var Y = 13; - (function (Z) { + (function (_Z) { var X = 12; var Y = 12; var Z = 12; - })(Y.Z || (Y.Z = {})); - var Z = Y.Z; - })(X.Y || (X.Y = {})); - var Y = X.Y; + })(_Y.Z || (_Y.Z = {})); + var Z = _Y.Z; + })(_X.Y || (_X.Y = {})); + var Y = _X.Y; })(X || (X = {})); var Y; -(function (Y) { - (function (Y) { +(function (_Y) { + (function (_Y) { (function (Y) { Y[Y["Red"] = 0] = "Red"; Y[Y["Blue"] = 1] = "Blue"; - })(Y.Y || (Y.Y = {})); - var Y = Y.Y; - })(Y.Y || (Y.Y = {})); - var Y = Y.Y; + })(_Y.Y || (_Y.Y = {})); + var Y = _Y.Y; + })(_Y.Y || (_Y.Y = {})); + var Y = _Y.Y; })(Y || (Y = {})); var D; (function (D) { diff --git a/tests/baselines/reference/recursiveClassReferenceTest.js b/tests/baselines/reference/recursiveClassReferenceTest.js index 59bfdf5d193..7cce1510785 100644 --- a/tests/baselines/reference/recursiveClassReferenceTest.js +++ b/tests/baselines/reference/recursiveClassReferenceTest.js @@ -112,7 +112,7 @@ var __extends = this.__extends || function (d, b) { var Sample; (function (Sample) { (function (Actions) { - (function (Thing) { + (function (_Thing) { (function (Find) { var StartFindAction = (function () { function StartFindAction() { @@ -126,8 +126,8 @@ var Sample; return StartFindAction; })(); Find.StartFindAction = StartFindAction; - })(Thing.Find || (Thing.Find = {})); - var Find = Thing.Find; + })(_Thing.Find || (_Thing.Find = {})); + var Find = _Thing.Find; })(Actions.Thing || (Actions.Thing = {})); var Thing = Actions.Thing; })(Sample.Actions || (Sample.Actions = {})); diff --git a/tests/baselines/reference/recursiveClassReferenceTest.js.map b/tests/baselines/reference/recursiveClassReferenceTest.js.map index bedb4f543e3..bcb61f8aee6 100644 --- a/tests/baselines/reference/recursiveClassReferenceTest.js.map +++ b/tests/baselines/reference/recursiveClassReferenceTest.js.map @@ -1,2 +1,2 @@ //// [recursiveClassReferenceTest.js.map] -{"version":3,"file":"recursiveClassReferenceTest.js","sourceRoot":"","sources":["recursiveClassReferenceTest.ts"],"names":["Sample","Sample.Actions","Sample.Actions.Thing","Sample.Actions.Thing.Find","Sample.Actions.Thing.Find.StartFindAction","Sample.Actions.Thing.Find.StartFindAction.constructor","Sample.Actions.Thing.Find.StartFindAction.getId","Sample.Actions.Thing.Find.StartFindAction.run","Sample.Thing","Sample.Thing.Widgets","Sample.Thing.Widgets.FindWidget","Sample.Thing.Widgets.FindWidget.constructor","Sample.Thing.Widgets.FindWidget.gar","Sample.Thing.Widgets.FindWidget.getDomNode","Sample.Thing.Widgets.FindWidget.destroy","AbstractMode","AbstractMode.constructor","AbstractMode.getInitialState","Sample.Thing.Languages","Sample.Thing.Languages.PlainText","Sample.Thing.Languages.PlainText.State","Sample.Thing.Languages.PlainText.State.constructor","Sample.Thing.Languages.PlainText.State.clone","Sample.Thing.Languages.PlainText.State.equals","Sample.Thing.Languages.PlainText.State.getMode","Sample.Thing.Languages.PlainText.Mode","Sample.Thing.Languages.PlainText.Mode.constructor","Sample.Thing.Languages.PlainText.Mode.getInitialState"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"recursiveClassReferenceTest.js","sourceRoot":"","sources":["recursiveClassReferenceTest.ts"],"names":["Sample","Sample.Actions","Sample.Actions.Thing","Sample.Actions.Thing.Find","Sample.Actions.Thing.Find.StartFindAction","Sample.Actions.Thing.Find.StartFindAction.constructor","Sample.Actions.Thing.Find.StartFindAction.getId","Sample.Actions.Thing.Find.StartFindAction.run","Sample.Thing","Sample.Thing.Widgets","Sample.Thing.Widgets.FindWidget","Sample.Thing.Widgets.FindWidget.constructor","Sample.Thing.Widgets.FindWidget.gar","Sample.Thing.Widgets.FindWidget.getDomNode","Sample.Thing.Widgets.FindWidget.destroy","AbstractMode","AbstractMode.constructor","AbstractMode.getInitialState","Sample.Thing.Languages","Sample.Thing.Languages.PlainText","Sample.Thing.Languages.PlainText.State","Sample.Thing.Languages.PlainText.State.constructor","Sample.Thing.Languages.PlainText.State.clone","Sample.Thing.Languages.PlainText.State.equals","Sample.Thing.Languages.PlainText.State.getMode","Sample.Thing.Languages.PlainText.Mode","Sample.Thing.Languages.PlainText.Mode.constructor","Sample.Thing.Languages.PlainText.Mode.getInitialState"],"mappings":"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"} \ No newline at end of file diff --git a/tests/baselines/reference/recursiveClassReferenceTest.sourcemap.txt b/tests/baselines/reference/recursiveClassReferenceTest.sourcemap.txt index a6b7d6db479..c13f0543fa0 100644 --- a/tests/baselines/reference/recursiveClassReferenceTest.sourcemap.txt +++ b/tests/baselines/reference/recursiveClassReferenceTest.sourcemap.txt @@ -86,7 +86,7 @@ sourceFile:recursiveClassReferenceTest.ts 1->^^^^ 2 > ^^^^^^^^^^^ 3 > ^^^^^^^ -4 > ^^^^^^-> +4 > ^^^^^^^-> 1->. 2 > 3 > Actions @@ -94,17 +94,17 @@ sourceFile:recursiveClassReferenceTest.ts 2 >Emitted(9, 16) Source(32, 15) + SourceIndex(0) name (Sample) 3 >Emitted(9, 23) Source(32, 22) + SourceIndex(0) name (Sample) --- ->>> (function (Thing) { +>>> (function (_Thing) { 1->^^^^^^^^ 2 > ^^^^^^^^^^^ -3 > ^^^^^ -4 > ^^^^^^^-> +3 > ^^^^^^ +4 > ^^^^^^-> 1->. 2 > 3 > Thing 1->Emitted(10, 9) Source(32, 23) + SourceIndex(0) name (Sample.Actions) 2 >Emitted(10, 20) Source(32, 23) + SourceIndex(0) name (Sample.Actions) -3 >Emitted(10, 25) Source(32, 28) + SourceIndex(0) name (Sample.Actions) +3 >Emitted(10, 26) Source(32, 28) + SourceIndex(0) name (Sample.Actions) --- >>> (function (Find) { 1->^^^^^^^^^^^^ @@ -307,48 +307,48 @@ sourceFile:recursiveClassReferenceTest.ts 4 >Emitted(23, 55) Source(41, 3) + SourceIndex(0) name (Sample.Actions.Thing.Find) 5 >Emitted(23, 56) Source(41, 3) + SourceIndex(0) name (Sample.Actions.Thing.Find) --- ->>> })(Thing.Find || (Thing.Find = {})); +>>> })(_Thing.Find || (_Thing.Find = {})); 1 >^^^^^^^^^^^^ 2 > ^ 3 > ^^ -4 > ^^^^^^^^^^ -5 > ^^^^^ -6 > ^^^^^^^^^^ -7 > ^^^^^^^^ +4 > ^^^^^^^^^^^ +5 > ^^^^^ +6 > ^^^^^^^^^^^ +7 > ^^^^^^^^ 1 > > 2 > } 3 > 4 > Find -5 > -6 > Find -7 > { - > export class StartFindAction implements Sample.Thing.IAction { - > - > public getId() { return "yo"; } - > - > public run(Thing:Sample.Thing.ICodeThing):boolean { - > - > return true; - > } - > } - > } +5 > +6 > Find +7 > { + > export class StartFindAction implements Sample.Thing.IAction { + > + > public getId() { return "yo"; } + > + > public run(Thing:Sample.Thing.ICodeThing):boolean { + > + > return true; + > } + > } + > } 1 >Emitted(24, 13) Source(42, 1) + SourceIndex(0) name (Sample.Actions.Thing.Find) 2 >Emitted(24, 14) Source(42, 2) + SourceIndex(0) name (Sample.Actions.Thing.Find) 3 >Emitted(24, 16) Source(32, 29) + SourceIndex(0) name (Sample.Actions.Thing) -4 >Emitted(24, 26) Source(32, 33) + SourceIndex(0) name (Sample.Actions.Thing) -5 >Emitted(24, 31) Source(32, 29) + SourceIndex(0) name (Sample.Actions.Thing) -6 >Emitted(24, 41) Source(32, 33) + SourceIndex(0) name (Sample.Actions.Thing) -7 >Emitted(24, 49) Source(42, 2) + SourceIndex(0) name (Sample.Actions.Thing) +4 >Emitted(24, 27) Source(32, 33) + SourceIndex(0) name (Sample.Actions.Thing) +5 >Emitted(24, 32) Source(32, 29) + SourceIndex(0) name (Sample.Actions.Thing) +6 >Emitted(24, 43) Source(32, 33) + SourceIndex(0) name (Sample.Actions.Thing) +7 >Emitted(24, 51) Source(42, 2) + SourceIndex(0) name (Sample.Actions.Thing) --- ->>> var Find = Thing.Find; +>>> var Find = _Thing.Find; 1 >^^^^^^^^^^^^ 2 > ^^^^ 3 > ^^^^ 4 > ^^^ -5 > ^^^^^^^^^^ -6 > ^ -7 > ^^^^^^^^^^^^^^^^^-> +5 > ^^^^^^^^^^^ +6 > ^ +7 > ^^^^^^^^^^^^^^^^-> 1 > 2 > 3 > Find @@ -364,13 +364,13 @@ sourceFile:recursiveClassReferenceTest.ts > } > } > } -6 > +6 > 1 >Emitted(25, 13) Source(32, 29) + SourceIndex(0) name (Sample.Actions.Thing) 2 >Emitted(25, 17) Source(32, 29) + SourceIndex(0) name (Sample.Actions.Thing) 3 >Emitted(25, 21) Source(32, 33) + SourceIndex(0) name (Sample.Actions.Thing) 4 >Emitted(25, 24) Source(32, 29) + SourceIndex(0) name (Sample.Actions.Thing) -5 >Emitted(25, 34) Source(42, 2) + SourceIndex(0) name (Sample.Actions.Thing) -6 >Emitted(25, 35) Source(42, 2) + SourceIndex(0) name (Sample.Actions.Thing) +5 >Emitted(25, 35) Source(42, 2) + SourceIndex(0) name (Sample.Actions.Thing) +6 >Emitted(25, 36) Source(42, 2) + SourceIndex(0) name (Sample.Actions.Thing) --- >>> })(Actions.Thing || (Actions.Thing = {})); 1->^^^^^^^^ diff --git a/tests/baselines/reference/recursiveCloduleReference.js b/tests/baselines/reference/recursiveCloduleReference.js index 804310e7905..ec994951fc6 100644 --- a/tests/baselines/reference/recursiveCloduleReference.js +++ b/tests/baselines/reference/recursiveCloduleReference.js @@ -19,8 +19,8 @@ var M; return C; })(); M.C = C; - (function (C) { - C.C = M.C; + (function (_C) { + _C.C = M.C; })(M.C || (M.C = {})); var C = M.C; ; diff --git a/tests/baselines/reference/thisInModuleFunction1.js b/tests/baselines/reference/thisInModuleFunction1.js index 02b5bb16002..1f46855239a 100644 --- a/tests/baselines/reference/thisInModuleFunction1.js +++ b/tests/baselines/reference/thisInModuleFunction1.js @@ -8,10 +8,10 @@ var z = bar.bar(); //// [thisInModuleFunction1.js] var bar; -(function (bar) { +(function (_bar) { function bar() { return this; } - bar.bar = bar; + _bar.bar = bar; })(bar || (bar = {})); var z = bar.bar();