50 lines
803 B
Plaintext
50 lines
803 B
Plaintext
=== tests/cases/compiler/genericSignatureIdentity.ts ===
|
|
// This test is here to remind us of our current limits of type identity checking.
|
|
// Ideally all of the below declarations would be considered different (and thus errors)
|
|
// but they aren't because we erase type parameters to type any and don't check that
|
|
// constraints are identical.
|
|
|
|
var x: {
|
|
>x : <T extends Date>(x: T) => T
|
|
|
|
<T extends Date>(x: T): T;
|
|
>T : T
|
|
>Date : Date
|
|
>x : T
|
|
>T : T
|
|
>T : T
|
|
|
|
};
|
|
|
|
var x: {
|
|
>x : <T extends Date>(x: T) => T
|
|
|
|
<T extends number>(x: T): T;
|
|
>T : T
|
|
>x : T
|
|
>T : T
|
|
>T : T
|
|
|
|
};
|
|
|
|
var x: {
|
|
>x : <T extends Date>(x: T) => T
|
|
|
|
<T>(x: T): T;
|
|
>T : T
|
|
>x : T
|
|
>T : T
|
|
>T : T
|
|
|
|
};
|
|
|
|
var x: {
|
|
>x : <T extends Date>(x: T) => T
|
|
|
|
<T>(x: any): any;
|
|
>T : T
|
|
>x : any
|
|
|
|
};
|
|
|