=== tests/cases/compiler/augmentedTypesClass3.ts === // class then module class c5 { public foo() { } } >c5 : Symbol(c5, Decl(augmentedTypesClass3.ts, 0, 0), Decl(augmentedTypesClass3.ts, 1, 29)) >foo : Symbol(foo, Decl(augmentedTypesClass3.ts, 1, 10)) module c5 { } // should be ok >c5 : Symbol(c5, Decl(augmentedTypesClass3.ts, 0, 0), Decl(augmentedTypesClass3.ts, 1, 29)) class c5a { public foo() { } } >c5a : Symbol(c5a, Decl(augmentedTypesClass3.ts, 2, 13), Decl(augmentedTypesClass3.ts, 4, 30)) >foo : Symbol(foo, Decl(augmentedTypesClass3.ts, 4, 11)) module c5a { var y = 2; } // should be ok >c5a : Symbol(c5a, Decl(augmentedTypesClass3.ts, 2, 13), Decl(augmentedTypesClass3.ts, 4, 30)) >y : Symbol(y, Decl(augmentedTypesClass3.ts, 5, 16)) class c5b { public foo() { } } >c5b : Symbol(c5b, Decl(augmentedTypesClass3.ts, 5, 25), Decl(augmentedTypesClass3.ts, 7, 30)) >foo : Symbol(foo, Decl(augmentedTypesClass3.ts, 7, 11)) module c5b { export var y = 2; } // should be ok >c5b : Symbol(c5b, Decl(augmentedTypesClass3.ts, 5, 25), Decl(augmentedTypesClass3.ts, 7, 30)) >y : Symbol(y, Decl(augmentedTypesClass3.ts, 8, 23)) //// class then import class c5c { public foo() { } } >c5c : Symbol(c5c, Decl(augmentedTypesClass3.ts, 8, 32)) >foo : Symbol(foo, Decl(augmentedTypesClass3.ts, 11, 11)) //import c5c = require('');