test262/test/language/statements/class/static-classelementname-abr...

34 lines
1.1 KiB
JavaScript
Raw Normal View History

// Copyright (C) 2017 Valerie Young. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.
/*---
description: Class definition should error if evaluation of static ClassElementName errors
esid: runtime-semantics-class-definition-evaluation
info: |
Runtime Semantics: ClassDefinitionEvaluation
...
27. For each ClassElement e in order from elements
a. If IsStatic of e is false, then
2018-07-30 23:15:03 +02:00
i. Let fields be the result of performing ClassElementEvaluation
for e with arguments proto and false.
b. Else,
2018-07-30 23:15:03 +02:00
i. Let fields be the result of performing ClassElementEvaluation
for e with arguments F and false.
c. If fields is an abrupt completion, then
2018-07-30 23:15:03 +02:00
i. Set the running execution context's LexicalEnvironment to lex.
ii. Set the running execution context's PrivateNameEnvironment to outerPrivateEnvironment.
iii. Return Completion(status).
2018-07-30 23:15:03 +02:00
features: [class-static-fields-public]
---*/
function f() {
throw new Test262Error();
}
assert.throws(Test262Error, function() {
class C {
static [f()]
}
});