tests/cases/conformance/classes/members/privateNames/privateNamesUseBeforeDef.ts(2,17): error TS2729: Property '#bar' is used before its initialization.
tests/cases/conformance/classes/members/privateNames/privateNamesUseBeforeDef.ts(17,17): error TS2729: Property '#bar' is used before its initialization.


==== tests/cases/conformance/classes/members/privateNames/privateNamesUseBeforeDef.ts (2 errors) ====
    class A {
        #foo = this.#bar; // Error
                    ~~~~
!!! error TS2729: Property '#bar' is used before its initialization.
!!! related TS2728 tests/cases/conformance/classes/members/privateNames/privateNamesUseBeforeDef.ts:3:5: '#bar' is declared here.
        #bar = 3;
    }
    
    class A2 {
        #foo = this.#bar(); // No Error
        #bar() { return 3 };
    }
    
    class A3 {
        #foo = this.#bar; // No Error
        get #bar() { return 3 };
    }
    
    class B {
        #foo = this.#bar; // Error
                    ~~~~
!!! error TS2729: Property '#bar' is used before its initialization.
!!! related TS2728 tests/cases/conformance/classes/members/privateNames/privateNamesUseBeforeDef.ts:18:5: '#bar' is declared here.
        #bar = this.#foo;
    }
    