mirror of
https://github.com/tc39/test262.git
synced 2025-05-21 15:20:29 +02:00
Also remove the onlyStrict restriction as the class body is always on strict mode and the failures are still valid
39 lines
1.2 KiB
Plaintext
39 lines
1.2 KiB
Plaintext
// Copyright (C) 2017 Valerie Young. All rights reserved.
|
|
// This code is governed by the BSD license found in the LICENSE file.
|
|
|
|
/*---
|
|
esid: sec-class-definitions-static-semantics-early-errors
|
|
path: language/expressions/class/syntax/early-errors/delete/field-delete-covered-
|
|
name: in field, covered
|
|
info: |
|
|
Static Semantics: Early Errors
|
|
|
|
UnaryExpression : delete UnaryExpression
|
|
|
|
It is a Syntax Error if the UnaryExpression is contained in strict mode
|
|
code and the derived UnaryExpression is
|
|
PrimaryExpression : IdentifierReference ,
|
|
MemberExpression : MemberExpression.PrivateName , or
|
|
CallExpression : CallExpression.PrivateName .
|
|
|
|
It is a Syntax Error if the derived UnaryExpression is
|
|
PrimaryExpression : CoverParenthesizedExpressionAndArrowParameterList and
|
|
CoverParenthesizedExpressionAndArrowParameterList ultimately derives a
|
|
phrase that, if used in place of UnaryExpression, would produce a
|
|
Syntax Error according to these rules. This rule is recursively applied.
|
|
features: [class, class-fields-private, class-fields-public]
|
|
negative:
|
|
type: SyntaxError
|
|
phase: parse
|
|
---*/
|
|
|
|
$DONOTEVALUATE();
|
|
|
|
var C = class {
|
|
#x;
|
|
/*{ infieldsetup }*/
|
|
x = delete (/*{ expression }*/);
|
|
|
|
/*{ functiondeclaration }*/
|
|
}
|