Microsoft/TypeScript

Bug with resolveClassOrInterfaceMembers

オープン

#3,539 opened on 2015/06/17

 (8 件のコメント) (0 件のリアクション) (0 人の担当者)TypeScript (13,395 件のフォーク)batch import
Help WantedSuggestion

Repository metrics

Stars
 (108,860 個のスター)
PR merge metrics
 (PR metrics pending)

説明

https://github.com/Microsoft/TypeScript/blob/6db4faf4883636e70ef7a99401b9dbc5d1a58631/src/compiler/checker.ts#L2894

interface monster {
    (a: "a"): void;
    (b: "b"): void;
    (c: "c"): void;
    (d: "d"): void;
    (e: "e"): void;
    (x: string): void;
}

interface m1 extends monster {
    a();
}
interface m2 extends monster {
    b();
}
interface m3 extends monster { }
interface m4 extends monster { }

interface m5 extends m1, m2, m3, m4 { }

var waa: m5;
waa("a")

The compiler finds 24 call expressions because it appends 'monster' from each base type.

コントリビューターガイド