class Foo { final List<int> values; const Foo(this.values); } const _foo = const Foo(const <int>[1,2,3]); This fails in checked mode because "const <int>[1,2,3]" has a rarified type of "List<Object>", not "List<int>"