TypeScript/tests/baselines/reference/identicalCallSignatures2.types

24 lines
1.1 KiB
Plaintext
Raw Normal View History

2014-08-15 23:33:16 +02:00
=== 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> {
2015-04-13 23:01:57 +02:00
>Base : Base<T>, Symbol(Base, Decl(identicalCallSignatures2.ts, 0, 0))
>T : T, Symbol(T, Decl(identicalCallSignatures2.ts, 3, 15))
2014-08-15 23:33:16 +02:00
(x: number): string;
2015-04-13 23:01:57 +02:00
>x : number, Symbol(x, Decl(identicalCallSignatures2.ts, 4, 5))
2014-08-15 23:33:16 +02:00
}
interface I extends Base<string>, Base<number> { }
2015-04-13 23:01:57 +02:00
>I : I, Symbol(I, Decl(identicalCallSignatures2.ts, 5, 1))
>Base : Base<T>, Symbol(Base, Decl(identicalCallSignatures2.ts, 0, 0))
>Base : Base<T>, Symbol(Base, Decl(identicalCallSignatures2.ts, 0, 0))
2014-08-15 23:33:16 +02:00
interface I2<T> extends Base<string>, Base<number> { }
2015-04-13 23:01:57 +02:00
>I2 : I2<T>, Symbol(I2, Decl(identicalCallSignatures2.ts, 7, 50))
>T : T, Symbol(T, Decl(identicalCallSignatures2.ts, 9, 13))
>Base : Base<T>, Symbol(Base, Decl(identicalCallSignatures2.ts, 0, 0))
>Base : Base<T>, Symbol(Base, Decl(identicalCallSignatures2.ts, 0, 0))
2014-08-15 23:33:16 +02:00