diff --git a/src/Psalm/Internal/Analyzer/Statements/Expression/Call/ArgumentsAnalyzer.php b/src/Psalm/Internal/Analyzer/Statements/Expression/Call/ArgumentsAnalyzer.php index 5965782516d..c72588933a9 100644 --- a/src/Psalm/Internal/Analyzer/Statements/Expression/Call/ArgumentsAnalyzer.php +++ b/src/Psalm/Internal/Analyzer/Statements/Expression/Call/ArgumentsAnalyzer.php @@ -832,7 +832,11 @@ public static function checkArgumentsMatch( $has_unpacked_non_keyed_array = true; } - $key_types = $array_type->type_params[0]->getAtomicTypes(); + if (isset($array_type->type_params)) { + $key_types = $array_type->type_params[0]->getAtomicTypes(); + } elseif ($array_type instanceof Type\Atomic\TClassStringMap) { + $key_types = Type::getNonFalsyString(); + } if ($array_type->type_params[0]->isString()) { $named_args_was_used = true;