Skip to content

Commit d50c18d

Browse files
JLHwungnicolo-ribaudo
authored andcommitted
fix: usePrivateName usage
1 parent de5c7b1 commit d50c18d

3 files changed

Lines changed: 14 additions & 8 deletions

File tree

  • packages/babel-parser

packages/babel-parser/src/parser/lval.js

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -148,7 +148,10 @@ export default class LValParser extends NodeUtils {
148148
case "ObjectProperty": {
149149
const { key, value } = node;
150150
if (this.isPrivateName(key)) {
151-
this.classScope.usePrivateName(this.getPrivateNameSV(key), key.start);
151+
this.classScope.usePrivateName(
152+
this.getPrivateNameSV(key),
153+
key.loc.start,
154+
);
152155
}
153156
this.toAssignable(value, isLHS);
154157
break;
@@ -436,7 +439,7 @@ export default class LValParser extends NodeUtils {
436439
return this.parseBindingRestProperty(prop);
437440
} else if (type === tt.privateName) {
438441
this.expectPlugin("destructuringPrivate", startLoc);
439-
this.classScope.usePrivateName(this.state.value, startPos);
442+
this.classScope.usePrivateName(this.state.value, startLoc);
440443
prop.key = this.parsePrivateName();
441444
} else {
442445
this.parsePropertyName(prop);

packages/babel-parser/src/plugins/estree.js

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -332,7 +332,10 @@ export default (superClass: Class<Parser>): Class<Parser> =>
332332
if (node != null && this.isObjectProperty(node)) {
333333
const { key, value } = node;
334334
if (this.isPrivateName(key)) {
335-
this.classScope.usePrivateName(this.getPrivateNameSV(key), key.start);
335+
this.classScope.usePrivateName(
336+
this.getPrivateNameSV(key),
337+
key.loc.start,
338+
);
336339
}
337340
this.toAssignable(value, isLHS);
338341
return node;

packages/babel-parser/test/fixtures/experimental/destructuring-private/invalid-undefined-private-name/output.json

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,11 @@
22
"type": "File",
33
"start":0,"end":140,"loc":{"start":{"line":1,"column":0},"end":{"line":9,"column":1}},
44
"errors": [
5-
"SyntaxError: Private name #a is not defined. (undefined:undefined)",
6-
"SyntaxError: Private name #b is not defined. (undefined:undefined)",
7-
"SyntaxError: Private name #c is not defined. (undefined:undefined)",
8-
"SyntaxError: Private name #d is not defined. (undefined:undefined)",
9-
"SyntaxError: Private name #e is not defined. (undefined:undefined)"
5+
"SyntaxError: Private name #a is not defined. (3:6)",
6+
"SyntaxError: Private name #b is not defined. (4:12)",
7+
"SyntaxError: Private name #c is not defined. (5:9)",
8+
"SyntaxError: Private name #d is not defined. (6:10)",
9+
"SyntaxError: Private name #e is not defined. (7:7)"
1010
],
1111
"program": {
1212
"type": "Program",

0 commit comments

Comments
 (0)