tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts(6,9): error TS2300: Duplicate identifier '#foo'. tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts(11,9): error TS2300: Duplicate identifier '#foo'. tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts(12,9): error TS2300: Duplicate identifier '#foo'. tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts(17,9): error TS2300: Duplicate identifier '#foo'. tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts(18,13): error TS2300: Duplicate identifier '#foo'. tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts(23,9): error TS2300: Duplicate identifier '#foo'. tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts(24,13): error TS2300: Duplicate identifier '#foo'. tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts(30,16): error TS2804: Duplicate identifier '#foo'. Static and instance elements cannot share the same private name. tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts(36,16): error TS2804: Duplicate identifier '#foo'. Static and instance elements cannot share the same private name. tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts(42,20): error TS2804: Duplicate identifier '#foo'. Static and instance elements cannot share the same private name. tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts(48,20): error TS2804: Duplicate identifier '#foo'. Static and instance elements cannot share the same private name. tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts(56,9): error TS2300: Duplicate identifier '#foo'. tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts(56,9): error TS2717: Subsequent property declarations must have the same type. Property '#foo' must be of type '() => void', but here has type 'string'. tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts(61,9): error TS2393: Duplicate function implementation. tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts(62,9): error TS2393: Duplicate function implementation. tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts(67,9): error TS2300: Duplicate identifier '#foo'. tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts(68,13): error TS2300: Duplicate identifier '#foo'. tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts(73,9): error TS2300: Duplicate identifier '#foo'. tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts(74,13): error TS2300: Duplicate identifier '#foo'. tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts(80,16): error TS2804: Duplicate identifier '#foo'. Static and instance elements cannot share the same private name. tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts(86,16): error TS2804: Duplicate identifier '#foo'. Static and instance elements cannot share the same private name. tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts(92,20): error TS2804: Duplicate identifier '#foo'. Static and instance elements cannot share the same private name. tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts(98,20): error TS2804: Duplicate identifier '#foo'. Static and instance elements cannot share the same private name. tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts(107,9): error TS2300: Duplicate identifier '#foo'. tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts(112,13): error TS2300: Duplicate identifier '#foo'. tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts(113,9): error TS2300: Duplicate identifier '#foo'. tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts(118,13): error TS2300: Duplicate identifier '#foo'. tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts(119,13): error TS2300: Duplicate identifier '#foo'. tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts(131,16): error TS2804: Duplicate identifier '#foo'. Static and instance elements cannot share the same private name. tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts(137,16): error TS2804: Duplicate identifier '#foo'. Static and instance elements cannot share the same private name. tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts(143,20): error TS2804: Duplicate identifier '#foo'. Static and instance elements cannot share the same private name. tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts(149,20): error TS2804: Duplicate identifier '#foo'. Static and instance elements cannot share the same private name. tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts(157,9): error TS2300: Duplicate identifier '#foo'. tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts(162,13): error TS2300: Duplicate identifier '#foo'. tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts(163,9): error TS2300: Duplicate identifier '#foo'. tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts(174,13): error TS2300: Duplicate identifier '#foo'. tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts(175,13): error TS2300: Duplicate identifier '#foo'. tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts(181,16): error TS2804: Duplicate identifier '#foo'. Static and instance elements cannot share the same private name. tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts(187,16): error TS2804: Duplicate identifier '#foo'. Static and instance elements cannot share the same private name. tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts(193,20): error TS2804: Duplicate identifier '#foo'. Static and instance elements cannot share the same private name. tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts(199,20): error TS2804: Duplicate identifier '#foo'. Static and instance elements cannot share the same private name. tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts(207,9): error TS2804: Duplicate identifier '#foo'. Static and instance elements cannot share the same private name. tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts(213,9): error TS2804: Duplicate identifier '#foo'. Static and instance elements cannot share the same private name. tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts(219,13): error TS2804: Duplicate identifier '#foo'. Static and instance elements cannot share the same private name. tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts(225,13): error TS2804: Duplicate identifier '#foo'. Static and instance elements cannot share the same private name. tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts(231,16): error TS2300: Duplicate identifier '#foo'. tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts(236,16): error TS2300: Duplicate identifier '#foo'. tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts(237,16): error TS2300: Duplicate identifier '#foo'. tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts(242,16): error TS2300: Duplicate identifier '#foo'. tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts(243,20): error TS2300: Duplicate identifier '#foo'. tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts(248,16): error TS2300: Duplicate identifier '#foo'. tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts(249,20): error TS2300: Duplicate identifier '#foo'. tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts(257,9): error TS2804: Duplicate identifier '#foo'. Static and instance elements cannot share the same private name. tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts(263,9): error TS2804: Duplicate identifier '#foo'. Static and instance elements cannot share the same private name. tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts(269,13): error TS2804: Duplicate identifier '#foo'. Static and instance elements cannot share the same private name. tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts(275,13): error TS2804: Duplicate identifier '#foo'. Static and instance elements cannot share the same private name. tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts(281,16): error TS2300: Duplicate identifier '#foo'. tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts(281,16): error TS2717: Subsequent property declarations must have the same type. Property '#foo' must be of type '() => void', but here has type 'string'. tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts(286,16): error TS2393: Duplicate function implementation. tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts(287,16): error TS2393: Duplicate function implementation. tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts(292,16): error TS2300: Duplicate identifier '#foo'. tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts(293,20): error TS2300: Duplicate identifier '#foo'. tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts(298,16): error TS2300: Duplicate identifier '#foo'. tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts(299,20): error TS2300: Duplicate identifier '#foo'. tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts(308,9): error TS2804: Duplicate identifier '#foo'. Static and instance elements cannot share the same private name. tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts(314,9): error TS2804: Duplicate identifier '#foo'. Static and instance elements cannot share the same private name. tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts(320,13): error TS2804: Duplicate identifier '#foo'. Static and instance elements cannot share the same private name. tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts(326,13): error TS2804: Duplicate identifier '#foo'. Static and instance elements cannot share the same private name. tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts(331,20): error TS2300: Duplicate identifier '#foo'. tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts(332,16): error TS2300: Duplicate identifier '#foo'. tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts(337,20): error TS2300: Duplicate identifier '#foo'. tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts(338,16): error TS2300: Duplicate identifier '#foo'. tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts(343,20): error TS2300: Duplicate identifier '#foo'. tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts(344,20): error TS2300: Duplicate identifier '#foo'. tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts(357,9): error TS2804: Duplicate identifier '#foo'. Static and instance elements cannot share the same private name. tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts(363,9): error TS2804: Duplicate identifier '#foo'. Static and instance elements cannot share the same private name. tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts(370,13): error TS2804: Duplicate identifier '#foo'. Static and instance elements cannot share the same private name. tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts(376,13): error TS2804: Duplicate identifier '#foo'. Static and instance elements cannot share the same private name. tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts(382,16): error TS2300: Duplicate identifier '#foo'. tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts(387,20): error TS2300: Duplicate identifier '#foo'. tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts(388,16): error TS2300: Duplicate identifier '#foo'. tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts(399,20): error TS2300: Duplicate identifier '#foo'. tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts(400,20): error TS2300: Duplicate identifier '#foo'. ==== tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts (83 errors) ==== function Field() { // Error class A_Field_Field { #foo = "foo"; #foo = "foo"; ~~~~ !!! error TS2300: Duplicate identifier '#foo'. } // Error class A_Field_Method { #foo = "foo"; ~~~~ !!! error TS2300: Duplicate identifier '#foo'. #foo() { } ~~~~ !!! error TS2300: Duplicate identifier '#foo'. } // Error class A_Field_Getter { #foo = "foo"; ~~~~ !!! error TS2300: Duplicate identifier '#foo'. get #foo() { return ""} ~~~~ !!! error TS2300: Duplicate identifier '#foo'. } // Error class A_Field_Setter { #foo = "foo"; ~~~~ !!! error TS2300: Duplicate identifier '#foo'. set #foo(value: string) { } ~~~~ !!! error TS2300: Duplicate identifier '#foo'. } // Error class A_Field_StaticField { #foo = "foo"; static #foo = "foo"; ~~~~ !!! error TS2804: Duplicate identifier '#foo'. Static and instance elements cannot share the same private name. } // Error class A_Field_StaticMethod { #foo = "foo"; static #foo() { } ~~~~ !!! error TS2804: Duplicate identifier '#foo'. Static and instance elements cannot share the same private name. } // Error class A_Field_StaticGetter { #foo = "foo"; static get #foo() { return ""} ~~~~ !!! error TS2804: Duplicate identifier '#foo'. Static and instance elements cannot share the same private name. } // Error class A_Field_StaticSetter { #foo = "foo"; static set #foo(value: string) { } ~~~~ !!! error TS2804: Duplicate identifier '#foo'. Static and instance elements cannot share the same private name. } } function Method() { // Error class A_Method_Field { #foo() { } #foo = "foo"; ~~~~ !!! error TS2300: Duplicate identifier '#foo'. ~~~~ !!! error TS2717: Subsequent property declarations must have the same type. Property '#foo' must be of type '() => void', but here has type 'string'. !!! related TS6203 tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts:55:9: '#foo' was also declared here. } // Error class A_Method_Method { #foo() { } ~~~~ !!! error TS2393: Duplicate function implementation. #foo() { } ~~~~ !!! error TS2393: Duplicate function implementation. } // Error class A_Method_Getter { #foo() { } ~~~~ !!! error TS2300: Duplicate identifier '#foo'. get #foo() { return ""} ~~~~ !!! error TS2300: Duplicate identifier '#foo'. } // Error class A_Method_Setter { #foo() { } ~~~~ !!! error TS2300: Duplicate identifier '#foo'. set #foo(value: string) { } ~~~~ !!! error TS2300: Duplicate identifier '#foo'. } // Error class A_Method_StaticField { #foo() { } static #foo = "foo"; ~~~~ !!! error TS2804: Duplicate identifier '#foo'. Static and instance elements cannot share the same private name. } // Error class A_Method_StaticMethod { #foo() { } static #foo() { } ~~~~ !!! error TS2804: Duplicate identifier '#foo'. Static and instance elements cannot share the same private name. } // Error class A_Method_StaticGetter { #foo() { } static get #foo() { return ""} ~~~~ !!! error TS2804: Duplicate identifier '#foo'. Static and instance elements cannot share the same private name. } // Error class A_Method_StaticSetter { #foo() { } static set #foo(value: string) { } ~~~~ !!! error TS2804: Duplicate identifier '#foo'. Static and instance elements cannot share the same private name. } } function Getter() { // Error class A_Getter_Field { get #foo() { return ""} #foo = "foo"; ~~~~ !!! error TS2300: Duplicate identifier '#foo'. } // Error class A_Getter_Method { get #foo() { return ""} ~~~~ !!! error TS2300: Duplicate identifier '#foo'. #foo() { } ~~~~ !!! error TS2300: Duplicate identifier '#foo'. } // Error class A_Getter_Getter { get #foo() { return ""} ~~~~ !!! error TS2300: Duplicate identifier '#foo'. get #foo() { return ""} ~~~~ !!! error TS2300: Duplicate identifier '#foo'. } //OK class A_Getter_Setter { get #foo() { return ""} set #foo(value: string) { } } // Error class A_Getter_StaticField { get #foo() { return ""} static #foo() { } ~~~~ !!! error TS2804: Duplicate identifier '#foo'. Static and instance elements cannot share the same private name. } // Error class A_Getter_StaticMethod { get #foo() { return ""} static #foo() { } ~~~~ !!! error TS2804: Duplicate identifier '#foo'. Static and instance elements cannot share the same private name. } // Error class A_Getter_StaticGetter { get #foo() { return ""} static get #foo() { return ""} ~~~~ !!! error TS2804: Duplicate identifier '#foo'. Static and instance elements cannot share the same private name. } // Error class A_Getter_StaticSetter { get #foo() { return ""} static set #foo(value: string) { } ~~~~ !!! error TS2804: Duplicate identifier '#foo'. Static and instance elements cannot share the same private name. } } function Setter() { // Error class A_Setter_Field { set #foo(value: string) { } #foo = "foo"; ~~~~ !!! error TS2300: Duplicate identifier '#foo'. } // Error class A_Setter_Method { set #foo(value: string) { } ~~~~ !!! error TS2300: Duplicate identifier '#foo'. #foo() { } ~~~~ !!! error TS2300: Duplicate identifier '#foo'. } // OK class A_Setter_Getter { set #foo(value: string) { } get #foo() { return ""} } // Error class A_Setter_Setter { set #foo(value: string) { } ~~~~ !!! error TS2300: Duplicate identifier '#foo'. set #foo(value: string) { } ~~~~ !!! error TS2300: Duplicate identifier '#foo'. } // Error class A_Setter_StaticField { set #foo(value: string) { } static #foo = "foo"; ~~~~ !!! error TS2804: Duplicate identifier '#foo'. Static and instance elements cannot share the same private name. } // Error class A_Setter_StaticMethod { set #foo(value: string) { } static #foo() { } ~~~~ !!! error TS2804: Duplicate identifier '#foo'. Static and instance elements cannot share the same private name. } // Error class A_Setter_StaticGetter { set #foo(value: string) { } static get #foo() { return ""} ~~~~ !!! error TS2804: Duplicate identifier '#foo'. Static and instance elements cannot share the same private name. } // Error class A_Setter_StaticSetter { set #foo(value: string) { } static set #foo(value: string) { } ~~~~ !!! error TS2804: Duplicate identifier '#foo'. Static and instance elements cannot share the same private name. } } function StaticField() { // Error class A_StaticField_Field { static #foo = "foo"; #foo = "foo"; ~~~~ !!! error TS2804: Duplicate identifier '#foo'. Static and instance elements cannot share the same private name. } // Error class A_StaticField_Method { static #foo = "foo"; #foo() { } ~~~~ !!! error TS2804: Duplicate identifier '#foo'. Static and instance elements cannot share the same private name. } // Error class A_StaticField_Getter { static #foo = "foo"; get #foo() { return ""} ~~~~ !!! error TS2804: Duplicate identifier '#foo'. Static and instance elements cannot share the same private name. } // Error class A_StaticField_Setter { static #foo = "foo"; set #foo(value: string) { } ~~~~ !!! error TS2804: Duplicate identifier '#foo'. Static and instance elements cannot share the same private name. } // Error class A_StaticField_StaticField { static #foo = "foo"; static #foo = "foo"; ~~~~ !!! error TS2300: Duplicate identifier '#foo'. } // Error class A_StaticField_StaticMethod { static #foo = "foo"; ~~~~ !!! error TS2300: Duplicate identifier '#foo'. static #foo() { } ~~~~ !!! error TS2300: Duplicate identifier '#foo'. } // Error class A_StaticField_StaticGetter { static #foo = "foo"; ~~~~ !!! error TS2300: Duplicate identifier '#foo'. static get #foo() { return ""} ~~~~ !!! error TS2300: Duplicate identifier '#foo'. } // Error class A_StaticField_StaticSetter { static #foo = "foo"; ~~~~ !!! error TS2300: Duplicate identifier '#foo'. static set #foo(value: string) { } ~~~~ !!! error TS2300: Duplicate identifier '#foo'. } } function StaticMethod() { // Error class A_StaticMethod_Field { static #foo() { } #foo = "foo"; ~~~~ !!! error TS2804: Duplicate identifier '#foo'. Static and instance elements cannot share the same private name. } // Error class A_StaticMethod_Method { static #foo() { } #foo() { } ~~~~ !!! error TS2804: Duplicate identifier '#foo'. Static and instance elements cannot share the same private name. } // Error class A_StaticMethod_Getter { static #foo() { } get #foo() { return ""} ~~~~ !!! error TS2804: Duplicate identifier '#foo'. Static and instance elements cannot share the same private name. } // Error class A_StaticMethod_Setter { static #foo() { } set #foo(value: string) { } ~~~~ !!! error TS2804: Duplicate identifier '#foo'. Static and instance elements cannot share the same private name. } // Error class A_StaticMethod_StaticField { static #foo() { } static #foo = "foo"; ~~~~ !!! error TS2300: Duplicate identifier '#foo'. ~~~~ !!! error TS2717: Subsequent property declarations must have the same type. Property '#foo' must be of type '() => void', but here has type 'string'. !!! related TS6203 tests/cases/conformance/classes/members/privateNames/privateNameDuplicateField.ts:280:16: '#foo' was also declared here. } // Error class A_StaticMethod_StaticMethod { static #foo() { } ~~~~ !!! error TS2393: Duplicate function implementation. static #foo() { } ~~~~ !!! error TS2393: Duplicate function implementation. } // Error class A_StaticMethod_StaticGetter { static #foo() { } ~~~~ !!! error TS2300: Duplicate identifier '#foo'. static get #foo() { return ""} ~~~~ !!! error TS2300: Duplicate identifier '#foo'. } // Error class A_StaticMethod_StaticSetter { static #foo() { } ~~~~ !!! error TS2300: Duplicate identifier '#foo'. static set #foo(value: string) { } ~~~~ !!! error TS2300: Duplicate identifier '#foo'. } } function StaticGetter() { // Error class A_StaticGetter_Field { static get #foo() { return ""} #foo = "foo"; ~~~~ !!! error TS2804: Duplicate identifier '#foo'. Static and instance elements cannot share the same private name. } // Error class A_StaticGetter_Method { static get #foo() { return ""} #foo() { } ~~~~ !!! error TS2804: Duplicate identifier '#foo'. Static and instance elements cannot share the same private name. } // Error class A_StaticGetter_Getter { static get #foo() { return ""} get #foo() { return ""} ~~~~ !!! error TS2804: Duplicate identifier '#foo'. Static and instance elements cannot share the same private name. } // Error class A_StaticGetter_Setter { static get #foo() { return ""} set #foo(value: string) { } ~~~~ !!! error TS2804: Duplicate identifier '#foo'. Static and instance elements cannot share the same private name. } // Error class A_StaticGetter_StaticField { static get #foo() { return ""} ~~~~ !!! error TS2300: Duplicate identifier '#foo'. static #foo() { } ~~~~ !!! error TS2300: Duplicate identifier '#foo'. } // Error class A_StaticGetter_StaticMethod { static get #foo() { return ""} ~~~~ !!! error TS2300: Duplicate identifier '#foo'. static #foo() { } ~~~~ !!! error TS2300: Duplicate identifier '#foo'. } // Error class A_StaticGetter_StaticGetter { static get #foo() { return ""} ~~~~ !!! error TS2300: Duplicate identifier '#foo'. static get #foo() { return ""} ~~~~ !!! error TS2300: Duplicate identifier '#foo'. } // OK class A_StaticGetter_StaticSetter { static get #foo() { return ""} static set #foo(value: string) { } } } function StaticSetter() { // Error class A_StaticSetter_Field { static set #foo(value: string) { } #foo = "foo"; ~~~~ !!! error TS2804: Duplicate identifier '#foo'. Static and instance elements cannot share the same private name. } // Error class A_StaticSetter_Method { static set #foo(value: string) { } #foo() { } ~~~~ !!! error TS2804: Duplicate identifier '#foo'. Static and instance elements cannot share the same private name. } // Error class A_StaticSetter_Getter { static set #foo(value: string) { } get #foo() { return ""} ~~~~ !!! error TS2804: Duplicate identifier '#foo'. Static and instance elements cannot share the same private name. } // Error class A_StaticSetter_Setter { static set #foo(value: string) { } set #foo(value: string) { } ~~~~ !!! error TS2804: Duplicate identifier '#foo'. Static and instance elements cannot share the same private name. } // Error class A_StaticSetter_StaticField { static set #foo(value: string) { } static #foo = "foo"; ~~~~ !!! error TS2300: Duplicate identifier '#foo'. } // Error class A_StaticSetter_StaticMethod { static set #foo(value: string) { } ~~~~ !!! error TS2300: Duplicate identifier '#foo'. static #foo() { } ~~~~ !!! error TS2300: Duplicate identifier '#foo'. } // OK class A_StaticSetter_StaticGetter { static set #foo(value: string) { } static get #foo() { return ""} } // Error class A_StaticSetter_StaticSetter { static set #foo(value: string) { } ~~~~ !!! error TS2300: Duplicate identifier '#foo'. static set #foo(value: string) { } ~~~~ !!! error TS2300: Duplicate identifier '#foo'. } }