==== tests/cases/compiler/typeMatch1.ts (3 errors) ====
    interface I { z; }
    interface I2 { z; }
    
    var x1: { z: number; f(n: number): string; f(s: string): number; }
    var x2: { z:number;f:{(n:number):string;(s:string):number;}; } = x1;
    var i:I;
    var i2:I2;
    var x3:{ z; }= i;
    var x4:{ z; }= i2;
    var x5:I=i2;
    
    class C { private x; }
    class D { private x; }
    
    var x6=new C();
    var x7=new D();
    
    x6 = x7;
    ~~
!!! typeMatch1.ts(18,1): error TS2012: Cannot convert 'D' to 'C':
!!! 	Types 'D' and 'C' define property 'x' as private.
    x6=C;
    ~~
!!! typeMatch1.ts(19,1): error TS2012: Cannot convert 'typeof C' to 'C':
!!! 	Type 'typeof C' is missing property 'x' from type 'C'.
    C==D;
    ~~~~
!!! typeMatch1.ts(20,1): error TS2009: Operator '==' cannot be applied to types 'typeof C' and 'typeof D'.
    C==C;
    
    