TypeScript/tests/baselines/reference/constraintReferencingTypeParameterFromSameTypeParameterList.errors.txt
2014-07-12 17:30:19 -07:00

37 lines
1.5 KiB
Plaintext

==== tests/cases/compiler/constraintReferencingTypeParameterFromSameTypeParameterList.ts (6 errors) ====
// used to be valid, now an error to do this
interface IComparable<T> {
}
function f<T, I extends IComparable<T>>() {
~~~~~~~~~~~~~~~~~~~~~~~~
!!! Constraint of a type parameter cannot reference any type parameter from the same type parameter list.
}
interface I1<T, U extends I1<T, any>> { // Error, any does not satisfy the constraint I1<T, any>
~~~~~~~~~~~~~~~~~~~~
!!! Constraint of a type parameter cannot reference any type parameter from the same type parameter list.
}
interface I2<T, U extends T> {
~~~~~~~~~~~
!!! Constraint of a type parameter cannot reference any type parameter from the same type parameter list.
}
interface I4<T, U extends () => T> {
~~~~~~~~~~~~~~~~~
!!! Constraint of a type parameter cannot reference any type parameter from the same type parameter list.
}
// No error
interface I3<T, U extends string> {
method1<X, Y extends T>();
}
function foo<T, U extends <V extends T>(v: V) => void>() {
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
!!! Constraint of a type parameter cannot reference any type parameter from the same type parameter list.
~~~~~~~~~~~
!!! Constraint of a type parameter cannot reference any type parameter from the same type parameter list.
}