test262/test/language/statements/class/err-method-delete-err-delet...

40 lines
1.0 KiB
JavaScript

// This file was procedurally generated from the following sources:
// - src/class-elements/err-delete-call-expression-privatename.case
// - src/class-elements/delete-error/cls-decl-method-delete.template
/*---
description: It's a SyntaxError if delete operator is applied to MemberExpression.PrivateName (in method)
esid: sec-class-definitions-static-semantics-early-errors
features: [class, class-fields-private, class-fields-public]
flags: [generated, onlyStrict]
negative:
phase: parse
type: SyntaxError
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 .
---*/
throw "Test262: This statement should not be evaluated.";
class C {
#x;
x() {
var g = this.f;
delete g().#x;
}
f() {
return this;
}
}