30 lines
377 B
TypeScript
30 lines
377 B
TypeScript
//// [recursiveIdenticalOverloadResolution.ts]
|
|
|
|
module M {
|
|
|
|
interface I { (i: I): I; }
|
|
|
|
function f(p: I) { return f };
|
|
|
|
var i: I;
|
|
|
|
f(i);
|
|
|
|
f(f(i));
|
|
|
|
f((f(f(i))));
|
|
|
|
}
|
|
|
|
|
|
//// [recursiveIdenticalOverloadResolution.js]
|
|
var M;
|
|
(function (M) {
|
|
function f(p) { return f; }
|
|
;
|
|
var i;
|
|
f(i);
|
|
f(f(i));
|
|
f((f(f(i))));
|
|
})(M || (M = {}));
|