=== tests/cases/conformance/internalModules/DeclarationMerging/module.d.ts === declare module A { >A : Symbol(A, Decl(module.d.ts, 0, 0), Decl(class.d.ts, 0, 0)) export module Point { >Point : Symbol(Point, Decl(module.d.ts, 0, 18), Decl(class.d.ts, 0, 18)) export var Origin: { >Origin : Symbol(Origin, Decl(module.d.ts, 2, 18)) x: number; >x : Symbol(x, Decl(module.d.ts, 2, 28)) y: number; >y : Symbol(y, Decl(module.d.ts, 3, 22)) } } } === tests/cases/conformance/internalModules/DeclarationMerging/class.d.ts === declare module A { >A : Symbol(A, Decl(module.d.ts, 0, 0), Decl(class.d.ts, 0, 0)) export class Point { >Point : Symbol(Point, Decl(module.d.ts, 0, 18), Decl(class.d.ts, 0, 18)) constructor(x: number, y: number); >x : Symbol(x, Decl(class.d.ts, 2, 20)) >y : Symbol(y, Decl(class.d.ts, 2, 30)) x: number; >x : Symbol(x, Decl(class.d.ts, 2, 42)) y: number; >y : Symbol(y, Decl(class.d.ts, 3, 18)) } } === tests/cases/conformance/internalModules/DeclarationMerging/test.ts === var p: { x: number; y: number; } >p : Symbol(p, Decl(test.ts, 0, 3), Decl(test.ts, 1, 3), Decl(test.ts, 2, 3)) >x : Symbol(x, Decl(test.ts, 0, 8)) >y : Symbol(y, Decl(test.ts, 0, 19)) var p = A.Point.Origin; >p : Symbol(p, Decl(test.ts, 0, 3), Decl(test.ts, 1, 3), Decl(test.ts, 2, 3)) >A.Point.Origin : Symbol(A.Point.Origin, Decl(module.d.ts, 2, 18)) >A.Point : Symbol(A.Point, Decl(module.d.ts, 0, 18), Decl(class.d.ts, 0, 18)) >A : Symbol(A, Decl(module.d.ts, 0, 0), Decl(class.d.ts, 0, 0)) >Point : Symbol(A.Point, Decl(module.d.ts, 0, 18), Decl(class.d.ts, 0, 18)) >Origin : Symbol(A.Point.Origin, Decl(module.d.ts, 2, 18)) var p = new A.Point(0, 0); // unexpected error here, bug 840000 >p : Symbol(p, Decl(test.ts, 0, 3), Decl(test.ts, 1, 3), Decl(test.ts, 2, 3)) >A.Point : Symbol(A.Point, Decl(module.d.ts, 0, 18), Decl(class.d.ts, 0, 18)) >A : Symbol(A, Decl(module.d.ts, 0, 0), Decl(class.d.ts, 0, 0)) >Point : Symbol(A.Point, Decl(module.d.ts, 0, 18), Decl(class.d.ts, 0, 18))