Skip to content

Commit ae54fcc

Browse files
committed
Avoid duplicated constructions of expression
in add_guarded_claim.
1 parent 2d47d05 commit ae54fcc

File tree

1 file changed

+6
-11
lines changed

1 file changed

+6
-11
lines changed

src/analyses/goto_check.cpp

Lines changed: 6 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1474,24 +1474,19 @@ void goto_checkt::add_guarded_claim(
14741474
const exprt &src_expr,
14751475
const guardt &guard)
14761476
{
1477-
exprt simplified_expr(asserted_expr);
1478-
14791477
// first try simplifier on it
1480-
if(enable_simplify)
1481-
simplify(simplified_expr, ns);
1478+
exprt simplified_expr =
1479+
enable_simplify ? simplify_expr(asserted_expr, ns) : asserted_expr;
14821480

14831481
// throw away trivial properties?
14841482
if(!retain_trivial && simplified_expr.is_true())
14851483
return;
14861484

14871485
// add the guard
1488-
1489-
exprt guarded_expr;
1490-
1491-
if(guard.is_true())
1492-
guarded_expr.swap(simplified_expr);
1493-
else
1494-
guarded_expr = implies_exprt(guard.as_expr(), std::move(simplified_expr));
1486+
exprt guarded_expr =
1487+
guard.is_true()
1488+
? simplified_expr
1489+
: implies_exprt{guard.as_expr(), std::move(simplified_expr)};
14951490

14961491
if(assertions.insert(guarded_expr).second)
14971492
{

0 commit comments

Comments
 (0)