=== tests/cases/compiler/checkInfiniteExpansionTermination2.ts === // Regression test for #1002 // Before fix this code would cause infinite loop interface IObservable { >IObservable : IObservable >T : T n: IObservable; >n : IObservable >IObservable : IObservable >T : T } interface ISubject extends IObservable { } >ISubject : ISubject >T : T >IObservable : IObservable >T : T declare function combineLatest(x: IObservable[]): void; >combineLatest : { (x: IObservable[]): void; (): void; } >TOther : TOther >x : IObservable[] >IObservable : IObservable >TOther : TOther declare function combineLatest(): void; >combineLatest : { (x: IObservable[]): void; (): void; } function fn() { >fn : () => void >T : T var values: ISubject[] = []; >values : ISubject[] >ISubject : ISubject >[] : undefined[] // Hang when using , but not combineLatest(values); >combineLatest(values) : void >combineLatest : { (x: IObservable[]): void; (): void; } >T : T >values : ISubject[] }