only error when there are typevars

This commit is contained in:
Douglas Creager 2025-12-15 19:55:53 -05:00
parent b55afcd48f
commit 1a15d23793
1 changed files with 3 additions and 1 deletions

View File

@ -1886,7 +1886,9 @@ impl<'db> SpecializationBuilder<'db> {
let when = actual let when = actual
.when_constraint_set_assignable_to(self.db, formal, self.inferable) .when_constraint_set_assignable_to(self.db, formal, self.inferable)
.limit_to_valid_specializations(self.db); .limit_to_valid_specializations(self.db);
if when.is_never_satisfied(self.db) { if when.is_never_satisfied(self.db)
&& (formal.has_typevar(self.db) || actual.has_typevar(self.db))
{
return Err(SpecializationError::NoSolution { return Err(SpecializationError::NoSolution {
parameter: formal, parameter: formal,
argument: actual, argument: actual,