@@ -232,8 +232,8 @@ impl HirEqInterExpr<'_, '_, '_> {
232
232
( & ExprKind :: If ( lc, lt, ref le) , & ExprKind :: If ( rc, rt, ref re) ) => {
233
233
self . eq_expr ( lc, rc) && self . eq_expr ( & * * lt, & * * rt) && both ( le, re, |l, r| self . eq_expr ( l, r) )
234
234
} ,
235
- ( & ExprKind :: Let ( ref lp, ref le, _) , & ExprKind :: Let ( ref rp, ref re, _) ) => {
236
- self . eq_pat ( lp, rp) && self . eq_expr ( le, re)
235
+ ( & ExprKind :: Let ( ref lp, ref le, _, ls ) , & ExprKind :: Let ( ref rp, ref re, _, rs ) ) => {
236
+ self . eq_pat ( lp, rp) && self . eq_expr ( le, re) && ls == rs
237
237
} ,
238
238
( & ExprKind :: Lit ( ref l) , & ExprKind :: Lit ( ref r) ) => l. node == r. node ,
239
239
( & ExprKind :: Loop ( lb, ref ll, ref lls, _) , & ExprKind :: Loop ( rb, ref rl, ref rls, _) ) => {
@@ -668,9 +668,10 @@ impl<'a, 'tcx> SpanlessHash<'a, 'tcx> {
668
668
}
669
669
}
670
670
} ,
671
- ExprKind :: Let ( ref pat, ref expr, _) => {
671
+ ExprKind :: Let ( ref pat, ref expr, _, source ) => {
672
672
self . hash_expr ( expr) ;
673
673
self . hash_pat ( pat) ;
674
+ std:: mem:: discriminant ( & source) . hash ( & mut self . s ) ;
674
675
} ,
675
676
ExprKind :: LlvmInlineAsm ( ..) | ExprKind :: Err => { } ,
676
677
ExprKind :: Lit ( ref l) => {
0 commit comments