Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[move-prover] parenthesis the ITE expression when translating to boogie
This is motivated by the following expression generated by the spec simplifier, which causes a type error in Boogie (but no type error in our AST): ```boogie (x > 0) && if (true) then (0) else (1) >= 0; ``` In this case, Boogie complains that the then-else branches return different types which is int (for the then branch) and bool (for the else branch). This is caused by the fact that the ITE expression itself is not enclosed in a parenthesis. The correct encoding should be: ```boogie (x > 0) && (if (true) then (0) else (1)) >= 0; ``` This commit fixes this issue by wrapping the ITE expression with (). Closes: #9686
- Loading branch information