2014-07-13 01:04:16 +02:00
|
|
|
==== tests/cases/compiler/contextualTypingOfGenericFunctionTypedArguments1.ts (2 errors) ====
|
|
|
|
interface Collection<T> {
|
|
|
|
length: number;
|
|
|
|
add(x: T): void;
|
|
|
|
remove(x: T): boolean;
|
|
|
|
}
|
|
|
|
|
|
|
|
interface Combinators {
|
|
|
|
forEach<T>(c: Collection<T>, f: (x: T) => Date): void;
|
|
|
|
}
|
|
|
|
|
|
|
|
var c2: Collection<number>;
|
|
|
|
var _: Combinators;
|
|
|
|
|
|
|
|
// errors on all 3 lines, bug was that r5 was the only line with errors
|
|
|
|
var f = (x: number) => { return x.toFixed() };
|
|
|
|
var r5 = _.forEach<number>(c2, f);
|
2014-07-25 02:00:03 +02:00
|
|
|
~
|
2014-07-25 04:39:50 +02:00
|
|
|
!!! Argument of type '(x: number) => string' is not assignable to parameter of type '(x: number) => Date'.
|
2014-07-13 01:04:16 +02:00
|
|
|
var r6 = _.forEach<number>(c2, (x) => { return x.toFixed() });
|
2014-07-25 02:00:03 +02:00
|
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
2014-07-25 04:39:50 +02:00
|
|
|
!!! Argument of type '(x: number) => string' is not assignable to parameter of type '(x: number) => Date'.
|
2014-07-13 01:04:16 +02:00
|
|
|
|