23 lines
1 KiB
Text
23 lines
1 KiB
Text
=== 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))
|
|
|