@@ -252,20 +252,19 @@ let if_statement e loc iftrue truestop iffalse falsestop =
252252 let e = simplify_condition e in
253253 match iftrue, iffalse with
254254 (* Shared statements *)
255- | (J. If_statement (e', iftrue', iffalse'), loc ), _ when Poly. (iffalse = unopt iffalse')
256- -> if_statement_2 (J. EBin (J. And , e, e')) loc iftrue' truestop iffalse falsestop
257- | (J. If_statement (e' , iftrue' , iffalse' ), loc ), _ when Poly. (iffalse = iftrue') ->
255+ | (J. If_statement (e' , iftrue' , iffalse' ), _ ), _ when Poly. (iffalse = unopt iffalse') ->
256+ if_statement_2 (J. EBin (J. And , e, e')) loc iftrue' truestop iffalse falsestop
257+ | (J. If_statement (e' , iftrue' , iffalse' ), _ ), _ when Poly. (iffalse = iftrue') ->
258258 if_statement_2
259259 (J. EBin (J. And , e, J. EUn (J. Not , e')))
260260 loc
261261 (unopt iffalse')
262262 truestop
263263 iffalse
264264 falsestop
265- | _ , (J. If_statement (e' , iftrue' , iffalse' ), loc ) when Poly. (iftrue = iftrue') ->
265+ | _ , (J. If_statement (e' , iftrue' , iffalse' ), _ ) when Poly. (iftrue = iftrue') ->
266266 if_statement_2 (J. EBin (J. Or , e, e')) loc iftrue truestop (unopt iffalse') falsestop
267- | _, (J. If_statement (e', iftrue', iffalse'), loc) when Poly. (iftrue = unopt iffalse')
268- ->
267+ | _ , (J. If_statement (e' , iftrue' , iffalse' ), _ ) when Poly. (iftrue = unopt iffalse') ->
269268 if_statement_2
270269 (J. EBin (J. Or , e, J. EUn (J. Not , e')))
271270 loc
0 commit comments