1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
|
=== tests/cases/conformance/types/objectTypeLiteral/callSignatures/identicalCallSignatures2.ts ===
// Normally it is an error to have multiple overloads with identical signatures in a single type declaration.
// Here the multiple overloads come from multiple bases.
interface Base<T> {
>Base : Symbol(Base, Decl(identicalCallSignatures2.ts, 0, 0))
>T : Symbol(T, Decl(identicalCallSignatures2.ts, 3, 15))
(x: number): string;
>x : Symbol(x, Decl(identicalCallSignatures2.ts, 4, 5))
}
interface I extends Base<string>, Base<number> { }
>I : Symbol(I, Decl(identicalCallSignatures2.ts, 5, 1))
>Base : Symbol(Base, Decl(identicalCallSignatures2.ts, 0, 0))
>Base : Symbol(Base, Decl(identicalCallSignatures2.ts, 0, 0))
interface I2<T> extends Base<string>, Base<number> { }
>I2 : Symbol(I2, Decl(identicalCallSignatures2.ts, 7, 50))
>T : Symbol(T, Decl(identicalCallSignatures2.ts, 9, 13))
>Base : Symbol(Base, Decl(identicalCallSignatures2.ts, 0, 0))
>Base : Symbol(Base, Decl(identicalCallSignatures2.ts, 0, 0))
|