@@ -319,16 +319,11 @@ impl<I: Interner> AntiUnifier<'_, '_, I> {
319319 . map ( |( & name, substitution) | TyKind :: Raw ( name, substitution) . intern ( interner) )
320320 . unwrap_or_else ( || self . new_ty_variable ( ) ) ,
321321 ( TyKind :: Never , TyKind :: Never ) => TyKind :: Never . intern ( interner) ,
322- ( TyKind :: Array ( substitution_a) , TyKind :: Array ( substitution_b) ) => {
323- let substitution = Substitution :: from_iter (
324- interner,
325- substitution_a
326- . iter ( interner)
327- . zip ( substitution_b. iter ( interner) )
328- . map ( |( p1, p2) | self . aggregate_generic_args ( p1, p2) ) ,
329- ) ;
330- TyKind :: Array ( substitution) . intern ( interner)
331- }
322+ ( TyKind :: Array ( ty_a, const_a) , TyKind :: Array ( ty_b, const_b) ) => TyKind :: Array (
323+ self . aggregate_tys ( ty_a, ty_b) ,
324+ self . aggregate_consts ( const_a, const_b) ,
325+ )
326+ . intern ( interner) ,
332327 ( TyKind :: Closure ( id_a, substitution_a) , TyKind :: Closure ( id_b, substitution_b) ) => self
333328 . aggregate_name_and_substs ( id_a, substitution_a, id_b, substitution_b)
334329 . map ( |( & name, substitution) | TyKind :: Closure ( name, substitution) . intern ( interner) )
0 commit comments