@@ -232,8 +232,8 @@ impl HirEqInterExpr<'_, '_, '_> {
232232 ( & ExprKind :: If ( lc, lt, ref le) , & ExprKind :: If ( rc, rt, ref re) ) => {
233233 self . eq_expr ( lc, rc) && self . eq_expr ( & * * lt, & * * rt) && both ( le, re, |l, r| self . eq_expr ( l, r) )
234234 } ,
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
237237 } ,
238238 ( & ExprKind :: Lit ( ref l) , & ExprKind :: Lit ( ref r) ) => l. node == r. node ,
239239 ( & ExprKind :: Loop ( lb, ref ll, ref lls, _) , & ExprKind :: Loop ( rb, ref rl, ref rls, _) ) => {
@@ -668,9 +668,10 @@ impl<'a, 'tcx> SpanlessHash<'a, 'tcx> {
668668 }
669669 }
670670 } ,
671- ExprKind :: Let ( ref pat, ref expr, _) => {
671+ ExprKind :: Let ( ref pat, ref expr, _, source ) => {
672672 self . hash_expr ( expr) ;
673673 self . hash_pat ( pat) ;
674+ std:: mem:: discriminant ( & source) . hash ( & mut self . s ) ;
674675 } ,
675676 ExprKind :: LlvmInlineAsm ( ..) | ExprKind :: Err => { } ,
676677 ExprKind :: Lit ( ref l) => {
0 commit comments