==== tests/cases/compiler/functionCall17.ts (4 errors) ==== function foo(a:string, b?:string, c?:number, ...d:number[]){} foo('foo', 1); ~ !!! Argument of type 'number' is not assignable to parameter of type 'string'. foo('foo'); foo(); ~~~~~ !!! Supplied parameters do not match any signature of call target. foo(1, 'bar'); ~ !!! Argument of type 'number' is not assignable to parameter of type 'string'. foo('foo', 1, 3); ~ !!! Argument of type 'number' is not assignable to parameter of type 'string'. foo('foo', 'bar', 3, 4);