The compiler has detected circular parameter usage between classes. This is the case if a class contains a plug-in parameter of the same class, or of a class that in turn contains plug-in parameters of the type of the first class. If the compiler would allow this, it would lead to an infinite list of plug-in parameters that include each other recursively.
This applies to the base class of a plug-in parameter, and also to its default plug-in.
Example:
class A { default: B param test ; Error! B has A as a plug-in parameter endparam } class B { default: A param test endparam }
Fix this error by breaking the chain of circular references. For example, you could introduce a new base class and refer to that instead:
class Base { } class A(Base) { default: B param test endparam } class B { default: Base param test endparam }
See Also
Errors