summaryrefslogtreecommitdiffstats
path: root/js/src/tests/test262/language/statements/class/elements/syntax/early-errors/grammar-private-field-on-object-destructuring.js
diff options
context:
space:
mode:
Diffstat (limited to 'js/src/tests/test262/language/statements/class/elements/syntax/early-errors/grammar-private-field-on-object-destructuring.js')
-rw-r--r--js/src/tests/test262/language/statements/class/elements/syntax/early-errors/grammar-private-field-on-object-destructuring.js33
1 files changed, 33 insertions, 0 deletions
diff --git a/js/src/tests/test262/language/statements/class/elements/syntax/early-errors/grammar-private-field-on-object-destructuring.js b/js/src/tests/test262/language/statements/class/elements/syntax/early-errors/grammar-private-field-on-object-destructuring.js
new file mode 100644
index 0000000000..8254217109
--- /dev/null
+++ b/js/src/tests/test262/language/statements/class/elements/syntax/early-errors/grammar-private-field-on-object-destructuring.js
@@ -0,0 +1,33 @@
+// |reftest| error:SyntaxError
+// This file was procedurally generated from the following sources:
+// - src/class-elements/grammar-private-field-on-object-destructuring.case
+// - src/class-elements/syntax/invalid/cls-decl-elements-invalid-syntax.template
+/*---
+description: Acessing private field from object destructuring pattern is not a valid syntax (class declaration)
+esid: prod-ClassElement
+features: [class-fields-private, destructuring-binding, class]
+flags: [generated]
+negative:
+ phase: parse
+ type: SyntaxError
+info: |
+ Updated Productions
+
+ ObjectAssignmentPattern[Yield, Await]:
+ {}
+ {AssignmentRestProperty[?Yield, ?Await]}
+ {AssignmentPropertyList[?Yield, ?Await]}
+ {AssignmentPropertyList[?Yield, ?Await],AssignmentRestProperty[?Yield, ?Await]opt}
+
+---*/
+
+
+$DONOTEVALUATE();
+
+class C {
+ #x = 1;
+
+ destructureX() {
+ const { #x: x } = this;
+ }
+}