Skip to content

Commit 7fc9755

Browse files
super-tupledaboross
authored andcommitted
Fix tuples being invariant
Tuples should always be covariant over their inner types. Co-authored-by: David Ross <daboross@daboross.net>
1 parent 24168e3 commit 7fc9755

File tree

1 file changed

+4
-1
lines changed

1 file changed

+4
-1
lines changed

chalk-solve/src/infer/unify.rs

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -218,7 +218,10 @@ impl<'t, I: Interner> Unifier<'t, I> {
218218
}
219219
self.zip_substs(
220220
variance,
221-
None,
221+
Some(Variances::from(
222+
&self.interner,
223+
std::iter::repeat(Variance::Covariant).take(*arity_a),
224+
)),
222225
substitution_a.as_slice(interner),
223226
substitution_b.as_slice(interner),
224227
)

0 commit comments

Comments
 (0)