==== tests/cases/compiler/genericNewInterface.ts (2 errors) ==== function createInstance(ctor: new (s: string) => T): T { return new ctor(42); //should be an error ~~ !!! Argument of type 'number' is not assignable to parameter of type 'string'. } interface INewable { new (param: string): T; } function createInstance2(ctor: INewable): T { return new ctor(1024); //should be an error ~~~~ !!! Argument of type 'number' is not assignable to parameter of type 'string'. }