==== tests/cases/compiler/untypedFunctionCallsWithTypeParameters1.ts (10 errors) ==== // none of these function calls should be allowed var x = function () { return; }; var r1 = x(); ~~~~~~~~~~~ !!! Supplied parameters do not match any signature of call target. var y: any = x; var r2 = y(); ~~~~~~~~~~~ !!! Untyped function calls may not accept type arguments. var c: Function; var r3 = c(); // should be an error ~~~~~~~~~~~ !!! Untyped function calls may not accept type arguments. class C implements Function { ~ !!! Class 'C' incorrectly implements interface 'Function': !!! Property 'apply' is missing in type 'C'. prototype = null; length = 1; arguments = null; caller = () => { }; } var c2: C; var r4 = c2(); // should be an error ~~~~~~~~~~~~ !!! Cannot invoke an expression whose type lacks a call signature. class C2 extends Function { } // error ~~~~~~~~ !!! A class may only extend another class. var c3: C2; var r5 = c3(); // error ~~~~~~~~~~~~ !!! Cannot invoke an expression whose type lacks a call signature. interface I { (number): number; } var z: I; var r6 = z(1); // error ~~~~~~~~~~~~ !!! Supplied parameters do not match any signature of call target. interface callable2 { (a: T): T; } var c4: callable2; c4(1); ~~~~~~~~~~~~~ !!! Supplied parameters do not match any signature of call target. interface callable3 { (a: T): T; } var c5: callable3; c5(1); // error ~~~~~~~~~~~~~ !!! Supplied parameters do not match any signature of call target.