1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
|
//// [tests/cases/conformance/types/typeRelationships/recursiveTypes/infiniteExpansionThroughInstantiation2.ts] ////
//// [infiniteExpansionThroughInstantiation2.ts]
// instantiating a derived type can cause an infinitely expanding type reference to be generated
// which could be used in an assignment check for constraint satisfaction
interface AA<T extends AA<T>> // now an error due to referencing type parameter in constraint
{
x: T
}
interface BB extends AA<AA<BB>>
{
}
//// [infiniteExpansionThroughInstantiation2.js]
// instantiating a derived type can cause an infinitely expanding type reference to be generated
// which could be used in an assignment check for constraint satisfaction
|