From 1d8316cb3a372eacad89e133a4ed23d667c08f9b Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Andr=C3=A9=20Bargull?= <andre.bargull@gmail.com>
Date: Wed, 30 Jan 2019 06:44:10 -0800
Subject: [PATCH] Remove invalid private name templates

Inner classes have access to outer private names.

Fixes #2039
---
 .../default/cls-decl-inner-method.template    | 44 -------------------
 .../default/cls-expr-inner-method.template    | 44 -------------------
 2 files changed, 88 deletions(-)
 delete mode 100644 src/invalid-private-names/default/cls-decl-inner-method.template
 delete mode 100644 src/invalid-private-names/default/cls-expr-inner-method.template

diff --git a/src/invalid-private-names/default/cls-decl-inner-method.template b/src/invalid-private-names/default/cls-decl-inner-method.template
deleted file mode 100644
index 285973029e..0000000000
--- a/src/invalid-private-names/default/cls-decl-inner-method.template
+++ /dev/null
@@ -1,44 +0,0 @@
-// Copyright (C) 2018 Leo Balter. All rights reserved.
-// This code is governed by the BSD license found in the LICENSE file.
-
-/*---
-path: language/statements/class/elements/syntax/early-errors/invalid-names/method-inner-
-name: >
-  Invalid private names should throw a SyntaxError,
-  method in inner class declaration
-features: [class, class-fields-private]
-esid: sec-static-semantics-early-errors
-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
-
-  ClassBody : ClassElementList
-  1. Let newNames be the concatenation of names with PrivateBoundNames of ClassBody.
-  2. Return AllPrivateNamesValid of ClassElementList with the argument newNames.
-
-  For all other grammatical productions, recurse on subexpressions/substatements,
-  passing in the names of the caller. If all pieces return true, then return true.
-  If any returns false, return false.
-negative:
-  phase: parse
-  type: SyntaxError
----*/
-
-$DONOTEVALUATE();
-
-class C {
-  #x = 42;
-  m() {
-    class Inner {
-      z() { /*{ body }*/ }
-    }
-  }
-}
diff --git a/src/invalid-private-names/default/cls-expr-inner-method.template b/src/invalid-private-names/default/cls-expr-inner-method.template
deleted file mode 100644
index afe21203a0..0000000000
--- a/src/invalid-private-names/default/cls-expr-inner-method.template
+++ /dev/null
@@ -1,44 +0,0 @@
-// Copyright (C) 2018 Leo Balter. All rights reserved.
-// This code is governed by the BSD license found in the LICENSE file.
-
-/*---
-path: language/expressions/class/elements/syntax/early-errors/invalid-names/method-inner-
-name: >
-  Invalid private names should throw a SyntaxError,
-  method in inner class expression
-features: [class, class-fields-private]
-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
-
-  ClassBody : ClassElementList
-  1. Let newNames be the concatenation of names with PrivateBoundNames of ClassBody.
-  2. Return AllPrivateNamesValid of ClassElementList with the argument newNames.
-
-  For all other grammatical productions, recurse on subexpressions/substatements,
-  passing in the names of the caller. If all pieces return true, then return true.
-  If any returns false, return false.
-esid: sec-static-semantics-early-errors
-negative:
-  phase: parse
-  type: SyntaxError
----*/
-
-$DONOTEVALUATE();
-
-var C = class {
-  #x = 42;
-  m() {
-    class Inner {
-      z() { /*{ body }*/ }
-    }
-  }
-};
-- 
GitLab