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
|
=== tests/cases/compiler/contextualTypingWithFixedTypeParameters1.ts ===
var f10: <T>(x: T, b: () => (a: T) => void, y: T) => T;
>f10 : <T>(x: T, b: () => (a: T) => void, y: T) => T
>x : T
>b : () => (a: T) => void
>a : T
>y : T
f10('', () => a => a.foo, ''); // a is ""
>f10('', () => a => a.foo, '') : string
>f10 : <T>(x: T, b: () => (a: T) => void, y: T) => T
>'' : ""
>() => a => a.foo : () => (a: string) => any
>a => a.foo : (a: string) => any
>a : string
>a.foo : any
>a : string
>foo : any
>'' : ""
var r9 = f10('', () => (a => a.foo), 1); // error
>r9 : string
>f10('', () => (a => a.foo), 1) : ""
>f10 : <T>(x: T, b: () => (a: T) => void, y: T) => T
>'' : ""
>() => (a => a.foo) : () => (a: "") => any
>(a => a.foo) : (a: "") => any
>a => a.foo : (a: "") => any
>a : ""
>a.foo : any
>a : ""
>foo : any
>1 : 1
|