@@ -686,7 +686,16 @@ impl HirEqInterExpr<'_, '_, '_> {
686686 . zip ( * args_b)
687687 . all ( |( arg_a, arg_b) | self . eq_const_arg ( arg_a, arg_b) )
688688 } ,
689- ( ConstArgKind :: Literal ( kind_l) , ConstArgKind :: Literal ( kind_r) ) => kind_l == kind_r,
689+ (
690+ ConstArgKind :: Literal {
691+ lit : kind_l,
692+ negated : negated_l,
693+ } ,
694+ ConstArgKind :: Literal {
695+ lit : kind_r,
696+ negated : negated_r,
697+ } ,
698+ ) => kind_l == kind_r && negated_l == negated_r,
690699 ( ConstArgKind :: Array ( l_arr) , ConstArgKind :: Array ( r_arr) ) => {
691700 l_arr. elems . len ( ) == r_arr. elems . len ( )
692701 && l_arr
@@ -703,7 +712,7 @@ impl HirEqInterExpr<'_, '_, '_> {
703712 | ConstArgKind :: TupleCall ( ..)
704713 | ConstArgKind :: Infer ( ..)
705714 | ConstArgKind :: Struct ( ..)
706- | ConstArgKind :: Literal ( .. )
715+ | ConstArgKind :: Literal { .. }
707716 | ConstArgKind :: Array ( ..)
708717 | ConstArgKind :: Error ( ..) ,
709718 _,
@@ -1599,7 +1608,10 @@ impl<'a, 'tcx> SpanlessHash<'a, 'tcx> {
15991608 }
16001609 } ,
16011610 ConstArgKind :: Infer ( ..) | ConstArgKind :: Error ( ..) => { } ,
1602- ConstArgKind :: Literal ( lit) => lit. hash ( & mut self . s ) ,
1611+ ConstArgKind :: Literal { lit, negated } => {
1612+ lit. hash ( & mut self . s ) ;
1613+ negated. hash ( & mut self . s ) ;
1614+ } ,
16031615 }
16041616 }
16051617
0 commit comments