summaryrefslogtreecommitdiffstats
path: root/js/src/tests/test262/language/expressions/assignment/dstr/array-elem-put-let.js
diff options
context:
space:
mode:
Diffstat (limited to 'js/src/tests/test262/language/expressions/assignment/dstr/array-elem-put-let.js')
-rw-r--r--js/src/tests/test262/language/expressions/assignment/dstr/array-elem-put-let.js25
1 files changed, 25 insertions, 0 deletions
diff --git a/js/src/tests/test262/language/expressions/assignment/dstr/array-elem-put-let.js b/js/src/tests/test262/language/expressions/assignment/dstr/array-elem-put-let.js
new file mode 100644
index 0000000000..11d55da24e
--- /dev/null
+++ b/js/src/tests/test262/language/expressions/assignment/dstr/array-elem-put-let.js
@@ -0,0 +1,25 @@
+// This file was procedurally generated from the following sources:
+// - src/dstr-assignment/array-elem-put-let.case
+// - src/dstr-assignment/error/assignment-expr.template
+/*---
+description: The assignment target should obey `let` semantics. (AssignmentExpression)
+esid: sec-variable-statement-runtime-semantics-evaluation
+features: [let, destructuring-binding]
+flags: [generated]
+info: |
+ VariableDeclaration : BindingPattern Initializer
+
+ 1. Let rhs be the result of evaluating Initializer.
+ 2. Let rval be GetValue(rhs).
+ 3. ReturnIfAbrupt(rval).
+ 4. Return the result of performing BindingInitialization for
+ BindingPattern passing rval and undefined as arguments.
+---*/
+
+assert.throws(ReferenceError, function() {
+ 0, [ x ] = [];
+});
+
+let x;
+
+reportCompare(0, 0);