[ty] Skip caching trivially assignable types (#28936)

## Summary

We avoid retaining a Salsa query entry when constraint-set assignability
is already known. Trivially assignable types now return an
always-satisfied constraint set before we intern the type pair and run
the query.
This commit is contained in:
Charlie Marsh authored and GitHub committed 2026-09-27 12:19:54 -04:00
1 parent 25b90ded42
commit 85077a70e8
1 file changed
+6
@@ -581,6 +581,12 @@ impl<'db> Type<'db> {
})
}
self.assert_not_recursive_var();
target.assert_not_recursive_var();
if self.is_trivially_constraint_set_assignable_to(db, target) {
return Cow::Owned(OwnedConstraintSet::always());
}
let program = env.program(db);
Cow::Borrowed(when_assignable_to_owned_impl(
db,