tests/cases/conformance/classes/members/classTypes/staticPropertyNotInClassType.ts(4,20): error TS1056: Accessors are only available when targeting ECMAScript 5 and higher.
tests/cases/conformance/classes/members/classTypes/staticPropertyNotInClassType.ts(5,20): error TS1056: Accessors are only available when targeting ECMAScript 5 and higher.
tests/cases/conformance/classes/members/classTypes/staticPropertyNotInClassType.ts(16,16): error TS2339: Property 'foo' does not exist on type 'C'.
tests/cases/conformance/classes/members/classTypes/staticPropertyNotInClassType.ts(17,16): error TS2339: Property 'bar' does not exist on type 'C'.
tests/cases/conformance/classes/members/classTypes/staticPropertyNotInClassType.ts(18,16): error TS2339: Property 'x' does not exist on type 'C'.
tests/cases/conformance/classes/members/classTypes/staticPropertyNotInClassType.ts(24,20): error TS1056: Accessors are only available when targeting ECMAScript 5 and higher.
tests/cases/conformance/classes/members/classTypes/staticPropertyNotInClassType.ts(25,20): error TS1056: Accessors are only available when targeting ECMAScript 5 and higher.
tests/cases/conformance/classes/members/classTypes/staticPropertyNotInClassType.ts(27,21): error TS2302: Static members cannot reference class type parameters.
tests/cases/conformance/classes/members/classTypes/staticPropertyNotInClassType.ts(36,16): error TS2339: Property 'foo' does not exist on type 'C<number, string>'.
tests/cases/conformance/classes/members/classTypes/staticPropertyNotInClassType.ts(37,16): error TS2339: Property 'bar' does not exist on type 'C<number, string>'.
tests/cases/conformance/classes/members/classTypes/staticPropertyNotInClassType.ts(38,16): error TS2339: Property 'x' does not exist on type 'C<number, string>'.


==== tests/cases/conformance/classes/members/classTypes/staticPropertyNotInClassType.ts (11 errors) ====
    module NonGeneric {
        class C {
            fn() { return this; }
            static get x() { return 1; }
                       ~
!!! error TS1056: Accessors are only available when targeting ECMAScript 5 and higher.
            static set x(v) { }
                       ~
!!! error TS1056: Accessors are only available when targeting ECMAScript 5 and higher.
            constructor(public a: number, private b: number) { }
            static foo: string; // not reflected in class type
        }
    
        module C {
            export var bar = ''; // not reflected in class type
        }
    
        var c = new C(1, 2);
        var r = c.fn();
        var r4 = c.foo; // error
                   ~~~
!!! error TS2339: Property 'foo' does not exist on type 'C'.
        var r5 = c.bar; // error
                   ~~~
!!! error TS2339: Property 'bar' does not exist on type 'C'.
        var r6 = c.x; // error
                   ~
!!! error TS2339: Property 'x' does not exist on type 'C'.
    }
    
    module Generic {
        class C<T, U> {
            fn() { return this; }
            static get x() { return 1; }
                       ~
!!! error TS1056: Accessors are only available when targeting ECMAScript 5 and higher.
            static set x(v) { }
                       ~
!!! error TS1056: Accessors are only available when targeting ECMAScript 5 and higher.
            constructor(public a: T, private b: U) { }
            static foo: T; // not reflected in class type
                        ~
!!! error TS2302: Static members cannot reference class type parameters.
        }
    
        module C {
            export var bar = ''; // not reflected in class type
        }
    
        var c = new C(1, '');
        var r = c.fn();
        var r4 = c.foo; // error
                   ~~~
!!! error TS2339: Property 'foo' does not exist on type 'C<number, string>'.
        var r5 = c.bar; // error
                   ~~~
!!! error TS2339: Property 'bar' does not exist on type 'C<number, string>'.
        var r6 = c.x; // error
                   ~
!!! error TS2339: Property 'x' does not exist on type 'C<number, string>'.
    }