mirror of https://github.com/tc39/test262.git
32 lines
913 B
JavaScript
32 lines
913 B
JavaScript
|
// Copyright (C) 2014 the V8 project authors. All rights reserved.
|
||
|
// This code is governed by the BSD license found in the LICENSE file.
|
||
|
/*---
|
||
|
es6id: 14.5
|
||
|
description: >
|
||
|
class name binding const
|
||
|
---*/
|
||
|
assert.throws(TypeError, function() {
|
||
|
class C { constructor() { C = 42; } }; new C();
|
||
|
});
|
||
|
assert.throws(TypeError, function() {
|
||
|
new (class C { constructor() { C = 42; } })
|
||
|
});
|
||
|
assert.throws(TypeError, function() {
|
||
|
class C { m() { C = 42; } }; new C().m()
|
||
|
});
|
||
|
assert.throws(TypeError, function() {
|
||
|
new (class C { m() { C = 42; } }).m()
|
||
|
});
|
||
|
assert.throws(TypeError, function() {
|
||
|
class C { get x() { C = 42; } }; new C().x
|
||
|
});
|
||
|
assert.throws(TypeError, function() {
|
||
|
(new (class C { get x() { C = 42; } })).x
|
||
|
});
|
||
|
assert.throws(TypeError, function() {
|
||
|
class C { set x(_) { C = 42; } }; new C().x = 15;
|
||
|
});
|
||
|
assert.throws(TypeError, function() {
|
||
|
(new (class C { set x(_) { C = 42; } })).x = 15;
|
||
|
});
|