return_ of_ invalid_ type_ from_ closure
Details about the 'return_of_invalid_type_from_closure' diagnostic produced by the Dart analyzer.
The returned type '{0}' isn't returnable from a '{1}' function, as required by the closure's context.
Description
#The analyzer produces this diagnostic when the static type of a returned expression isn't assignable to the return type that the closure is required to have.
Example
#
The following code produces this diagnostic because f is defined to be a
function that returns a String, but the closure assigned to it returns an
int:
String Function(String) f = (s) => 3;
Common fixes
#If the return type is correct, then replace the returned value with a value of the correct type, possibly by converting the existing value:
String Function(String) f = (s) => 3.toString();
Unless stated otherwise, the documentation on this site reflects Dart 3.10.3. Report an issue.