tests/cases/conformance/classes/classDeclarations/classHeritageSpecification/classExtendsEveryObjectType.ts(6,18): error TS1003: Identifier expected.
tests/cases/conformance/classes/classDeclarations/classHeritageSpecification/classExtendsEveryObjectType.ts(16,18): error TS1003: Identifier expected.
tests/cases/conformance/classes/classDeclarations/classHeritageSpecification/classExtendsEveryObjectType.ts(16,20): error TS1005: ';' expected.
tests/cases/conformance/classes/classDeclarations/classHeritageSpecification/classExtendsEveryObjectType.ts(4,17): error TS2311: A class may only extend another class.
tests/cases/conformance/classes/classDeclarations/classHeritageSpecification/classExtendsEveryObjectType.ts(8,18): error TS2304: Cannot find name 'x'.
tests/cases/conformance/classes/classDeclarations/classHeritageSpecification/classExtendsEveryObjectType.ts(11,18): error TS2304: Cannot find name 'M'.
tests/cases/conformance/classes/classDeclarations/classHeritageSpecification/classExtendsEveryObjectType.ts(14,18): error TS2304: Cannot find name 'foo'.


==== tests/cases/conformance/classes/classDeclarations/classHeritageSpecification/classExtendsEveryObjectType.ts (7 errors) ====
    interface I {
        foo: string;
    }
    class C extends I { } // error
                    ~
!!! error TS2311: A class may only extend another class.
    
    class C2 extends { foo: string; } { } // error
                     ~
!!! error TS1003: Identifier expected.
    var x: { foo: string; }
    class C3 extends x { } // error
                     ~
!!! error TS2304: Cannot find name 'x'.
    
    module M { export var x = 1; }
    class C4 extends M { } // error
                     ~
!!! error TS2304: Cannot find name 'M'.
    
    function foo() { }
    class C5 extends foo { } // error
                     ~~~
!!! error TS2304: Cannot find name 'foo'.
    
    class C6 extends []{ } // error
                     ~
!!! error TS1003: Identifier expected.
                       ~
!!! error TS1005: ';' expected.