==== tests/cases/compiler/mutuallyRecursiveGenericBaseTypes1.ts (1 errors) ====
    interface A<T> {
        foo(): B<T>; // instead of B does see this
        foo(): void; // instead of B does see this
        ~~~~~~~~~~~
!!! mutuallyRecursiveGenericBaseTypes1.ts(3,5): error TS2175: Overloads cannot differ only by return type.
     
        foo2(): B<number>;
    }
     
    interface B<T> extends A<T> {
        bar(): void;
    }
     
    var b: B<number>;
    b.foo(); // should not error
    
     
    