1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
|
=== tests/cases/conformance/types/typeRelationships/assignmentCompatibility/assignmentCompatWithGenericCallSignatures.ts ===
// some complex cases of assignment compat of generic signatures that stress contextual signature instantiation
var f: <S extends { p: string }[]>(x: S) => void
>f : <S extends { p: string; }[]>(x: S) => void
>p : string
>x : S
var g: <T extends { p: string }>(x: T[]) => void
>g : <T extends { p: string; }>(x: T[]) => void
>p : string
>x : T[]
f = g; // ok
>f = g : <T extends { p: string; }>(x: T[]) => void
>f : <S extends { p: string; }[]>(x: S) => void
>g : <T extends { p: string; }>(x: T[]) => void
g = f; // ok
>g = f : <S extends { p: string; }[]>(x: S) => void
>g : <T extends { p: string; }>(x: T[]) => void
>f : <S extends { p: string; }[]>(x: S) => void
|