==== tests/cases/compiler/genericNewInterface.ts (4 errors) ====
    // bug 771191: Generic new() Interface contract not enforced
    
    function createInstance<T>(ctor: new (s: string) => T): T {
        return new ctor(42); //should be an error
                   ~~~~
!!! genericNewInterface.ts(4,16): error TS2082: Supplied parameters do not match any signature of call target:
!!! 	Could not apply type 'string' to argument 1 which is of type 'number'.
                   ~~~~
!!! genericNewInterface.ts(4,16): error TS2085: Could not select overload for 'new' expression.
    }
                       
    interface INewable<T> {
        new (param: string): T;
    }
    
    function createInstance2<T>(ctor: INewable<T>): T {
        return new ctor(1024); //should be an error
                   ~~~~
!!! genericNewInterface.ts(12,16): error TS2082: Supplied parameters do not match any signature of call target:
!!! 	Could not apply type 'string' to argument 1 which is of type 'number'.
                   ~~~~
!!! genericNewInterface.ts(12,16): error TS2085: Could not select overload for 'new' expression.
    }