invalid_ use_ of_ covariant_ in_ extension
Can't have modifier '{0}' in an extension.
Description
#
The analyzer produces this diagnostic when a member declared inside an
extension uses the keyword
covariant
in the declaration of a parameter.
Extensions aren't classes and don't have subclasses, so the keyword serves
no purpose.
Example
#
The following code produces this diagnostic because
i
is marked as being
covariant:
extension E on String {
void a(covariant int i) {}
}
Common fixes
#Remove the covariant
keyword:
extension E on String {
void a(int i) {}
}
Unless stated otherwise, the documentation on this site reflects Dart 3.9.2. Page last updated on 2025-9-1. View source or report an issue.