summaryrefslogtreecommitdiffstats
path: root/js/src/tests/test262/language/expressions/assignment/target-cover-id.js
blob: c99d79e821e9389cb3d128a175222925282d3248 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
// Copyright 2009 the Sputnik authors.  All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.
/*---
esid: sec-assignment-operators-static-semantics-early-errors
es6id: 12.14.1
es5id: 11.1.6_A3_T5
description: Applied to a "covered" IdentifierReference
info: |
  AssignmentExpression : LeftHandSideExpression = AssignmentExpression

  - It is an early Reference Error if LeftHandSideExpression is neither an
    ObjectLiteral nor an ArrayLiteral and IsValidSimpleAssignmentTarget of
    LeftHandSideExpression is false.

  Static Semantics: IsValidSimpleAssignmentTarget

  IdentifierReference : Identifier

  1. If this IdentifierReference is contained in strict mode code and
     StringValue of Identifier is "eval" or "arguments", return false.
  2. Return true.
---*/

var x;

(x) = 1;

assert.sameValue(x, 1);

reportCompare(0, 0);