tests/cases/compiler/noUnusedLocals_selfReference.ts(3,10): error TS6133: 'f' is declared but never used.
tests/cases/compiler/noUnusedLocals_selfReference.ts(4,7): error TS6133: 'C' is declared but never used.
tests/cases/compiler/noUnusedLocals_selfReference.ts(7,6): error TS6133: 'E' is declared but never used.


==== tests/cases/compiler/noUnusedLocals_selfReference.ts (3 errors) ====
    export {}; // Make this a module scope, so these are local variables.
    
    function f() { f; }
             ~
!!! error TS6133: 'f' is declared but never used.
    class C {
          ~
!!! error TS6133: 'C' is declared but never used.
        m() { C; }
    }
    enum E { A = 0, B = E.A }
         ~
!!! error TS6133: 'E' is declared but never used.
    
    // Does not detect mutual recursion.
    function g() { D; }
    class D { m() { g; } }
    
    // Does not work on private methods.
    class P { private m() { this.m; } }
    P;
    