diff --git a/test/language/expressions/class/syntax/early-errors/super-private-access-invalid.js b/test/language/expressions/class/syntax/early-errors/super-private-access-invalid.js new file mode 100644 index 0000000000000000000000000000000000000000..86ebd3a25d4390ff0924ffd0f51c1c967ad8959f --- /dev/null +++ b/test/language/expressions/class/syntax/early-errors/super-private-access-invalid.js @@ -0,0 +1,34 @@ +// This file was procedurally generated from the following sources: +// - src/class-elements/super-private-access-invalid.case +// - src/class-elements/syntax/invalid/cls-expr-elements-invalid-syntax.template +/*--- +description: It is syntax error if PrivateName IdentifierName is accessed on SuperProperty (class expression) +esid: prod-ClassElement +features: [class-methods-private, class] +flags: [generated] +negative: + phase: parse + type: SyntaxError +info: | + ClassElementName : + PropertyName + PrivateName + + PrivateName :: + # IdentifierName + + SuperProperty: + super[Expression] + super.IdentifierName + +---*/ + + +throw "Test262: This statement should not be evaluated."; + +var C = class extends B +{ + method() { + super.#x(); + } +}; diff --git a/test/language/statements/class/syntax/early-errors/super-private-access-invalid.js b/test/language/statements/class/syntax/early-errors/super-private-access-invalid.js new file mode 100644 index 0000000000000000000000000000000000000000..de865fcab1802dc300ba08eeeedce36f92f2746b --- /dev/null +++ b/test/language/statements/class/syntax/early-errors/super-private-access-invalid.js @@ -0,0 +1,34 @@ +// This file was procedurally generated from the following sources: +// - src/class-elements/super-private-access-invalid.case +// - src/class-elements/syntax/invalid/cls-decl-elements-invalid-syntax.template +/*--- +description: It is syntax error if PrivateName IdentifierName is accessed on SuperProperty (class declaration) +esid: prod-ClassElement +features: [class-methods-private, class] +flags: [generated] +negative: + phase: parse + type: SyntaxError +info: | + ClassElementName : + PropertyName + PrivateName + + PrivateName :: + # IdentifierName + + SuperProperty: + super[Expression] + super.IdentifierName + +---*/ + + +throw "Test262: This statement should not be evaluated."; + +class C extends B +{ + method() { + super.#x(); + } +}