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
|
=== tests/cases/compiler/noImplicitAnyWithOverloads.ts ===
interface A {
foo;
>foo : any
}
interface B { }
function callb(lam: (l: A) => void);
>callb : { (lam: (l: A) => void): any; (lam: (n: B) => void): any; }
>lam : (l: A) => void
>l : A
function callb(lam: (n: B) => void);
>callb : { (lam: (l: A) => void): any; (lam: (n: B) => void): any; }
>lam : (n: B) => void
>n : B
function callb(a) { }
>callb : { (lam: (l: A) => void): any; (lam: (n: B) => void): any; }
>a : any
callb((a) => { a.foo; }); // error, chose first overload
>callb((a) => { a.foo; }) : any
>callb : { (lam: (l: A) => void): any; (lam: (n: B) => void): any; }
>(a) => { a.foo; } : (a: A) => void
>a : A
>a.foo : any
>a : A
>foo : any
|