15 lines
1,017 B
TypeScript
15 lines
1,017 B
TypeScript
//// [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 ({}); }); // Error for no applicable overload (object type is missing a and b)
|
|
func(function (s) { return ({ a: blah, b: 3 }); }); // Only error inside the function, but not outside (since it would be applicable if not for the provisional error)
|
|
func(function (s) { return ({ a: blah }); }); // Two errors here, one for blah not being defined, and one for the overload since it would not be applicable anyway
|