File: typeParameterFixingWithContextSensitiveArguments2.js

package info (click to toggle)
node-typescript 5.2.2-1
  • links: PTS, VCS
  • area: main
  • in suites: experimental
  • size: 497,488 kB
  • sloc: javascript: 2,107,274; makefile: 6; sh: 1
file content (15 lines) | stat: -rw-r--r-- 614 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
//// [tests/cases/compiler/typeParameterFixingWithContextSensitiveArguments2.ts] ////

//// [typeParameterFixingWithContextSensitiveArguments2.ts]
function f<T, U>(y: T, y1: U, p: (z: U) => T, p1: (x: T) => U): [T, U] { return [y, p1(y)]; }
interface A { a: A; }
interface B extends A { b; }

var a: A, b: B;

var d = f(a, b, x => x, x => x); // A => A not assignable to A => B

//// [typeParameterFixingWithContextSensitiveArguments2.js]
function f(y, y1, p, p1) { return [y, p1(y)]; }
var a, b;
var d = f(a, b, function (x) { return x; }, function (x) { return x; }); // A => A not assignable to A => B