@@ -292,9 +292,11 @@ impl HirEqInterExpr<'_, '_, '_> {
292
292
( & ExprKind :: Call ( l_fun, l_args) , & ExprKind :: Call ( r_fun, r_args) ) => {
293
293
self . inner . allow_side_effects && self . eq_expr ( l_fun, r_fun) && self . eq_exprs ( l_args, r_args)
294
294
} ,
295
- ( & ExprKind :: Cast ( lx, lt) , & ExprKind :: Cast ( rx, rt) ) | ( & ExprKind :: Type ( lx , lt ) , & ExprKind :: Type ( rx , rt ) ) => {
295
+ ( & ExprKind :: Cast ( lx, lt) , & ExprKind :: Cast ( rx, rt) ) => {
296
296
self . eq_expr ( lx, rx) && self . eq_ty ( lt, rt)
297
297
} ,
298
+ ( & ExprKind :: Closure ( _l) , & ExprKind :: Closure ( _r) ) => false ,
299
+ ( & ExprKind :: ConstBlock ( lb) , & ExprKind :: ConstBlock ( rb) ) => self . eq_body ( lb. body , rb. body ) ,
298
300
( & ExprKind :: Continue ( li) , & ExprKind :: Continue ( ri) ) => {
299
301
both ( & li. label , & ri. label , |l, r| l. ident . name == r. ident . name )
300
302
} ,
@@ -345,7 +347,9 @@ impl HirEqInterExpr<'_, '_, '_> {
345
347
&& over ( lf, rf, |l, r| self . eq_expr_field ( l, r) )
346
348
} ,
347
349
( & ExprKind :: Tup ( l_tup) , & ExprKind :: Tup ( r_tup) ) => self . eq_exprs ( l_tup, r_tup) ,
350
+ ( & ExprKind :: Type ( le, lt) , & ExprKind :: Type ( re, rt) ) => self . eq_expr ( le, re) && self . eq_ty ( lt, rt) ,
348
351
( & ExprKind :: Unary ( l_op, le) , & ExprKind :: Unary ( r_op, re) ) => l_op == r_op && self . eq_expr ( le, re) ,
352
+ ( & ExprKind :: Yield ( le, _) , & ExprKind :: Yield ( re, _) ) => return self . eq_expr ( le, re) ,
349
353
(
350
354
// Else branches for branches above, grouped as per `match_same_arms`.
351
355
| & ExprKind :: AddrOf ( ..)
0 commit comments