//// [tests/cases/compiler/commentOnSignature1.ts] ////

=== b.ts ===
///<reference path='a.ts'/>
function foo2(n: number): void;
>foo2 : { (n: number): void; (s: string): void; }
>     : ^^^ ^^      ^^^    ^^^ ^^      ^^^    ^^^
>n : number
>  : ^^^^^^

// Don't keep this comment.
function foo2(s: string): void;
>foo2 : { (n: number): void; (s: string): void; }
>     : ^^^ ^^      ^^^    ^^^ ^^      ^^^    ^^^
>s : string
>  : ^^^^^^

function foo2(a: any): void {
>foo2 : { (n: number): void; (s: string): void; }
>     : ^^^ ^^      ^^^    ^^^ ^^      ^^^    ^^^
>a : any
}
=== a.ts ===
/*!=================
    Keep this pinned
   =================
*/

/*! Don't keep this pinned comment */
function foo(n: number): void;
>foo : { (n: number): void; (s: string): void; }
>    : ^^^ ^^      ^^^    ^^^ ^^      ^^^    ^^^
>n : number
>  : ^^^^^^

// Don't keep this comment.
function foo(s: string): void;
>foo : { (n: number): void; (s: string): void; }
>    : ^^^ ^^      ^^^    ^^^ ^^      ^^^    ^^^
>s : string
>  : ^^^^^^

function foo(a: any): void {
>foo : { (n: number): void; (s: string): void; }
>    : ^^^ ^^      ^^^    ^^^ ^^      ^^^    ^^^
>a : any
}

class c {
>c : c
>  : ^

    // dont keep this comment
    constructor(a: string);
>a : string
>  : ^^^^^^

    /*! keep this pinned comment */
    constructor(a: number);
>a : number
>  : ^^^^^^

    constructor(a: any) {
>a : any
    }

    // dont keep this comment
    foo(a: string);
>foo : { (a: string): any; (a: number): any; }
>    : ^^^ ^^      ^^^^^^^^^ ^^      ^^^^^^^^^
>a : string
>  : ^^^^^^

    /*! keep this pinned comment */
    foo(a: number);
>foo : { (a: string): any; (a: number): any; }
>    : ^^^ ^^      ^^^^^^^^^ ^^      ^^^^^^^^^
>a : number
>  : ^^^^^^

    foo(a: any) {
>foo : { (a: string): any; (a: number): any; }
>    : ^^^ ^^      ^^^^^^^^^ ^^      ^^^^^^^^^
>a : any
    }
}

