recursive_interface_inheritance
'{0}' can't be a superinterface of itself: {1}.
'{0}' can't extend itself.
'{0}' can't implement itself.
'{0}' can't use itself as a mixin.
'{0}' can't use itself as a superclass constraint.
Description
#The analyzer produces this diagnostic when there's a circularity in the type hierarchy. This happens when a type, either directly or indirectly, is declared to be a subtype of itself.
Example
#The following code produces this diagnostic because the class A
is
declared to be a subtype of B
, and B
is a subtype of A
:
dart
class A extends B {}
class B implements A {}
Common fixes
#Change the type hierarchy so that there's no circularity.