not_ iterable_ spread
Spread elements in list or set literals must implement 'Iterable'.
Description
#
The analyzer produces this diagnostic when the static type of the
expression of a spread element that appears in either a list literal or a
set literal doesn't implement the type
Iterable
.
Example
#The following code produces this diagnostic:
var m = <String, int>{'a': 0, 'b': 1};
var s = <String>{...m};
Common fixes
#The most common fix is to replace the expression with one that produces an iterable object:
var m = <String, int>{'a': 0, 'b': 1};
var s = <String>{...m.keys};
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.