Probable bugs
- Bad type argument type
Reports type arguments passed to generic types which do not subtype the expected upper bound.
- Bad type variable default type
Reports default types in type variable declarations which do not subtype the upper bound.
- Conflicting type variable count
Reports conflicting partial container declarations due to a mismatch between the number of type variables.
- Conflicting type variable variance
Reports type variables whose variance (in, out, or unchecked) conflicts with another declaration.
- Cyclic class/module alias declaration
Reports cyclic declarations of class or module aliases.
- Duplicate declaration
Reports duplicate declarations of classes, modules, interfaces, constants, global variables, type aliases, and methods.
- Duplicate keyword parameter
Reports duplicate keyword parameters in methods, blocks, and proc types.
- Inconsistent class/module alias
Reports inconsistent declarations of class and module aliases.
- Incorrect inclusion call
Reports inclusion calls (include, prepend and extend) that reference a class.
- Incorrect type argument count
Reports references to generic types with the incorrect number of type arguments.
- Incorrect type argument variance
Reports type arguments used in an inheritance statement (a superclass clause, self-type, or an inclusion call) which have incorrect variances.
- Invalid method overload
Reports invalid method overloads (...).
- Invalid type argument usage
Reports type variables used as arguments in locations that their variance does not allow, so long as they are not marked as unchecked.
- Unresolved reference
Reports references that cannot be resolved to any declaration.