* Alias for `module.exports.x = x` This fixes #40155 in a surprisingly small amount of code. * Treat any aliasable expression as an alias * test internal references to exported class
44 lines
1.3 KiB
Plaintext
44 lines
1.3 KiB
Plaintext
=== tests/cases/conformance/salsa/main.js ===
|
|
const { K } = require("./mod1");
|
|
>K : Symbol(K, Decl(main.js, 0, 7))
|
|
>require : Symbol(require)
|
|
>"./mod1" : Symbol("tests/cases/conformance/salsa/mod1", Decl(mod1.js, 0, 0))
|
|
|
|
/** @param {K} k */
|
|
function f(k) {
|
|
>f : Symbol(f, Decl(main.js, 0, 32))
|
|
>k : Symbol(k, Decl(main.js, 2, 11))
|
|
|
|
k.values()
|
|
>k.values : Symbol(K.values, Decl(mod1.js, 1, 13))
|
|
>k : Symbol(k, Decl(main.js, 2, 11))
|
|
>values : Symbol(K.values, Decl(mod1.js, 1, 13))
|
|
}
|
|
|
|
=== tests/cases/conformance/salsa/mod1.js ===
|
|
var NS = {}
|
|
>NS : Symbol(NS, Decl(mod1.js, 0, 3), Decl(mod1.js, 0, 11))
|
|
|
|
NS.K =class {
|
|
>NS.K : Symbol(K, Decl(mod1.js, 0, 11))
|
|
>NS : Symbol(NS, Decl(mod1.js, 0, 3), Decl(mod1.js, 0, 11))
|
|
>K : Symbol(K, Decl(mod1.js, 0, 11))
|
|
|
|
values() {
|
|
>values : Symbol(K.values, Decl(mod1.js, 1, 13))
|
|
|
|
return new NS.K()
|
|
>NS.K : Symbol(K, Decl(mod1.js, 0, 11))
|
|
>NS : Symbol(NS, Decl(mod1.js, 0, 3), Decl(mod1.js, 0, 11))
|
|
>K : Symbol(K, Decl(mod1.js, 0, 11))
|
|
}
|
|
}
|
|
exports.K = NS.K;
|
|
>exports.K : Symbol(K, Decl(mod1.js, 5, 1))
|
|
>exports : Symbol(K, Decl(mod1.js, 5, 1))
|
|
>K : Symbol(K, Decl(mod1.js, 5, 1))
|
|
>NS.K : Symbol(K, Decl(mod1.js, 0, 11))
|
|
>NS : Symbol(NS, Decl(mod1.js, 0, 3), Decl(mod1.js, 0, 11))
|
|
>K : Symbol(K, Decl(mod1.js, 0, 11))
|
|
|