tests/cases/compiler/interfaceDeclaration1.ts(2,5): error TS2300: Duplicate identifier 'item'.
tests/cases/compiler/interfaceDeclaration1.ts(3,5): error TS2300: Duplicate identifier 'item'.
tests/cases/compiler/interfaceDeclaration1.ts(7,5): error TS2300: Duplicate identifier 'item'.
tests/cases/compiler/interfaceDeclaration1.ts(8,5): error TS2300: Duplicate identifier 'item'.
tests/cases/compiler/interfaceDeclaration1.ts(8,5): error TS2717: Subsequent property declarations must have the same type.  Property 'item' must be of type 'any', but here has type 'number'.
tests/cases/compiler/interfaceDeclaration1.ts(22,11): error TS2310: Type 'I5' recursively references itself as a base type.
tests/cases/compiler/interfaceDeclaration1.ts(35,7): error TS2420: Class 'C1' incorrectly implements interface 'I3'.
  Property 'prototype' is missing in type 'C1'.
tests/cases/compiler/interfaceDeclaration1.ts(41,11): error TS2310: Type 'i8' recursively references itself as a base type.
tests/cases/compiler/interfaceDeclaration1.ts(52,11): error TS2320: Interface 'i12' cannot simultaneously extend types 'i10' and 'i11'.
  Named property 'foo' of types 'i10' and 'i11' are not identical.


==== tests/cases/compiler/interfaceDeclaration1.ts (9 errors) ====
    interface I1 {
        item:number;
        ~~~~
!!! error TS2300: Duplicate identifier 'item'.
        item:number;
        ~~~~
!!! error TS2300: Duplicate identifier 'item'.
    }
    
    interface I2 {
        item:any;
        ~~~~
!!! error TS2300: Duplicate identifier 'item'.
        item:number;
        ~~~~
!!! error TS2300: Duplicate identifier 'item'.
        ~~~~
!!! error TS2717: Subsequent property declarations must have the same type.  Property 'item' must be of type 'any', but here has type 'number'.
    }
    
    interface I3 {
        prototype:number;
    }
    
    interface I4 {
        class:number;
        number:number;
        super:number;
        prototype:number;
    }
    
    interface I5 extends I5 { 
              ~~
!!! error TS2310: Type 'I5' recursively references itself as a base type.
        foo():void;
    }
    
    interface I6 {
    	():void;
    }
    
    interface I7 extends I6 { }
    
    var v1:I7;
    v1();
    
    class C1 implements I3 {
          ~~
!!! error TS2420: Class 'C1' incorrectly implements interface 'I3'.
!!! error TS2420:   Property 'prototype' is missing in type 'C1'.
        constructor() {
            var prototype: number = 3;
        }
    }
    
    interface i8 extends i9 { }
              ~~
!!! error TS2310: Type 'i8' recursively references itself as a base type.
    interface i9 extends i8 { }
    
    interface i10 {
    	foo():number;
    }
    
    interface i11{
    	foo():string;
    }
    
    interface i12 extends i10, i11 { }
              ~~~
!!! error TS2320: Interface 'i12' cannot simultaneously extend types 'i10' and 'i11'.
!!! error TS2320:   Named property 'foo' of types 'i10' and 'i11' are not identical.
    