mirror of https://github.com/tc39/test262.git
28 lines
671 B
JavaScript
28 lines
671 B
JavaScript
|
// Copyright (C) 2017 Valerie Young. All rights reserved.
|
||
|
// This code is governed by the BSD license found in the LICENSE file.
|
||
|
|
||
|
/*---
|
||
|
description: ASI test in field declarations -- field with PropertyName "in" interpreted as index
|
||
|
esid: sec-automatic-semicolon-insertion
|
||
|
features: [class-fields]
|
||
|
---*/
|
||
|
|
||
|
var x = 1
|
||
|
var y = 2
|
||
|
var z = [42]
|
||
|
|
||
|
class C {
|
||
|
a = x
|
||
|
in
|
||
|
z
|
||
|
b = y
|
||
|
in
|
||
|
z
|
||
|
}
|
||
|
|
||
|
var c = new C();
|
||
|
assert.sameValue(c.a, true, 'a = x in z')
|
||
|
assert.sameValue(c.a, false, 'a = y in z')
|
||
|
assert.sameValue(Object.hasOwnProperty.call(c, "in"), false, "'in' interpreted as index");
|
||
|
assert.sameValue(Object.hasOwnProperty.call(c, "z"), false, "'z' interpreted as variable");
|