16e28156e5
This vastly improves our error tolerance and messages for when the user writes an illegal heritage clause sequence.
28 lines
1.4 KiB
Plaintext
28 lines
1.4 KiB
Plaintext
tests/cases/conformance/interfaces/interfaceDeclarations/interfaceThatInheritsFromItself.ts(10,15): error TS1176: Interface declaration cannot have 'implements' clause.
|
|
tests/cases/conformance/interfaces/interfaceDeclarations/interfaceThatInheritsFromItself.ts(1,11): error TS2310: Type 'Foo' recursively references itself as a base type.
|
|
tests/cases/conformance/interfaces/interfaceDeclarations/interfaceThatInheritsFromItself.ts(4,11): error TS2310: Type 'Foo2<T>' recursively references itself as a base type.
|
|
tests/cases/conformance/interfaces/interfaceDeclarations/interfaceThatInheritsFromItself.ts(7,11): error TS2310: Type 'Foo3<T>' recursively references itself as a base type.
|
|
|
|
|
|
==== tests/cases/conformance/interfaces/interfaceDeclarations/interfaceThatInheritsFromItself.ts (4 errors) ====
|
|
interface Foo extends Foo { // error
|
|
~~~
|
|
!!! error TS2310: Type 'Foo' recursively references itself as a base type.
|
|
}
|
|
|
|
interface Foo2<T> extends Foo2<T> { // error
|
|
~~~~
|
|
!!! error TS2310: Type 'Foo2<T>' recursively references itself as a base type.
|
|
}
|
|
|
|
interface Foo3<T> extends Foo3<string> { // error
|
|
~~~~
|
|
!!! error TS2310: Type 'Foo3<T>' recursively references itself as a base type.
|
|
}
|
|
|
|
interface Bar implements Bar { // error
|
|
~~~~~~~~~~
|
|
!!! error TS1176: Interface declaration cannot have 'implements' clause.
|
|
}
|
|
|
|
|