summaryrefslogtreecommitdiffstats
path: root/js/src/tests/test262/language/expressions/assignment/dstr/ident-name-prop-name-literal-do-escaped.js
diff options
context:
space:
mode:
Diffstat (limited to 'js/src/tests/test262/language/expressions/assignment/dstr/ident-name-prop-name-literal-do-escaped.js')
-rw-r--r--js/src/tests/test262/language/expressions/assignment/dstr/ident-name-prop-name-literal-do-escaped.js44
1 files changed, 44 insertions, 0 deletions
diff --git a/js/src/tests/test262/language/expressions/assignment/dstr/ident-name-prop-name-literal-do-escaped.js b/js/src/tests/test262/language/expressions/assignment/dstr/ident-name-prop-name-literal-do-escaped.js
new file mode 100644
index 0000000000..31624d5e1d
--- /dev/null
+++ b/js/src/tests/test262/language/expressions/assignment/dstr/ident-name-prop-name-literal-do-escaped.js
@@ -0,0 +1,44 @@
+// This file was procedurally generated from the following sources:
+// - src/identifier-names/do-escaped.case
+// - src/identifier-names/default/obj-assignment-prop-name.template
+/*---
+description: do is a valid identifier name, using escape (PropertyName of an ObjectAssignmentPattern)
+esid: prod-AssignmentPattern
+features: [destructuring-assignment]
+flags: [generated, noStrict]
+info: |
+ AssignmentPattern:
+ ObjectAssignmentPattern
+
+ ObjectAssignmentPattern:
+ { AssignmentPropertyList }
+
+ AssignmentPropertyList:
+ AssignmentProperty
+ AssignmentPropertyList , AssignmentProperty
+
+ AssignmentProperty:
+ IdentifierReference Initializer_opt
+ PropertyName : AssignmentElement
+
+ PropertyName:
+ LiteralPropertyName
+ ...
+
+ LiteralPropertyName:
+ IdentifierName
+ ...
+
+ Reserved Words
+
+ A reserved word is an IdentifierName that cannot be used as an Identifier.
+
+---*/
+
+
+var y = { \u0064o: x } = { do: 42 };
+
+assert.sameValue(x, 42, 'property exists');
+assert.sameValue(y['do'], 42, 'assignment successful');
+
+reportCompare(0, 0);