Skip to content

Commit 4d84bde

Browse files
authored
Only bind module.exports if no local definition exists (microsoft#25869)
* Only bind module.exports if no local definition exists Note that this uses `lookupSymbolForNameWorker`, which is really a best-effort check since it only knows about symbols that it has already encountered. As a side-effect, even when `module` is bound as part of a `module.exports` reference, it only declares it once instead of one declaration per reference. * Only type module.exports inside module files It is an error inside script files, but the binder sometimes creates a ModuleExports symbol because we doesn't know whether we have a commonjs module until after binding is done. * Only bind module.exports in a commonjs module Note that this, too, is a best-effort check since evidence of commonjs-ness may be found after a *reference* to module.exports. (A reference to module.exports alone is not enough evidence that a file is commonjs. It has to have an assignment to it.)
1 parent 9e740de commit 4d84bde

21 files changed

+221
-50
lines changed

src/compiler/binder.ts

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2072,7 +2072,10 @@ namespace ts {
20722072
if (isSpecialPropertyDeclaration(node as PropertyAccessExpression)) {
20732073
bindSpecialPropertyDeclaration(node as PropertyAccessExpression);
20742074
}
2075-
if (isInJavaScriptFile(node) && isModuleExportsPropertyAccessExpression(node as PropertyAccessExpression)) {
2075+
if (isInJavaScriptFile(node) &&
2076+
file.commonJsModuleIndicator &&
2077+
isModuleExportsPropertyAccessExpression(node as PropertyAccessExpression) &&
2078+
!lookupSymbolForNameWorker(container, "module" as __String)) {
20762079
declareSymbol(container.locals!, /*parent*/ undefined, (node as PropertyAccessExpression).expression as Identifier,
20772080
SymbolFlags.FunctionScopedVariable | SymbolFlags.ModuleExports, SymbolFlags.FunctionScopedVariableExcludes);
20782081
}
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
tests/cases/conformance/salsa/bug24934.js(2,1): error TS2304: Cannot find name 'module'.
2+
3+
4+
==== tests/cases/conformance/salsa/bug24934.js (1 errors) ====
5+
export function abc(a, b, c) { return 5; }
6+
module.exports = { abc };
7+
~~~~~~
8+
!!! error TS2304: Cannot find name 'module'.
9+
==== tests/cases/conformance/salsa/use.js (0 errors) ====
10+
import { abc } from './bug24934';
11+
abc(1, 2, 3);
12+

tests/baselines/reference/conflictingCommonJSES2015Exports.symbols

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,6 @@ export function abc(a, b, c) { return 5; }
66
>c : Symbol(c, Decl(bug24934.js, 0, 25))
77

88
module.exports = { abc };
9-
>module.exports : Symbol("tests/cases/conformance/salsa/bug24934", Decl(bug24934.js, 0, 0))
10-
>module : Symbol(module, Decl(bug24934.js, 0, 42))
11-
>exports : Symbol("tests/cases/conformance/salsa/bug24934", Decl(bug24934.js, 0, 0))
129
>abc : Symbol(abc, Decl(bug24934.js, 1, 18))
1310

1411
=== tests/cases/conformance/salsa/use.js ===

tests/baselines/reference/conflictingCommonJSES2015Exports.types

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,10 @@ export function abc(a, b, c) { return 5; }
77
>5 : 5
88

99
module.exports = { abc };
10-
>module.exports = { abc } : typeof import("tests/cases/conformance/salsa/bug24934")
11-
>module.exports : typeof import("tests/cases/conformance/salsa/bug24934")
12-
>module : { "tests/cases/conformance/salsa/bug24934": typeof import("tests/cases/conformance/salsa/bug24934"); }
13-
>exports : typeof import("tests/cases/conformance/salsa/bug24934")
10+
>module.exports = { abc } : any
11+
>module.exports : any
12+
>module : any
13+
>exports : any
1414
>{ abc } : { abc: (a: any, b: any, c: any) => number; }
1515
>abc : (a: any, b: any, c: any) => number
1616

tests/baselines/reference/contextualTypedSpecialAssignment.symbols

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -102,7 +102,7 @@ exports.x
102102
module.exports.y = {
103103
>module.exports.y : Symbol(y, Decl(test.js, 45, 9))
104104
>module.exports : Symbol(y, Decl(test.js, 45, 9))
105-
>module : Symbol(module, Decl(test.js, 45, 9), Decl(test.js, 51, 1))
105+
>module : Symbol(module, Decl(test.js, 45, 9))
106106
>exports : Symbol("tests/cases/conformance/salsa/test", Decl(test.js, 0, 0))
107107
>y : Symbol(y, Decl(test.js, 45, 9))
108108

@@ -116,7 +116,7 @@ module.exports.y = {
116116
module.exports.y
117117
>module.exports.y : Symbol(y, Decl(test.js, 45, 9))
118118
>module.exports : Symbol("tests/cases/conformance/salsa/test", Decl(test.js, 0, 0))
119-
>module : Symbol(module, Decl(test.js, 45, 9), Decl(test.js, 51, 1))
119+
>module : Symbol(module, Decl(test.js, 45, 9))
120120
>exports : Symbol("tests/cases/conformance/salsa/test", Decl(test.js, 0, 0))
121121
>y : Symbol(y, Decl(test.js, 45, 9))
122122

tests/baselines/reference/jsdocTypeFromChainedAssignment2.symbols

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -43,12 +43,12 @@ exports.f = exports.g = function fg(n) {
4343
module.exports.h = module.exports.i = function hi(mom) {
4444
>module.exports.h : Symbol(h, Decl(mod.js, 3, 1))
4545
>module.exports : Symbol(h, Decl(mod.js, 3, 1))
46-
>module : Symbol(module, Decl(mod.js, 3, 1), Decl(mod.js, 5, 18))
46+
>module : Symbol(module, Decl(mod.js, 3, 1))
4747
>exports : Symbol("tests/cases/conformance/jsdoc/mod", Decl(mod.js, 0, 0))
4848
>h : Symbol(h, Decl(mod.js, 3, 1))
4949
>module.exports.i : Symbol(i, Decl(mod.js, 5, 18))
5050
>module.exports : Symbol(i, Decl(mod.js, 5, 18))
51-
>module : Symbol(module, Decl(mod.js, 3, 1), Decl(mod.js, 5, 18))
51+
>module : Symbol(module, Decl(mod.js, 3, 1))
5252
>exports : Symbol("tests/cases/conformance/jsdoc/mod", Decl(mod.js, 0, 0))
5353
>i : Symbol(i, Decl(mod.js, 5, 18))
5454
>hi : Symbol(hi, Decl(mod.js, 5, 37))

tests/baselines/reference/moduleExportAlias.symbols

Lines changed: 19 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -121,7 +121,7 @@ exports.func2 = function () { };
121121
var moduleExportsAlias = module.exports;
122122
>moduleExportsAlias : Symbol(moduleExportsAlias, Decl(b.js, 4, 3))
123123
>module.exports : Symbol("tests/cases/conformance/salsa/b", Decl(b.js, 0, 0))
124-
>module : Symbol(module, Decl(b.js, 4, 24), Decl(b.js, 5, 43), Decl(b.js, 8, 41), Decl(b.js, 11, 31), Decl(b.js, 18, 51) ... and 14 more)
124+
>module : Symbol(module, Decl(b.js, 4, 24))
125125
>exports : Symbol("tests/cases/conformance/salsa/b", Decl(b.js, 0, 0))
126126

127127
moduleExportsAlias.func3 = function () { };
@@ -132,15 +132,15 @@ moduleExportsAlias.func3 = function () { };
132132
module.exports.func4 = function () { };
133133
>module.exports.func4 : Symbol(func4, Decl(b.js, 5, 43))
134134
>module.exports : Symbol(func4, Decl(b.js, 5, 43))
135-
>module : Symbol(module, Decl(b.js, 4, 24), Decl(b.js, 5, 43), Decl(b.js, 8, 41), Decl(b.js, 11, 31), Decl(b.js, 18, 51) ... and 14 more)
135+
>module : Symbol(module, Decl(b.js, 4, 24))
136136
>exports : Symbol("tests/cases/conformance/salsa/b", Decl(b.js, 0, 0))
137137
>func4 : Symbol(func4, Decl(b.js, 5, 43))
138138

139139
var multipleDeclarationAlias1 = exports = module.exports;
140140
>multipleDeclarationAlias1 : Symbol(multipleDeclarationAlias1, Decl(b.js, 8, 3))
141141
>exports : Symbol("tests/cases/conformance/salsa/b", Decl(b.js, 0, 0))
142142
>module.exports : Symbol("tests/cases/conformance/salsa/b", Decl(b.js, 0, 0))
143-
>module : Symbol(module, Decl(b.js, 4, 24), Decl(b.js, 5, 43), Decl(b.js, 8, 41), Decl(b.js, 11, 31), Decl(b.js, 18, 51) ... and 14 more)
143+
>module : Symbol(module, Decl(b.js, 4, 24))
144144
>exports : Symbol("tests/cases/conformance/salsa/b", Decl(b.js, 0, 0))
145145

146146
multipleDeclarationAlias1.func5 = function () { };
@@ -151,7 +151,7 @@ multipleDeclarationAlias1.func5 = function () { };
151151
var multipleDeclarationAlias2 = module.exports = exports;
152152
>multipleDeclarationAlias2 : Symbol(multipleDeclarationAlias2, Decl(b.js, 11, 3))
153153
>module.exports : Symbol("tests/cases/conformance/salsa/b", Decl(b.js, 0, 0))
154-
>module : Symbol(module, Decl(b.js, 4, 24), Decl(b.js, 5, 43), Decl(b.js, 8, 41), Decl(b.js, 11, 31), Decl(b.js, 18, 51) ... and 14 more)
154+
>module : Symbol(module, Decl(b.js, 4, 24))
155155
>exports : Symbol("tests/cases/conformance/salsa/b", Decl(b.js, 0, 0))
156156
>exports : Symbol("tests/cases/conformance/salsa/b", Decl(b.js, 0, 0))
157157

@@ -177,7 +177,7 @@ var multipleDeclarationAlias4 = someOtherVariable = module.exports;
177177
>multipleDeclarationAlias4 : Symbol(multipleDeclarationAlias4, Decl(b.js, 18, 3))
178178
>someOtherVariable : Symbol(someOtherVariable, Decl(b.js, 14, 3))
179179
>module.exports : Symbol("tests/cases/conformance/salsa/b", Decl(b.js, 0, 0))
180-
>module : Symbol(module, Decl(b.js, 4, 24), Decl(b.js, 5, 43), Decl(b.js, 8, 41), Decl(b.js, 11, 31), Decl(b.js, 18, 51) ... and 14 more)
180+
>module : Symbol(module, Decl(b.js, 4, 24))
181181
>exports : Symbol("tests/cases/conformance/salsa/b", Decl(b.js, 0, 0))
182182

183183
multipleDeclarationAlias4.func8 = function () { };
@@ -188,7 +188,7 @@ multipleDeclarationAlias4.func8 = function () { };
188188
var multipleDeclarationAlias5 = module.exports = exports = {};
189189
>multipleDeclarationAlias5 : Symbol(multipleDeclarationAlias5, Decl(b.js, 21, 3))
190190
>module.exports : Symbol("tests/cases/conformance/salsa/b", Decl(b.js, 0, 0))
191-
>module : Symbol(module, Decl(b.js, 4, 24), Decl(b.js, 5, 43), Decl(b.js, 8, 41), Decl(b.js, 11, 31), Decl(b.js, 18, 51) ... and 14 more)
191+
>module : Symbol(module, Decl(b.js, 4, 24))
192192
>exports : Symbol("tests/cases/conformance/salsa/b", Decl(b.js, 0, 0))
193193
>exports : Symbol("tests/cases/conformance/salsa/b", Decl(b.js, 0, 0))
194194

@@ -201,7 +201,7 @@ var multipleDeclarationAlias6 = exports = module.exports = {};
201201
>multipleDeclarationAlias6 : Symbol(multipleDeclarationAlias6, Decl(b.js, 24, 3))
202202
>exports : Symbol("tests/cases/conformance/salsa/b", Decl(b.js, 0, 0))
203203
>module.exports : Symbol("tests/cases/conformance/salsa/b", Decl(b.js, 0, 0))
204-
>module : Symbol(module, Decl(b.js, 4, 24), Decl(b.js, 5, 43), Decl(b.js, 8, 41), Decl(b.js, 11, 31), Decl(b.js, 18, 51) ... and 14 more)
204+
>module : Symbol(module, Decl(b.js, 4, 24))
205205
>exports : Symbol("tests/cases/conformance/salsa/b", Decl(b.js, 0, 0))
206206

207207
multipleDeclarationAlias6.func10 = function () { };
@@ -212,7 +212,7 @@ multipleDeclarationAlias6.func10 = function () { };
212212
exports = module.exports = someOtherVariable = {};
213213
>exports : Symbol("tests/cases/conformance/salsa/b", Decl(b.js, 0, 0))
214214
>module.exports : Symbol("tests/cases/conformance/salsa/b", Decl(b.js, 0, 0))
215-
>module : Symbol(module, Decl(b.js, 4, 24), Decl(b.js, 5, 43), Decl(b.js, 8, 41), Decl(b.js, 11, 31), Decl(b.js, 18, 51) ... and 14 more)
215+
>module : Symbol(module, Decl(b.js, 4, 24))
216216
>exports : Symbol("tests/cases/conformance/salsa/b", Decl(b.js, 0, 0))
217217
>someOtherVariable : Symbol(someOtherVariable, Decl(b.js, 14, 3))
218218

@@ -224,14 +224,14 @@ exports.func11 = function () { };
224224
module.exports.func12 = function () { };
225225
>module.exports.func12 : Symbol(func12, Decl(b.js, 28, 33), Decl(b.js, 32, 33))
226226
>module.exports : Symbol(func12, Decl(b.js, 28, 33), Decl(b.js, 32, 33))
227-
>module : Symbol(module, Decl(b.js, 4, 24), Decl(b.js, 5, 43), Decl(b.js, 8, 41), Decl(b.js, 11, 31), Decl(b.js, 18, 51) ... and 14 more)
227+
>module : Symbol(module, Decl(b.js, 4, 24))
228228
>exports : Symbol("tests/cases/conformance/salsa/b", Decl(b.js, 0, 0))
229229
>func12 : Symbol(func12, Decl(b.js, 28, 33), Decl(b.js, 32, 33))
230230

231231
exports = module.exports = someOtherVariable = {};
232232
>exports : Symbol("tests/cases/conformance/salsa/b", Decl(b.js, 0, 0))
233233
>module.exports : Symbol("tests/cases/conformance/salsa/b", Decl(b.js, 0, 0))
234-
>module : Symbol(module, Decl(b.js, 4, 24), Decl(b.js, 5, 43), Decl(b.js, 8, 41), Decl(b.js, 11, 31), Decl(b.js, 18, 51) ... and 14 more)
234+
>module : Symbol(module, Decl(b.js, 4, 24))
235235
>exports : Symbol("tests/cases/conformance/salsa/b", Decl(b.js, 0, 0))
236236
>someOtherVariable : Symbol(someOtherVariable, Decl(b.js, 14, 3))
237237

@@ -243,14 +243,14 @@ exports.func11 = function () { };
243243
module.exports.func12 = function () { };
244244
>module.exports.func12 : Symbol(func12, Decl(b.js, 28, 33), Decl(b.js, 32, 33))
245245
>module.exports : Symbol(func12, Decl(b.js, 28, 33), Decl(b.js, 32, 33))
246-
>module : Symbol(module, Decl(b.js, 4, 24), Decl(b.js, 5, 43), Decl(b.js, 8, 41), Decl(b.js, 11, 31), Decl(b.js, 18, 51) ... and 14 more)
246+
>module : Symbol(module, Decl(b.js, 4, 24))
247247
>exports : Symbol("tests/cases/conformance/salsa/b", Decl(b.js, 0, 0))
248248
>func12 : Symbol(func12, Decl(b.js, 28, 33), Decl(b.js, 32, 33))
249249

250250
exports = module.exports = {};
251251
>exports : Symbol("tests/cases/conformance/salsa/b", Decl(b.js, 0, 0))
252252
>module.exports : Symbol("tests/cases/conformance/salsa/b", Decl(b.js, 0, 0))
253-
>module : Symbol(module, Decl(b.js, 4, 24), Decl(b.js, 5, 43), Decl(b.js, 8, 41), Decl(b.js, 11, 31), Decl(b.js, 18, 51) ... and 14 more)
253+
>module : Symbol(module, Decl(b.js, 4, 24))
254254
>exports : Symbol("tests/cases/conformance/salsa/b", Decl(b.js, 0, 0))
255255

256256
exports.func13 = function () { };
@@ -261,14 +261,14 @@ exports.func13 = function () { };
261261
module.exports.func14 = function () { };
262262
>module.exports.func14 : Symbol(func14, Decl(b.js, 36, 33))
263263
>module.exports : Symbol(func14, Decl(b.js, 36, 33))
264-
>module : Symbol(module, Decl(b.js, 4, 24), Decl(b.js, 5, 43), Decl(b.js, 8, 41), Decl(b.js, 11, 31), Decl(b.js, 18, 51) ... and 14 more)
264+
>module : Symbol(module, Decl(b.js, 4, 24))
265265
>exports : Symbol("tests/cases/conformance/salsa/b", Decl(b.js, 0, 0))
266266
>func14 : Symbol(func14, Decl(b.js, 36, 33))
267267

268268
exports = module.exports = {};
269269
>exports : Symbol("tests/cases/conformance/salsa/b", Decl(b.js, 0, 0))
270270
>module.exports : Symbol("tests/cases/conformance/salsa/b", Decl(b.js, 0, 0))
271-
>module : Symbol(module, Decl(b.js, 4, 24), Decl(b.js, 5, 43), Decl(b.js, 8, 41), Decl(b.js, 11, 31), Decl(b.js, 18, 51) ... and 14 more)
271+
>module : Symbol(module, Decl(b.js, 4, 24))
272272
>exports : Symbol("tests/cases/conformance/salsa/b", Decl(b.js, 0, 0))
273273

274274
exports.func15 = function () { };
@@ -279,13 +279,13 @@ exports.func15 = function () { };
279279
module.exports.func16 = function () { };
280280
>module.exports.func16 : Symbol(func16, Decl(b.js, 40, 33))
281281
>module.exports : Symbol(func16, Decl(b.js, 40, 33))
282-
>module : Symbol(module, Decl(b.js, 4, 24), Decl(b.js, 5, 43), Decl(b.js, 8, 41), Decl(b.js, 11, 31), Decl(b.js, 18, 51) ... and 14 more)
282+
>module : Symbol(module, Decl(b.js, 4, 24))
283283
>exports : Symbol("tests/cases/conformance/salsa/b", Decl(b.js, 0, 0))
284284
>func16 : Symbol(func16, Decl(b.js, 40, 33))
285285

286286
module.exports = exports = {};
287287
>module.exports : Symbol("tests/cases/conformance/salsa/b", Decl(b.js, 0, 0))
288-
>module : Symbol(module, Decl(b.js, 4, 24), Decl(b.js, 5, 43), Decl(b.js, 8, 41), Decl(b.js, 11, 31), Decl(b.js, 18, 51) ... and 14 more)
288+
>module : Symbol(module, Decl(b.js, 4, 24))
289289
>exports : Symbol("tests/cases/conformance/salsa/b", Decl(b.js, 0, 0))
290290
>exports : Symbol("tests/cases/conformance/salsa/b", Decl(b.js, 0, 0))
291291

@@ -297,13 +297,13 @@ exports.func17 = function () { };
297297
module.exports.func18 = function () { };
298298
>module.exports.func18 : Symbol(func18, Decl(b.js, 44, 33))
299299
>module.exports : Symbol(func18, Decl(b.js, 44, 33))
300-
>module : Symbol(module, Decl(b.js, 4, 24), Decl(b.js, 5, 43), Decl(b.js, 8, 41), Decl(b.js, 11, 31), Decl(b.js, 18, 51) ... and 14 more)
300+
>module : Symbol(module, Decl(b.js, 4, 24))
301301
>exports : Symbol("tests/cases/conformance/salsa/b", Decl(b.js, 0, 0))
302302
>func18 : Symbol(func18, Decl(b.js, 44, 33))
303303

304304
module.exports = {};
305305
>module.exports : Symbol("tests/cases/conformance/salsa/b", Decl(b.js, 0, 0))
306-
>module : Symbol(module, Decl(b.js, 4, 24), Decl(b.js, 5, 43), Decl(b.js, 8, 41), Decl(b.js, 11, 31), Decl(b.js, 18, 51) ... and 14 more)
306+
>module : Symbol(module, Decl(b.js, 4, 24))
307307
>exports : Symbol("tests/cases/conformance/salsa/b", Decl(b.js, 0, 0))
308308

309309
exports.func19 = function () { };
@@ -314,7 +314,7 @@ exports.func19 = function () { };
314314
module.exports.func20 = function () { };
315315
>module.exports.func20 : Symbol(func20, Decl(b.js, 48, 33))
316316
>module.exports : Symbol(func20, Decl(b.js, 48, 33))
317-
>module : Symbol(module, Decl(b.js, 4, 24), Decl(b.js, 5, 43), Decl(b.js, 8, 41), Decl(b.js, 11, 31), Decl(b.js, 18, 51) ... and 14 more)
317+
>module : Symbol(module, Decl(b.js, 4, 24))
318318
>exports : Symbol("tests/cases/conformance/salsa/b", Decl(b.js, 0, 0))
319319
>func20 : Symbol(func20, Decl(b.js, 48, 33))
320320

tests/baselines/reference/moduleExportAlias4.symbols

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ module.exports = class C {}
1414
module.exports.D = class D { }
1515
>module.exports.D : Symbol(D)
1616
>module.exports : Symbol(D, Decl(bug24024.js, 2, 27))
17-
>module : Symbol(module, Decl(bug24024.js, 1, 31), Decl(bug24024.js, 2, 27))
17+
>module : Symbol(module, Decl(bug24024.js, 1, 31))
1818
>exports : Symbol("tests/cases/conformance/salsa/bug24024", Decl(bug24024.js, 0, 0))
1919
>D : Symbol(D, Decl(bug24024.js, 2, 27))
2020
>D : Symbol(D, Decl(bug24024.js, 3, 18))

tests/baselines/reference/moduleExportAssignment.symbols

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ npmlog.on('hi') // both references should see EE.on
3838
module.exports.on('hi') // here too
3939
>module.exports.on : Symbol(EE.on, Decl(npmlog.js, 0, 10))
4040
>module.exports : Symbol("tests/cases/conformance/salsa/npmlog", Decl(npmlog.js, 0, 0))
41-
>module : Symbol(module, Decl(npmlog.js, 4, 12), Decl(npmlog.js, 6, 15), Decl(npmlog.js, 9, 12), Decl(npmlog.js, 11, 8))
41+
>module : Symbol(module, Decl(npmlog.js, 4, 12))
4242
>exports : Symbol("tests/cases/conformance/salsa/npmlog", Decl(npmlog.js, 0, 0))
4343
>on : Symbol(EE.on, Decl(npmlog.js, 0, 10))
4444

@@ -50,7 +50,7 @@ npmlog.x = 1
5050
module.exports.y = 2
5151
>module.exports.y : Symbol(y, Decl(npmlog.js, 9, 12))
5252
>module.exports : Symbol(y, Decl(npmlog.js, 9, 12))
53-
>module : Symbol(module, Decl(npmlog.js, 4, 12), Decl(npmlog.js, 6, 15), Decl(npmlog.js, 9, 12), Decl(npmlog.js, 11, 8))
53+
>module : Symbol(module, Decl(npmlog.js, 4, 12))
5454
>exports : Symbol("tests/cases/conformance/salsa/npmlog", Decl(npmlog.js, 0, 0))
5555
>y : Symbol(y, Decl(npmlog.js, 9, 12))
5656

@@ -62,7 +62,7 @@ npmlog.y
6262
module.exports.x
6363
>module.exports.x : Symbol(x, Decl(npmlog.js, 7, 23))
6464
>module.exports : Symbol("tests/cases/conformance/salsa/npmlog", Decl(npmlog.js, 0, 0))
65-
>module : Symbol(module, Decl(npmlog.js, 4, 12), Decl(npmlog.js, 6, 15), Decl(npmlog.js, 9, 12), Decl(npmlog.js, 11, 8))
65+
>module : Symbol(module, Decl(npmlog.js, 4, 12))
6666
>exports : Symbol("tests/cases/conformance/salsa/npmlog", Decl(npmlog.js, 0, 0))
6767
>x : Symbol(x, Decl(npmlog.js, 7, 23))
6868

tests/baselines/reference/moduleExportAssignment2.symbols

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ var npm = module.exports = function (tree) {
99
module.exports.asReadInstalled = function (tree) {
1010
>module.exports.asReadInstalled : Symbol(asReadInstalled, Decl(npm.js, 1, 1))
1111
>module.exports : Symbol(asReadInstalled, Decl(npm.js, 1, 1))
12-
>module : Symbol(module, Decl(npm.js, 0, 9), Decl(npm.js, 1, 1))
12+
>module : Symbol(module, Decl(npm.js, 0, 9))
1313
>exports : Symbol("tests/cases/conformance/salsa/npm", Decl(npm.js, 0, 0))
1414
>asReadInstalled : Symbol(asReadInstalled, Decl(npm.js, 1, 1))
1515
>tree : Symbol(tree, Decl(npm.js, 2, 43))

tests/baselines/reference/moduleExportAssignment3.symbols

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,6 @@ module.exports = function x() { }
1616

1717
module.exports() // should be callable
1818
>module.exports : Symbol("tests/cases/conformance/salsa/mod", Decl(mod.js, 0, 0))
19-
>module : Symbol(module, Decl(mod.js, 0, 0), Decl(mod.js, 0, 33))
19+
>module : Symbol(module, Decl(mod.js, 0, 0))
2020
>exports : Symbol("tests/cases/conformance/salsa/mod", Decl(mod.js, 0, 0))
2121

tests/baselines/reference/moduleExportAssignment5.symbols

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ module.exports = axios;
2626
module.exports.default = axios;
2727
>module.exports.default : Symbol(default, Decl(axios.js, 8, 23))
2828
>module.exports : Symbol(default, Decl(axios.js, 8, 23))
29-
>module : Symbol(module, Decl(axios.js, 7, 9), Decl(axios.js, 8, 23))
29+
>module : Symbol(module, Decl(axios.js, 7, 9))
3030
>exports : Symbol("tests/cases/conformance/salsa/axios", Decl(axios.js, 0, 0))
3131
>default : Symbol(default, Decl(axios.js, 8, 23))
3232
>axios : Symbol(axios, Decl(axios.js, 5, 3))

0 commit comments

Comments
 (0)