diff --git a/lib/Sema/CSSolver.cpp b/lib/Sema/CSSolver.cpp index 5d76a81c7a2ea..f7aac7f597922 100644 --- a/lib/Sema/CSSolver.cpp +++ b/lib/Sema/CSSolver.cpp @@ -2135,7 +2135,9 @@ void ConstraintSystem::partitionGenericOperators(ArrayRef constrai // overload choices first. for (auto arg : argFnType->getParams()) { auto argType = arg.getPlainType(); - if (!argType || argType->hasTypeVariable()) + argType = getFixedTypeRecursive(argType, /*wantRValue=*/true); + + if (argType->isTypeVariableOrMember()) continue; if (conformsToKnownProtocol(DC, argType, KnownProtocolKind::AdditiveArithmetic)) {