forOfSelfReferentialDottedName.ts(3,12): error TS7022: 'a' implicitly has type 'any' because it does not have a type annotation and is referenced directly or indirectly in its own initializer.
forOfSelfReferentialDottedName.ts(3,17): error TS2448: Block-scoped variable 'a' used before its declaration.


==== forOfSelfReferentialDottedName.ts (2 errors) ====
    // A self-referential for-of iterable (`for (const a of a)`) plus a call and a
    // later narrowing reference must not infinitely recurse in getExplicitTypeOfSymbol.
    for (const a of a) {
               ~
!!! error TS7022: 'a' implicitly has type 'any' because it does not have a type annotation and is referenced directly or indirectly in its own initializer.
                    ~
!!! error TS2448: Block-scoped variable 'a' used before its declaration.
!!! related TS2728 forOfSelfReferentialDottedName.ts:3:12: 'a' is declared here.
        a();
        a;
    }
    