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 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59
|
tests/cases/compiler/nonIdenticalTypeConstraints.ts(7,7): error TS2428: All declarations of 'Foo' must have identical type parameters.
tests/cases/compiler/nonIdenticalTypeConstraints.ts(10,11): error TS2428: All declarations of 'Foo' must have identical type parameters.
tests/cases/compiler/nonIdenticalTypeConstraints.ts(13,11): error TS2428: All declarations of 'Qux' must have identical type parameters.
tests/cases/compiler/nonIdenticalTypeConstraints.ts(16,7): error TS2428: All declarations of 'Qux' must have identical type parameters.
tests/cases/compiler/nonIdenticalTypeConstraints.ts(33,7): error TS2428: All declarations of 'Quux' must have identical type parameters.
tests/cases/compiler/nonIdenticalTypeConstraints.ts(36,11): error TS2428: All declarations of 'Quux' must have identical type parameters.
==== tests/cases/compiler/nonIdenticalTypeConstraints.ts (6 errors) ====
class Different {
a: number;
b: string;
c: boolean;
}
class Foo<T extends Function> {
~~~
!!! error TS2428: All declarations of 'Foo' must have identical type parameters.
n: T;
}
interface Foo<T extends Different> {
~~~
!!! error TS2428: All declarations of 'Foo' must have identical type parameters.
y: T;
}
interface Qux<T extends Different> {
~~~
!!! error TS2428: All declarations of 'Qux' must have identical type parameters.
y: T;
}
class Qux<T extends Function> {
~~~
!!! error TS2428: All declarations of 'Qux' must have identical type parameters.
n: T;
}
class Bar<T extends Function> {
n: T;
}
interface Bar<T extends Function> {
y: T;
}
interface Baz<T extends Function> {
y: T;
}
class Baz<T extends Function> {
n: T;
}
class Quux<T> {
~~~~
!!! error TS2428: All declarations of 'Quux' must have identical type parameters.
n: T;
}
interface Quux<U> {
~~~~
!!! error TS2428: All declarations of 'Quux' must have identical type parameters.
m: U;
}
|