-eqLastWith eqBid (LastBranch bid) (LastBranch bid') = eqBid bid bid'
-eqLastWith eqBid c@(LastCondBranch _ _ _) c'@(LastCondBranch _ _ _) =
- eqBid (cml_true c) (cml_true c') && eqBid (cml_false c) (cml_false c')
-eqLastWith _ (LastReturn s) (LastReturn s') = s == s'
-eqLastWith _ (LastJump e s) (LastJump e' s') = e == e' && s == s'
-eqLastWith eqBid c@(LastCall _ _ s) c'@(LastCall _ _ s') =
- cml_target c == cml_target c' && eqMaybeWith eqBid (cml_cont c) (cml_cont c') &&
- s == s'
-eqLastWith eqBid (LastSwitch e bs) (LastSwitch e' bs') =
- e == e' && eqLstWith (eqMaybeWith eqBid) bs bs'
+eqLastWith eqBid (LastBranch bid1) (LastBranch bid2) = eqBid bid1 bid2
+eqLastWith eqBid (LastCondBranch c1 t1 f1) (LastCondBranch c2 t2 f2) =
+ c1 == c2 && eqBid t1 t2 && eqBid f1 f2
+eqLastWith eqBid (LastCall t1 c1 a1 r1 u1) (LastCall t2 c2 a2 r2 u2) =
+ t1 == t2 && eqMaybeWith eqBid c1 c2 && a1 == a2 && r1 == r2 && u1 == u2
+eqLastWith eqBid (LastSwitch e1 bs1) (LastSwitch e2 bs2) =
+ e1 == e2 && eqLstWith (eqMaybeWith eqBid) bs1 bs2