1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
|
//// [noExcessiveStackDepthError.ts]
// Repro from #46631
interface FindOperator<T> {
foo: T;
}
type FindConditions<T> = {
[P in keyof T]?: FindConditions<T[P]> | FindOperator<FindConditions<T[P]>>;
};
function foo<Entity>() {
var x: FindConditions<any>;
var x: FindConditions<Entity>; // Excessive stack depth error not expected here
}
//// [noExcessiveStackDepthError.js]
"use strict";
// Repro from #46631
function foo() {
var x;
var x; // Excessive stack depth error not expected here
}
//// [noExcessiveStackDepthError.d.ts]
interface FindOperator<T> {
foo: T;
}
type FindConditions<T> = {
[P in keyof T]?: FindConditions<T[P]> | FindOperator<FindConditions<T[P]>>;
};
declare function foo<Entity>(): void;
|