diff --git a/src/api/c++/z3++.h b/src/api/c++/z3++.h index 28e8aa052..f63590493 100644 --- a/src/api/c++/z3++.h +++ b/src/api/c++/z3++.h @@ -1879,11 +1879,13 @@ namespace z3 { Z3_ast r; if (a.is_int()) { expr zero = a.ctx().int_val(0); - r = Z3_mk_ite(a.ctx(), Z3_mk_ge(a.ctx(), a, zero), a, -a); + expr ge = a >= zero; + r = Z3_mk_ite(a.ctx(), ge, a, zero), a, -a); } else if (a.is_real()) { expr zero = a.ctx().real_val(0); - r = Z3_mk_ite(a.ctx(), Z3_mk_ge(a.ctx(), a, zero), a, -a); + expr ge = a >= zero; + r = Z3_mk_ite(a.ctx(), ge, a, -a); } else { r = Z3_mk_fpa_abs(a.ctx(), a);