16 lines
716 B
JavaScript
16 lines
716 B
JavaScript
|
//// [overloadsWithProvisionalErrors.ts]
|
||
|
var func: {
|
||
|
(s: string): number;
|
||
|
(lambda: (s: string) => { a: number; b: number }): string;
|
||
|
};
|
||
|
|
||
|
func(s => ({})); // Error for no applicable overload (object type is missing a and b)
|
||
|
func(s => ({ a: blah, b: 3 })); // Only error inside the function, but not outside (since it would be applicable if not for the provisional error)
|
||
|
func(s => ({ a: blah })); // Two errors here, one for blah not being defined, and one for the overload since it would not be applicable anyway
|
||
|
|
||
|
//// [overloadsWithProvisionalErrors.js]
|
||
|
var func;
|
||
|
func(function (s) { return ({}); });
|
||
|
func(function (s) { return ({ a: blah, b: 3 }); });
|
||
|
func(function (s) { return ({ a: blah }); });
|