Skip to content

Commit ce487e4

Browse files
authored
Fix meta property symbol lookup (microsoft#48773)
1 parent d81a976 commit ce487e4

19 files changed

+100
-9
lines changed

src/compiler/checker.ts

Lines changed: 12 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -41982,15 +41982,20 @@ namespace ts {
4198241982
return propertyDeclaration;
4198341983
}
4198441984
}
41985-
else if (isMetaProperty(parent)) {
41986-
const parentType = getTypeOfNode(parent);
41987-
const propertyDeclaration = getPropertyOfType(parentType, (node as Identifier).escapedText);
41988-
if (propertyDeclaration) {
41989-
return propertyDeclaration;
41990-
}
41991-
if (parent.keywordToken === SyntaxKind.NewKeyword) {
41985+
else if (isMetaProperty(parent) && parent.name === node) {
41986+
if (parent.keywordToken === SyntaxKind.NewKeyword && idText(node as Identifier) === "target") {
41987+
// `target` in `new.target`
4199241988
return checkNewTargetMetaProperty(parent).symbol;
4199341989
}
41990+
// The `meta` in `import.meta` could be given `getTypeOfNode(parent).symbol` (the `ImportMeta` interface symbol), but
41991+
// we have a fake expression type made for other reasons already, whose transient `meta`
41992+
// member should more exactly be the kind of (declarationless) symbol we want.
41993+
// (See #44364 and #45031 for relevant implementation PRs)
41994+
if (parent.keywordToken === SyntaxKind.ImportKeyword && idText(node as Identifier) === "meta") {
41995+
return getGlobalImportMetaExpressionType().members!.get("meta" as __String);
41996+
}
41997+
// no other meta properties are valid syntax, thus no others should have symbols
41998+
return undefined;
4199441999
}
4199542000
}
4199642001

tests/baselines/reference/importMeta(module=commonjs,target=es5).symbols

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
>URL : Symbol(URL, Decl(lib.dom.d.ts, --, --), Decl(lib.dom.d.ts, --, --))
99
>import.meta.url : Symbol(ImportMeta.url, Decl(lib.dom.d.ts, --, --))
1010
>import.meta : Symbol(ImportMeta, Decl(lib.es5.d.ts, --, --), Decl(lib.dom.d.ts, --, --), Decl(assignmentTargets.ts, 4, 16))
11+
>meta : Symbol(ImportMetaExpression.meta)
1112
>url : Symbol(ImportMeta.url, Decl(lib.dom.d.ts, --, --))
1213
>toString : Symbol(URL.toString, Decl(lib.dom.d.ts, --, --))
1314

@@ -20,6 +21,7 @@
2021
const size = import.meta.scriptElement.dataset.size || 300;
2122
>size : Symbol(size, Decl(example.ts, 5, 7))
2223
>import.meta : Symbol(ImportMeta, Decl(lib.es5.d.ts, --, --), Decl(lib.dom.d.ts, --, --), Decl(assignmentTargets.ts, 4, 16))
24+
>meta : Symbol(ImportMetaExpression.meta)
2325

2426
const image = new Image();
2527
>image : Symbol(image, Decl(example.ts, 7, 7))
@@ -57,6 +59,7 @@
5759
export let x = import.meta;
5860
>x : Symbol(x, Decl(moduleLookingFile01.ts, 0, 10))
5961
>import.meta : Symbol(ImportMeta, Decl(lib.es5.d.ts, --, --), Decl(lib.dom.d.ts, --, --), Decl(assignmentTargets.ts, 4, 16))
62+
>meta : Symbol(ImportMetaExpression.meta)
6063

6164
export let y = import.metal;
6265
>y : Symbol(y, Decl(moduleLookingFile01.ts, 1, 10))
@@ -68,6 +71,7 @@ export let z = import.import.import.malkovich;
6871
let globalA = import.meta;
6972
>globalA : Symbol(globalA, Decl(scriptLookingFile01.ts, 0, 3))
7073
>import.meta : Symbol(ImportMeta, Decl(lib.es5.d.ts, --, --), Decl(lib.dom.d.ts, --, --), Decl(assignmentTargets.ts, 4, 16))
74+
>meta : Symbol(ImportMetaExpression.meta)
7175

7276
let globalB = import.metal;
7377
>globalB : Symbol(globalB, Decl(scriptLookingFile01.ts, 1, 3))
@@ -80,11 +84,15 @@ export const foo: ImportMeta = import.meta.blah = import.meta.blue = import.meta
8084
>foo : Symbol(foo, Decl(assignmentTargets.ts, 0, 12))
8185
>ImportMeta : Symbol(ImportMeta, Decl(lib.es5.d.ts, --, --), Decl(lib.dom.d.ts, --, --), Decl(assignmentTargets.ts, 4, 16))
8286
>import.meta : Symbol(ImportMeta, Decl(lib.es5.d.ts, --, --), Decl(lib.dom.d.ts, --, --), Decl(assignmentTargets.ts, 4, 16))
87+
>meta : Symbol(ImportMetaExpression.meta)
8388
>import.meta : Symbol(ImportMeta, Decl(lib.es5.d.ts, --, --), Decl(lib.dom.d.ts, --, --), Decl(assignmentTargets.ts, 4, 16))
89+
>meta : Symbol(ImportMetaExpression.meta)
8490
>import.meta : Symbol(ImportMeta, Decl(lib.es5.d.ts, --, --), Decl(lib.dom.d.ts, --, --), Decl(assignmentTargets.ts, 4, 16))
91+
>meta : Symbol(ImportMetaExpression.meta)
8592

8693
import.meta = foo;
8794
>import.meta : Symbol(ImportMeta, Decl(lib.es5.d.ts, --, --), Decl(lib.dom.d.ts, --, --), Decl(assignmentTargets.ts, 4, 16))
95+
>meta : Symbol(ImportMetaExpression.meta)
8896
>foo : Symbol(foo, Decl(assignmentTargets.ts, 0, 12))
8997

9098
// @Filename augmentations.ts
@@ -108,5 +116,6 @@ const { a, b, c } = import.meta.wellKnownProperty;
108116
>c : Symbol(c, Decl(assignmentTargets.ts, 10, 13))
109117
>import.meta.wellKnownProperty : Symbol(ImportMeta.wellKnownProperty, Decl(assignmentTargets.ts, 5, 24))
110118
>import.meta : Symbol(ImportMeta, Decl(lib.es5.d.ts, --, --), Decl(lib.dom.d.ts, --, --), Decl(assignmentTargets.ts, 4, 16))
119+
>meta : Symbol(ImportMetaExpression.meta)
111120
>wellKnownProperty : Symbol(ImportMeta.wellKnownProperty, Decl(assignmentTargets.ts, 5, 24))
112121

tests/baselines/reference/importMeta(module=commonjs,target=esnext).symbols

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
>URL : Symbol(URL, Decl(lib.dom.d.ts, --, --), Decl(lib.dom.d.ts, --, --))
99
>import.meta.url : Symbol(ImportMeta.url, Decl(lib.dom.d.ts, --, --))
1010
>import.meta : Symbol(ImportMeta, Decl(lib.es5.d.ts, --, --), Decl(lib.dom.d.ts, --, --), Decl(assignmentTargets.ts, 4, 16))
11+
>meta : Symbol(ImportMetaExpression.meta)
1112
>url : Symbol(ImportMeta.url, Decl(lib.dom.d.ts, --, --))
1213
>toString : Symbol(URL.toString, Decl(lib.dom.d.ts, --, --))
1314

@@ -20,6 +21,7 @@
2021
const size = import.meta.scriptElement.dataset.size || 300;
2122
>size : Symbol(size, Decl(example.ts, 5, 7))
2223
>import.meta : Symbol(ImportMeta, Decl(lib.es5.d.ts, --, --), Decl(lib.dom.d.ts, --, --), Decl(assignmentTargets.ts, 4, 16))
24+
>meta : Symbol(ImportMetaExpression.meta)
2325

2426
const image = new Image();
2527
>image : Symbol(image, Decl(example.ts, 7, 7))
@@ -57,6 +59,7 @@
5759
export let x = import.meta;
5860
>x : Symbol(x, Decl(moduleLookingFile01.ts, 0, 10))
5961
>import.meta : Symbol(ImportMeta, Decl(lib.es5.d.ts, --, --), Decl(lib.dom.d.ts, --, --), Decl(assignmentTargets.ts, 4, 16))
62+
>meta : Symbol(ImportMetaExpression.meta)
6063

6164
export let y = import.metal;
6265
>y : Symbol(y, Decl(moduleLookingFile01.ts, 1, 10))
@@ -68,6 +71,7 @@ export let z = import.import.import.malkovich;
6871
let globalA = import.meta;
6972
>globalA : Symbol(globalA, Decl(scriptLookingFile01.ts, 0, 3))
7073
>import.meta : Symbol(ImportMeta, Decl(lib.es5.d.ts, --, --), Decl(lib.dom.d.ts, --, --), Decl(assignmentTargets.ts, 4, 16))
74+
>meta : Symbol(ImportMetaExpression.meta)
7175

7276
let globalB = import.metal;
7377
>globalB : Symbol(globalB, Decl(scriptLookingFile01.ts, 1, 3))
@@ -80,11 +84,15 @@ export const foo: ImportMeta = import.meta.blah = import.meta.blue = import.meta
8084
>foo : Symbol(foo, Decl(assignmentTargets.ts, 0, 12))
8185
>ImportMeta : Symbol(ImportMeta, Decl(lib.es5.d.ts, --, --), Decl(lib.dom.d.ts, --, --), Decl(assignmentTargets.ts, 4, 16))
8286
>import.meta : Symbol(ImportMeta, Decl(lib.es5.d.ts, --, --), Decl(lib.dom.d.ts, --, --), Decl(assignmentTargets.ts, 4, 16))
87+
>meta : Symbol(ImportMetaExpression.meta)
8388
>import.meta : Symbol(ImportMeta, Decl(lib.es5.d.ts, --, --), Decl(lib.dom.d.ts, --, --), Decl(assignmentTargets.ts, 4, 16))
89+
>meta : Symbol(ImportMetaExpression.meta)
8490
>import.meta : Symbol(ImportMeta, Decl(lib.es5.d.ts, --, --), Decl(lib.dom.d.ts, --, --), Decl(assignmentTargets.ts, 4, 16))
91+
>meta : Symbol(ImportMetaExpression.meta)
8592

8693
import.meta = foo;
8794
>import.meta : Symbol(ImportMeta, Decl(lib.es5.d.ts, --, --), Decl(lib.dom.d.ts, --, --), Decl(assignmentTargets.ts, 4, 16))
95+
>meta : Symbol(ImportMetaExpression.meta)
8896
>foo : Symbol(foo, Decl(assignmentTargets.ts, 0, 12))
8997

9098
// @Filename augmentations.ts
@@ -108,5 +116,6 @@ const { a, b, c } = import.meta.wellKnownProperty;
108116
>c : Symbol(c, Decl(assignmentTargets.ts, 10, 13))
109117
>import.meta.wellKnownProperty : Symbol(ImportMeta.wellKnownProperty, Decl(assignmentTargets.ts, 5, 24))
110118
>import.meta : Symbol(ImportMeta, Decl(lib.es5.d.ts, --, --), Decl(lib.dom.d.ts, --, --), Decl(assignmentTargets.ts, 4, 16))
119+
>meta : Symbol(ImportMetaExpression.meta)
111120
>wellKnownProperty : Symbol(ImportMeta.wellKnownProperty, Decl(assignmentTargets.ts, 5, 24))
112121

tests/baselines/reference/importMeta(module=es2020,target=es5).symbols

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
>URL : Symbol(URL, Decl(lib.dom.d.ts, --, --), Decl(lib.dom.d.ts, --, --))
99
>import.meta.url : Symbol(ImportMeta.url, Decl(lib.dom.d.ts, --, --))
1010
>import.meta : Symbol(ImportMeta, Decl(lib.es5.d.ts, --, --), Decl(lib.dom.d.ts, --, --), Decl(assignmentTargets.ts, 4, 16))
11+
>meta : Symbol(ImportMetaExpression.meta)
1112
>url : Symbol(ImportMeta.url, Decl(lib.dom.d.ts, --, --))
1213
>toString : Symbol(URL.toString, Decl(lib.dom.d.ts, --, --))
1314

@@ -20,6 +21,7 @@
2021
const size = import.meta.scriptElement.dataset.size || 300;
2122
>size : Symbol(size, Decl(example.ts, 5, 7))
2223
>import.meta : Symbol(ImportMeta, Decl(lib.es5.d.ts, --, --), Decl(lib.dom.d.ts, --, --), Decl(assignmentTargets.ts, 4, 16))
24+
>meta : Symbol(ImportMetaExpression.meta)
2325

2426
const image = new Image();
2527
>image : Symbol(image, Decl(example.ts, 7, 7))
@@ -57,6 +59,7 @@
5759
export let x = import.meta;
5860
>x : Symbol(x, Decl(moduleLookingFile01.ts, 0, 10))
5961
>import.meta : Symbol(ImportMeta, Decl(lib.es5.d.ts, --, --), Decl(lib.dom.d.ts, --, --), Decl(assignmentTargets.ts, 4, 16))
62+
>meta : Symbol(ImportMetaExpression.meta)
6063

6164
export let y = import.metal;
6265
>y : Symbol(y, Decl(moduleLookingFile01.ts, 1, 10))
@@ -68,6 +71,7 @@ export let z = import.import.import.malkovich;
6871
let globalA = import.meta;
6972
>globalA : Symbol(globalA, Decl(scriptLookingFile01.ts, 0, 3))
7073
>import.meta : Symbol(ImportMeta, Decl(lib.es5.d.ts, --, --), Decl(lib.dom.d.ts, --, --), Decl(assignmentTargets.ts, 4, 16))
74+
>meta : Symbol(ImportMetaExpression.meta)
7175

7276
let globalB = import.metal;
7377
>globalB : Symbol(globalB, Decl(scriptLookingFile01.ts, 1, 3))
@@ -80,11 +84,15 @@ export const foo: ImportMeta = import.meta.blah = import.meta.blue = import.meta
8084
>foo : Symbol(foo, Decl(assignmentTargets.ts, 0, 12))
8185
>ImportMeta : Symbol(ImportMeta, Decl(lib.es5.d.ts, --, --), Decl(lib.dom.d.ts, --, --), Decl(assignmentTargets.ts, 4, 16))
8286
>import.meta : Symbol(ImportMeta, Decl(lib.es5.d.ts, --, --), Decl(lib.dom.d.ts, --, --), Decl(assignmentTargets.ts, 4, 16))
87+
>meta : Symbol(ImportMetaExpression.meta)
8388
>import.meta : Symbol(ImportMeta, Decl(lib.es5.d.ts, --, --), Decl(lib.dom.d.ts, --, --), Decl(assignmentTargets.ts, 4, 16))
89+
>meta : Symbol(ImportMetaExpression.meta)
8490
>import.meta : Symbol(ImportMeta, Decl(lib.es5.d.ts, --, --), Decl(lib.dom.d.ts, --, --), Decl(assignmentTargets.ts, 4, 16))
91+
>meta : Symbol(ImportMetaExpression.meta)
8592

8693
import.meta = foo;
8794
>import.meta : Symbol(ImportMeta, Decl(lib.es5.d.ts, --, --), Decl(lib.dom.d.ts, --, --), Decl(assignmentTargets.ts, 4, 16))
95+
>meta : Symbol(ImportMetaExpression.meta)
8896
>foo : Symbol(foo, Decl(assignmentTargets.ts, 0, 12))
8997

9098
// @Filename augmentations.ts
@@ -108,5 +116,6 @@ const { a, b, c } = import.meta.wellKnownProperty;
108116
>c : Symbol(c, Decl(assignmentTargets.ts, 10, 13))
109117
>import.meta.wellKnownProperty : Symbol(ImportMeta.wellKnownProperty, Decl(assignmentTargets.ts, 5, 24))
110118
>import.meta : Symbol(ImportMeta, Decl(lib.es5.d.ts, --, --), Decl(lib.dom.d.ts, --, --), Decl(assignmentTargets.ts, 4, 16))
119+
>meta : Symbol(ImportMetaExpression.meta)
111120
>wellKnownProperty : Symbol(ImportMeta.wellKnownProperty, Decl(assignmentTargets.ts, 5, 24))
112121

tests/baselines/reference/importMeta(module=es2020,target=esnext).symbols

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
>URL : Symbol(URL, Decl(lib.dom.d.ts, --, --), Decl(lib.dom.d.ts, --, --))
99
>import.meta.url : Symbol(ImportMeta.url, Decl(lib.dom.d.ts, --, --))
1010
>import.meta : Symbol(ImportMeta, Decl(lib.es5.d.ts, --, --), Decl(lib.dom.d.ts, --, --), Decl(assignmentTargets.ts, 4, 16))
11+
>meta : Symbol(ImportMetaExpression.meta)
1112
>url : Symbol(ImportMeta.url, Decl(lib.dom.d.ts, --, --))
1213
>toString : Symbol(URL.toString, Decl(lib.dom.d.ts, --, --))
1314

@@ -20,6 +21,7 @@
2021
const size = import.meta.scriptElement.dataset.size || 300;
2122
>size : Symbol(size, Decl(example.ts, 5, 7))
2223
>import.meta : Symbol(ImportMeta, Decl(lib.es5.d.ts, --, --), Decl(lib.dom.d.ts, --, --), Decl(assignmentTargets.ts, 4, 16))
24+
>meta : Symbol(ImportMetaExpression.meta)
2325

2426
const image = new Image();
2527
>image : Symbol(image, Decl(example.ts, 7, 7))
@@ -57,6 +59,7 @@
5759
export let x = import.meta;
5860
>x : Symbol(x, Decl(moduleLookingFile01.ts, 0, 10))
5961
>import.meta : Symbol(ImportMeta, Decl(lib.es5.d.ts, --, --), Decl(lib.dom.d.ts, --, --), Decl(assignmentTargets.ts, 4, 16))
62+
>meta : Symbol(ImportMetaExpression.meta)
6063

6164
export let y = import.metal;
6265
>y : Symbol(y, Decl(moduleLookingFile01.ts, 1, 10))
@@ -68,6 +71,7 @@ export let z = import.import.import.malkovich;
6871
let globalA = import.meta;
6972
>globalA : Symbol(globalA, Decl(scriptLookingFile01.ts, 0, 3))
7073
>import.meta : Symbol(ImportMeta, Decl(lib.es5.d.ts, --, --), Decl(lib.dom.d.ts, --, --), Decl(assignmentTargets.ts, 4, 16))
74+
>meta : Symbol(ImportMetaExpression.meta)
7175

7276
let globalB = import.metal;
7377
>globalB : Symbol(globalB, Decl(scriptLookingFile01.ts, 1, 3))
@@ -80,11 +84,15 @@ export const foo: ImportMeta = import.meta.blah = import.meta.blue = import.meta
8084
>foo : Symbol(foo, Decl(assignmentTargets.ts, 0, 12))
8185
>ImportMeta : Symbol(ImportMeta, Decl(lib.es5.d.ts, --, --), Decl(lib.dom.d.ts, --, --), Decl(assignmentTargets.ts, 4, 16))
8286
>import.meta : Symbol(ImportMeta, Decl(lib.es5.d.ts, --, --), Decl(lib.dom.d.ts, --, --), Decl(assignmentTargets.ts, 4, 16))
87+
>meta : Symbol(ImportMetaExpression.meta)
8388
>import.meta : Symbol(ImportMeta, Decl(lib.es5.d.ts, --, --), Decl(lib.dom.d.ts, --, --), Decl(assignmentTargets.ts, 4, 16))
89+
>meta : Symbol(ImportMetaExpression.meta)
8490
>import.meta : Symbol(ImportMeta, Decl(lib.es5.d.ts, --, --), Decl(lib.dom.d.ts, --, --), Decl(assignmentTargets.ts, 4, 16))
91+
>meta : Symbol(ImportMetaExpression.meta)
8592

8693
import.meta = foo;
8794
>import.meta : Symbol(ImportMeta, Decl(lib.es5.d.ts, --, --), Decl(lib.dom.d.ts, --, --), Decl(assignmentTargets.ts, 4, 16))
95+
>meta : Symbol(ImportMetaExpression.meta)
8896
>foo : Symbol(foo, Decl(assignmentTargets.ts, 0, 12))
8997

9098
// @Filename augmentations.ts
@@ -108,5 +116,6 @@ const { a, b, c } = import.meta.wellKnownProperty;
108116
>c : Symbol(c, Decl(assignmentTargets.ts, 10, 13))
109117
>import.meta.wellKnownProperty : Symbol(ImportMeta.wellKnownProperty, Decl(assignmentTargets.ts, 5, 24))
110118
>import.meta : Symbol(ImportMeta, Decl(lib.es5.d.ts, --, --), Decl(lib.dom.d.ts, --, --), Decl(assignmentTargets.ts, 4, 16))
119+
>meta : Symbol(ImportMetaExpression.meta)
111120
>wellKnownProperty : Symbol(ImportMeta.wellKnownProperty, Decl(assignmentTargets.ts, 5, 24))
112121

tests/baselines/reference/importMeta(module=esnext,target=es5).symbols

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
>URL : Symbol(URL, Decl(lib.dom.d.ts, --, --), Decl(lib.dom.d.ts, --, --))
99
>import.meta.url : Symbol(ImportMeta.url, Decl(lib.dom.d.ts, --, --))
1010
>import.meta : Symbol(ImportMeta, Decl(lib.es5.d.ts, --, --), Decl(lib.dom.d.ts, --, --), Decl(assignmentTargets.ts, 4, 16))
11+
>meta : Symbol(ImportMetaExpression.meta)
1112
>url : Symbol(ImportMeta.url, Decl(lib.dom.d.ts, --, --))
1213
>toString : Symbol(URL.toString, Decl(lib.dom.d.ts, --, --))
1314

@@ -20,6 +21,7 @@
2021
const size = import.meta.scriptElement.dataset.size || 300;
2122
>size : Symbol(size, Decl(example.ts, 5, 7))
2223
>import.meta : Symbol(ImportMeta, Decl(lib.es5.d.ts, --, --), Decl(lib.dom.d.ts, --, --), Decl(assignmentTargets.ts, 4, 16))
24+
>meta : Symbol(ImportMetaExpression.meta)
2325

2426
const image = new Image();
2527
>image : Symbol(image, Decl(example.ts, 7, 7))
@@ -57,6 +59,7 @@
5759
export let x = import.meta;
5860
>x : Symbol(x, Decl(moduleLookingFile01.ts, 0, 10))
5961
>import.meta : Symbol(ImportMeta, Decl(lib.es5.d.ts, --, --), Decl(lib.dom.d.ts, --, --), Decl(assignmentTargets.ts, 4, 16))
62+
>meta : Symbol(ImportMetaExpression.meta)
6063

6164
export let y = import.metal;
6265
>y : Symbol(y, Decl(moduleLookingFile01.ts, 1, 10))
@@ -68,6 +71,7 @@ export let z = import.import.import.malkovich;
6871
let globalA = import.meta;
6972
>globalA : Symbol(globalA, Decl(scriptLookingFile01.ts, 0, 3))
7073
>import.meta : Symbol(ImportMeta, Decl(lib.es5.d.ts, --, --), Decl(lib.dom.d.ts, --, --), Decl(assignmentTargets.ts, 4, 16))
74+
>meta : Symbol(ImportMetaExpression.meta)
7175

7276
let globalB = import.metal;
7377
>globalB : Symbol(globalB, Decl(scriptLookingFile01.ts, 1, 3))
@@ -80,11 +84,15 @@ export const foo: ImportMeta = import.meta.blah = import.meta.blue = import.meta
8084
>foo : Symbol(foo, Decl(assignmentTargets.ts, 0, 12))
8185
>ImportMeta : Symbol(ImportMeta, Decl(lib.es5.d.ts, --, --), Decl(lib.dom.d.ts, --, --), Decl(assignmentTargets.ts, 4, 16))
8286
>import.meta : Symbol(ImportMeta, Decl(lib.es5.d.ts, --, --), Decl(lib.dom.d.ts, --, --), Decl(assignmentTargets.ts, 4, 16))
87+
>meta : Symbol(ImportMetaExpression.meta)
8388
>import.meta : Symbol(ImportMeta, Decl(lib.es5.d.ts, --, --), Decl(lib.dom.d.ts, --, --), Decl(assignmentTargets.ts, 4, 16))
89+
>meta : Symbol(ImportMetaExpression.meta)
8490
>import.meta : Symbol(ImportMeta, Decl(lib.es5.d.ts, --, --), Decl(lib.dom.d.ts, --, --), Decl(assignmentTargets.ts, 4, 16))
91+
>meta : Symbol(ImportMetaExpression.meta)
8592

8693
import.meta = foo;
8794
>import.meta : Symbol(ImportMeta, Decl(lib.es5.d.ts, --, --), Decl(lib.dom.d.ts, --, --), Decl(assignmentTargets.ts, 4, 16))
95+
>meta : Symbol(ImportMetaExpression.meta)
8896
>foo : Symbol(foo, Decl(assignmentTargets.ts, 0, 12))
8997

9098
// @Filename augmentations.ts
@@ -108,5 +116,6 @@ const { a, b, c } = import.meta.wellKnownProperty;
108116
>c : Symbol(c, Decl(assignmentTargets.ts, 10, 13))
109117
>import.meta.wellKnownProperty : Symbol(ImportMeta.wellKnownProperty, Decl(assignmentTargets.ts, 5, 24))
110118
>import.meta : Symbol(ImportMeta, Decl(lib.es5.d.ts, --, --), Decl(lib.dom.d.ts, --, --), Decl(assignmentTargets.ts, 4, 16))
119+
>meta : Symbol(ImportMetaExpression.meta)
111120
>wellKnownProperty : Symbol(ImportMeta.wellKnownProperty, Decl(assignmentTargets.ts, 5, 24))
112121

0 commit comments

Comments
 (0)