tests/cases/compiler/moduledecl.ts(164,21): error TS1056: Accessors are only available when targeting ECMAScript 5 and higher.
tests/cases/compiler/moduledecl.ts(172,20): error TS1056: Accessors are only available when targeting ECMAScript 5 and higher.


==== tests/cases/compiler/moduledecl.ts (2 errors) ====
    module a {
    }
    
    module b.a {
    }
    
    module c.a.b {
        import ma = a;
    }
    
    module mImport {
        import d = a;
        import e = b.a;
        import d1 = a;
        import e1 = b.a;
    }
    
    module m0 {
        function f1() {
        }
    
        function f2(s: string);
        function f2(n: number);
        function f2(ns: any) {
        }
    
        class c1 {
            public a : ()=>string;
            private b: ()=>number;
            private static s1;
            public static s2;
        }
    
        interface i1 {
            () : Object;
            [n: number]: c1;
        }
    
        import m2 = a;
        import m3 = b;
        import m4 = b.a;
        import m5 = c;
        import m6 = c.a;
        import m7 = c.a.b;
    }
    
    module m1 {
        export function f1() {
        }
    
        export function f2(s: string);
        export function f2(n: number);
        export function f2(ns: any) {
        }
    
        export class c1 {
            public a: () =>string;
            private b: () =>number;
            private static s1;
            public static s2;
    
            public d() {
                return "Hello";
            }
    
            public e: { x: number; y: string; };
            constructor (public n, public n2: number, private n3, private n4: string) {
            }
        }
    
        export interface i1 {
            () : Object;
            [n: number]: c1;
        }
    
        import m2 = a;
        import m3 = b;
        import m4 = b.a;
        import m5 = c;
        import m6 = c.a;
        import m7 = c.a.b;
    }
    
    module m {
        export module m2 {
            var a = 10;
            export var b: number;
        }
    
        export module m3 {
            export var c: number;
        }
    }
    
    module m {
    
        export module m25 {
            export module m5 {
                export var c: number;
            }
        }
    }
    
    module m13 {
        export module m4 {
            export module m2 {
                export module m3 {
                    export var c: number;
                }
            }
    
            export function f() {
                return 20;
            }
        }
    }
    
    declare module m4 {
        export var b;
    }
    
    declare module m5 {
        export var c;
    }
    
    declare module m43 {
        export var b;
    }
    
    declare module m55 {
        export var c;
    }
    
    declare module "m3" {
        export var b: number;
    }
    
    module exportTests {
        export class C1_public {
            private f2() {
                return 30;
            }
    
            public f3() {
                return "string";
            }
        }
        class C2_private {
            private f2() {
                return 30;
            }
    
            public f3() {
                return "string";
            }
        }
    
        export class C3_public {
            private getC2_private() {
                return new C2_private();
            }
            private setC2_private(arg: C2_private) {
            }
            private get c2() {
                        ~~
!!! error TS1056: Accessors are only available when targeting ECMAScript 5 and higher.
                return new C2_private();
            }
            public getC1_public() {
                return new C1_public();
            }
            public setC1_public(arg: C1_public) {
            }
            public get c1() {
                       ~~
!!! error TS1056: Accessors are only available when targeting ECMAScript 5 and higher.
                return new C1_public();
            }
        }
    }
    
    declare module mAmbient {
        class C {
            public myProp: number;
        }
    
        function foo() : C;
        var aVar: C;
        interface B {
            x: number;
            y: C;
        }
        enum e {
            x,
            y,
            z
        }
    
        module m3 {
            class C {
                public myProp: number;
            }
    
            function foo(): C;
            var aVar: C;
            interface B {
                x: number;
                y: C;
            }
            enum e {
                x,
                y,
                z
            }
        }
    }
    
    function foo() {
        return mAmbient.foo();
    }
    
    var cVar = new mAmbient.C();
    var aVar = mAmbient.aVar;
    var bB: mAmbient.B;
    var eVar: mAmbient.e;
    
    function m3foo() {
        return mAmbient.m3.foo();
    }
    
    var m3cVar = new mAmbient.m3.C();
    var m3aVar = mAmbient.m3.aVar;
    var m3bB: mAmbient.m3.B;
    var m3eVar: mAmbient.m3.e;
    
    