=== tests/cases/compiler/commentsModules.ts === /** Module comment*/ module m1 { >m1 : typeof m1, Symbol(m1, Decl(commentsModules.ts, 0, 0)) /** b's comment*/ export var b: number; >b : number, Symbol(b, Decl(commentsModules.ts, 3, 14)) /** foo's comment*/ function foo() { >foo : () => number, Symbol(foo, Decl(commentsModules.ts, 3, 25)) return b; >b : number, Symbol(b, Decl(commentsModules.ts, 3, 14)) } /** m2 comments*/ export module m2 { >m2 : typeof m2, Symbol(m2, Decl(commentsModules.ts, 7, 5)) /** class comment;*/ export class c { >c : c, Symbol(c, Decl(commentsModules.ts, 9, 22)) }; /** i*/ export var i = new c(); >i : c, Symbol(i, Decl(commentsModules.ts, 14, 18)) >new c() : c >c : typeof c, Symbol(c, Decl(commentsModules.ts, 9, 22)) } /** exported function*/ export function fooExport() { >fooExport : () => number, Symbol(fooExport, Decl(commentsModules.ts, 15, 5)) return foo(); >foo() : number >foo : () => number, Symbol(foo, Decl(commentsModules.ts, 3, 25)) } // shouldn't appear export function foo2Export(/**hm*/ a: string) { >foo2Export : (a: string) => void, Symbol(foo2Export, Decl(commentsModules.ts, 19, 5)) >a : string, Symbol(a, Decl(commentsModules.ts, 22, 31)) } /** foo3Export * comment */ export function foo3Export() { >foo3Export : () => void, Symbol(foo3Export, Decl(commentsModules.ts, 23, 5)) } /** foo4Export * comment */ function foo4Export() { >foo4Export : () => void, Symbol(foo4Export, Decl(commentsModules.ts, 29, 5)) } } // trailing comment module m1.fooExport(); >m1.fooExport() : number >m1.fooExport : () => number, Symbol(m1.fooExport, Decl(commentsModules.ts, 15, 5)) >m1 : typeof m1, Symbol(m1, Decl(commentsModules.ts, 0, 0)) >fooExport : () => number, Symbol(m1.fooExport, Decl(commentsModules.ts, 15, 5)) var myvar = new m1.m2.c(); >myvar : m1.m2.c, Symbol(myvar, Decl(commentsModules.ts, 38, 3)) >new m1.m2.c() : m1.m2.c >m1.m2.c : typeof m1.m2.c, Symbol(m1.m2.c, Decl(commentsModules.ts, 9, 22)) >m1.m2 : typeof m1.m2, Symbol(m1.m2, Decl(commentsModules.ts, 7, 5)) >m1 : typeof m1, Symbol(m1, Decl(commentsModules.ts, 0, 0)) >m2 : typeof m1.m2, Symbol(m1.m2, Decl(commentsModules.ts, 7, 5)) >c : typeof m1.m2.c, Symbol(m1.m2.c, Decl(commentsModules.ts, 9, 22)) /** module comment of m2.m3*/ module m2.m3 { >m2 : typeof m2, Symbol(m2, Decl(commentsModules.ts, 38, 26)) >m3 : typeof m3, Symbol(m3, Decl(commentsModules.ts, 40, 10)) /** Exported class comment*/ export class c { >c : c, Symbol(c, Decl(commentsModules.ts, 40, 14)) } } /* trailing dotted module comment*/ new m2.m3.c(); >new m2.m3.c() : m2.m3.c >m2.m3.c : typeof m2.m3.c, Symbol(m2.m3.c, Decl(commentsModules.ts, 40, 14)) >m2.m3 : typeof m2.m3, Symbol(m2.m3, Decl(commentsModules.ts, 40, 10)) >m2 : typeof m2, Symbol(m2, Decl(commentsModules.ts, 38, 26)) >m3 : typeof m2.m3, Symbol(m2.m3, Decl(commentsModules.ts, 40, 10)) >c : typeof m2.m3.c, Symbol(m2.m3.c, Decl(commentsModules.ts, 40, 14)) /** module comment of m3.m4.m5*/ module m3.m4.m5 { >m3 : typeof m3, Symbol(m3, Decl(commentsModules.ts, 45, 14)) >m4 : typeof m4, Symbol(m4, Decl(commentsModules.ts, 47, 10)) >m5 : typeof m5, Symbol(m5, Decl(commentsModules.ts, 47, 13)) /** Exported class comment*/ export class c { >c : c, Symbol(c, Decl(commentsModules.ts, 47, 17)) } } // trailing dotted module 2 new m3.m4.m5.c(); >new m3.m4.m5.c() : m3.m4.m5.c >m3.m4.m5.c : typeof m3.m4.m5.c, Symbol(m3.m4.m5.c, Decl(commentsModules.ts, 47, 17)) >m3.m4.m5 : typeof m3.m4.m5, Symbol(m3.m4.m5, Decl(commentsModules.ts, 47, 13)) >m3.m4 : typeof m3.m4, Symbol(m3.m4, Decl(commentsModules.ts, 47, 10)) >m3 : typeof m3, Symbol(m3, Decl(commentsModules.ts, 45, 14)) >m4 : typeof m3.m4, Symbol(m3.m4, Decl(commentsModules.ts, 47, 10)) >m5 : typeof m3.m4.m5, Symbol(m3.m4.m5, Decl(commentsModules.ts, 47, 13)) >c : typeof m3.m4.m5.c, Symbol(m3.m4.m5.c, Decl(commentsModules.ts, 47, 17)) /** module comment of m4.m5.m6*/ module m4.m5.m6 { >m4 : typeof m4, Symbol(m4, Decl(commentsModules.ts, 52, 17)) >m5 : typeof m5, Symbol(m5, Decl(commentsModules.ts, 54, 10)) >m6 : typeof m6, Symbol(m6, Decl(commentsModules.ts, 54, 13)) export module m7 { >m7 : typeof m7, Symbol(m7, Decl(commentsModules.ts, 54, 17)) /** Exported class comment*/ export class c { >c : c, Symbol(c, Decl(commentsModules.ts, 55, 22)) } } /* trailing inner module */ /* multiple comments*/ } new m4.m5.m6.m7.c(); >new m4.m5.m6.m7.c() : m4.m5.m6.m7.c >m4.m5.m6.m7.c : typeof m4.m5.m6.m7.c, Symbol(m4.m5.m6.m7.c, Decl(commentsModules.ts, 55, 22)) >m4.m5.m6.m7 : typeof m4.m5.m6.m7, Symbol(m4.m5.m6.m7, Decl(commentsModules.ts, 54, 17)) >m4.m5.m6 : typeof m4.m5.m6, Symbol(m4.m5.m6, Decl(commentsModules.ts, 54, 13)) >m4.m5 : typeof m4.m5, Symbol(m4.m5, Decl(commentsModules.ts, 54, 10)) >m4 : typeof m4, Symbol(m4, Decl(commentsModules.ts, 52, 17)) >m5 : typeof m4.m5, Symbol(m4.m5, Decl(commentsModules.ts, 54, 10)) >m6 : typeof m4.m5.m6, Symbol(m4.m5.m6, Decl(commentsModules.ts, 54, 13)) >m7 : typeof m4.m5.m6.m7, Symbol(m4.m5.m6.m7, Decl(commentsModules.ts, 54, 17)) >c : typeof m4.m5.m6.m7.c, Symbol(m4.m5.m6.m7.c, Decl(commentsModules.ts, 55, 22)) /** module comment of m5.m6.m7*/ module m5.m6.m7 { >m5 : typeof m5, Symbol(m5, Decl(commentsModules.ts, 61, 20)) >m6 : typeof m6, Symbol(m6, Decl(commentsModules.ts, 63, 10)) >m7 : typeof m7, Symbol(m7, Decl(commentsModules.ts, 63, 13)) /** module m8 comment*/ export module m8 { >m8 : typeof m8, Symbol(m8, Decl(commentsModules.ts, 63, 17)) /** Exported class comment*/ export class c { >c : c, Symbol(c, Decl(commentsModules.ts, 65, 22)) } } } new m5.m6.m7.m8.c(); >new m5.m6.m7.m8.c() : m5.m6.m7.m8.c >m5.m6.m7.m8.c : typeof m5.m6.m7.m8.c, Symbol(m5.m6.m7.m8.c, Decl(commentsModules.ts, 65, 22)) >m5.m6.m7.m8 : typeof m5.m6.m7.m8, Symbol(m5.m6.m7.m8, Decl(commentsModules.ts, 63, 17)) >m5.m6.m7 : typeof m5.m6.m7, Symbol(m5.m6.m7, Decl(commentsModules.ts, 63, 13)) >m5.m6 : typeof m5.m6, Symbol(m5.m6, Decl(commentsModules.ts, 63, 10)) >m5 : typeof m5, Symbol(m5, Decl(commentsModules.ts, 61, 20)) >m6 : typeof m5.m6, Symbol(m5.m6, Decl(commentsModules.ts, 63, 10)) >m7 : typeof m5.m6.m7, Symbol(m5.m6.m7, Decl(commentsModules.ts, 63, 13)) >m8 : typeof m5.m6.m7.m8, Symbol(m5.m6.m7.m8, Decl(commentsModules.ts, 63, 17)) >c : typeof m5.m6.m7.m8.c, Symbol(m5.m6.m7.m8.c, Decl(commentsModules.ts, 65, 22)) module m6.m7 { >m6 : typeof m6, Symbol(m6, Decl(commentsModules.ts, 71, 20)) >m7 : typeof m7, Symbol(m7, Decl(commentsModules.ts, 72, 10)) export module m8 { >m8 : typeof m8, Symbol(m8, Decl(commentsModules.ts, 72, 14)) /** Exported class comment*/ export class c { >c : c, Symbol(c, Decl(commentsModules.ts, 73, 22)) } } } new m6.m7.m8.c(); >new m6.m7.m8.c() : m6.m7.m8.c >m6.m7.m8.c : typeof m6.m7.m8.c, Symbol(m6.m7.m8.c, Decl(commentsModules.ts, 73, 22)) >m6.m7.m8 : typeof m6.m7.m8, Symbol(m6.m7.m8, Decl(commentsModules.ts, 72, 14)) >m6.m7 : typeof m6.m7, Symbol(m6.m7, Decl(commentsModules.ts, 72, 10)) >m6 : typeof m6, Symbol(m6, Decl(commentsModules.ts, 71, 20)) >m7 : typeof m6.m7, Symbol(m6.m7, Decl(commentsModules.ts, 72, 10)) >m8 : typeof m6.m7.m8, Symbol(m6.m7.m8, Decl(commentsModules.ts, 72, 14)) >c : typeof m6.m7.m8.c, Symbol(m6.m7.m8.c, Decl(commentsModules.ts, 73, 22)) module m7.m8 { >m7 : typeof m7, Symbol(m7, Decl(commentsModules.ts, 79, 17)) >m8 : typeof m8, Symbol(m8, Decl(commentsModules.ts, 80, 10)) /** module m9 comment*/ export module m9 { >m9 : typeof m9, Symbol(m9, Decl(commentsModules.ts, 80, 14)) /** Exported class comment*/ export class c { >c : c, Symbol(c, Decl(commentsModules.ts, 82, 22)) } /** class d */ class d { >d : d, Symbol(d, Decl(commentsModules.ts, 85, 9)) } // class e export class e { >e : e, Symbol(e, Decl(commentsModules.ts, 89, 9)) } } } new m7.m8.m9.c(); >new m7.m8.m9.c() : m7.m8.m9.c >m7.m8.m9.c : typeof m7.m8.m9.c, Symbol(m7.m8.m9.c, Decl(commentsModules.ts, 82, 22)) >m7.m8.m9 : typeof m7.m8.m9, Symbol(m7.m8.m9, Decl(commentsModules.ts, 80, 14)) >m7.m8 : typeof m7.m8, Symbol(m7.m8, Decl(commentsModules.ts, 80, 10)) >m7 : typeof m7, Symbol(m7, Decl(commentsModules.ts, 79, 17)) >m8 : typeof m7.m8, Symbol(m7.m8, Decl(commentsModules.ts, 80, 10)) >m9 : typeof m7.m8.m9, Symbol(m7.m8.m9, Decl(commentsModules.ts, 80, 14)) >c : typeof m7.m8.m9.c, Symbol(m7.m8.m9.c, Decl(commentsModules.ts, 82, 22))