test262/test/language/statements/class/syntax/early-errors/invalid-names/field-init-fn-member-expression-this.js
2018-12-20 12:49:50 -05:00

43 lines
1.3 KiB
JavaScript

// This file was procedurally generated from the following sources:
// - src/invalid-private-names/member-expression-this.case
// - src/invalid-private-names/default/cls-decl-field-initializer-fn.template
/*---
description: this reference in member expression (Invalid private names should throw a SyntaxError, function in class field initializer in class declaration)
esid: sec-static-semantics-early-errors
features: [class-fields-private, class, class-fields-public]
flags: [generated]
negative:
phase: parse
type: SyntaxError
info: |
ScriptBody:StatementList
It is a Syntax Error if AllPrivateNamesValid of StatementList with an empty List
as an argument is false unless the source code is eval code that is being
processed by a direct eval.
ModuleBody:ModuleItemList
It is a Syntax Error if AllPrivateNamesValid of ModuleItemList with an empty List
as an argument is false.
Static Semantics: AllPrivateNamesValid
MemberExpression : MemberExpression . PrivateName
1. If StringValue of PrivateName is in names, return true.
2. Return false.
CallExpression : CallExpression . PrivateName
1. If StringValue of PrivateName is in names, return true.
2. Return false.
---*/
$DONOTEVALUATE();
class C {
f = function() { this.#x }
}