TypeScript/tests/baselines/reference/noExcessiveStackDepthError.types
Anders Hejlsberg 7cbcfeea99
Exclude identity relation from mapped type relation check (#46632)
* Exclude identity relation from mapped type relation check

* Add regression test
2021-11-02 06:54:35 -07:00

25 lines
528 B
Plaintext

=== tests/cases/compiler/noExcessiveStackDepthError.ts ===
// Repro from #46631
interface FindOperator<T> {
foo: T;
>foo : T
}
type FindConditions<T> = {
>FindConditions : FindConditions<T>
[P in keyof T]?: FindConditions<T[P]> | FindOperator<FindConditions<T[P]>>;
};
function foo<Entity>() {
>foo : <Entity>() => void
var x: FindConditions<any>;
>x : FindConditions<any>
var x: FindConditions<Entity>; // Excessive stack depth error not expected here
>x : FindConditions<any>
}