DeepSource has joined Harness. Learn more
Dart Analyze logoDart Analyze/
DRT-W1466

Invalid key type in map literalDRT-W1466

Major severityMajor
Bug Risk categoryBug Risk

The analyzer produces this diagnostic when a key of a key-value pair in a map literal has a type that isn't assignable to the key type of the map.

Example

The following code produces this diagnostic because 2 is an int, but the keys of the map are required to be Strings:

var m = <String, String>{2 : 'a'};

Common fixes

If the type of the map is correct, then change the key to have the correct type:

var m = <String, String>{'2' : 'a'};

If the type of the key is correct, then change the key type of the map:

var m = <int, String>{2 : 'a'};