Skip to content

Commit 441f706

Browse files
author
Daniel Kroening
authored
Merge pull request diffblue#1823 from diffblue/cleanup
Clean out various bits of legacy code
2 parents f9b9599 + 11714b2 commit 441f706

File tree

9 files changed

+5
-120
lines changed

9 files changed

+5
-120
lines changed

src/goto-programs/goto_convert.cpp

Lines changed: 0 additions & 86 deletions
Original file line numberDiff line numberDiff line change
@@ -515,10 +515,6 @@ void goto_convertt::convert(
515515
convert_atomic_begin(code, dest);
516516
else if(statement==ID_atomic_end)
517517
convert_atomic_end(code, dest);
518-
else if(statement==ID_bp_enforce)
519-
convert_bp_enforce(code, dest);
520-
else if(statement==ID_bp_abortif)
521-
convert_bp_abortif(code, dest);
522518
else if(statement==ID_cpp_delete ||
523519
statement=="cpp_delete[]")
524520
convert_cpp_delete(code, dest);
@@ -1604,88 +1600,6 @@ void goto_convertt::convert_atomic_end(
16041600
copy(code, ATOMIC_END, dest);
16051601
}
16061602

1607-
void goto_convertt::convert_bp_enforce(
1608-
const codet &code,
1609-
goto_programt &dest)
1610-
{
1611-
if(code.operands().size()!=2)
1612-
{
1613-
error().source_location=code.find_source_location();
1614-
error() << "bp_enfroce expects two arguments" << eom;
1615-
throw 0;
1616-
}
1617-
1618-
// do an assume
1619-
exprt op=code.op0();
1620-
1621-
clean_expr(op, dest);
1622-
1623-
goto_programt::targett t=dest.add_instruction(ASSUME);
1624-
t->guard=op;
1625-
t->source_location=code.source_location();
1626-
1627-
// change the assignments
1628-
1629-
goto_programt tmp;
1630-
convert(to_code(code.op1()), tmp);
1631-
1632-
if(!op.is_true())
1633-
{
1634-
exprt constraint(op);
1635-
make_next_state(constraint);
1636-
1637-
Forall_goto_program_instructions(it, tmp)
1638-
{
1639-
if(it->is_assign())
1640-
{
1641-
assert(it->code.get(ID_statement)==ID_assign);
1642-
1643-
// add constrain
1644-
codet constrain(ID_bp_constrain);
1645-
constrain.reserve_operands(2);
1646-
constrain.move_to_operands(it->code);
1647-
constrain.copy_to_operands(constraint);
1648-
it->code.swap(constrain);
1649-
1650-
it->type=OTHER;
1651-
}
1652-
else if(it->is_other() &&
1653-
it->code.get(ID_statement)==ID_bp_constrain)
1654-
{
1655-
// add to constraint
1656-
assert(it->code.operands().size()==2);
1657-
it->code.op1()=
1658-
and_exprt(it->code.op1(), constraint);
1659-
}
1660-
}
1661-
}
1662-
1663-
dest.destructive_append(tmp);
1664-
}
1665-
1666-
void goto_convertt::convert_bp_abortif(
1667-
const codet &code,
1668-
goto_programt &dest)
1669-
{
1670-
if(code.operands().size()!=1)
1671-
{
1672-
error().source_location=code.find_source_location();
1673-
error() << "bp_abortif expects one argument" << eom;
1674-
throw 0;
1675-
}
1676-
1677-
// do an assert
1678-
exprt op=code.op0();
1679-
1680-
clean_expr(op, dest);
1681-
1682-
op.make_not();
1683-
1684-
goto_programt::targett t=dest.add_instruction(ASSERT);
1685-
t->guard.swap(op);
1686-
t->source_location=code.source_location();
1687-
}
1688-
16891603
void goto_convertt::convert_ifthenelse(
16901604
const code_ifthenelset &code,
16911605
goto_programt &dest)

src/goto-programs/goto_convert_class.h

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -234,8 +234,6 @@ class goto_convertt:public messaget
234234
void convert_end_thread(const codet &code, goto_programt &dest);
235235
void convert_atomic_begin(const codet &code, goto_programt &dest);
236236
void convert_atomic_end(const codet &code, goto_programt &dest);
237-
void convert_bp_enforce(const codet &code, goto_programt &dest);
238-
void convert_bp_abortif(const codet &code, goto_programt &dest);
239237
void convert_msc_try_finally(const codet &code, goto_programt &dest);
240238
void convert_msc_try_except(const codet &code, goto_programt &dest);
241239
void convert_msc_leave(const codet &code, goto_programt &dest);

src/util/decision_procedure.cpp

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -11,10 +11,4 @@ Author: Daniel Kroening, [email protected]
1111

1212
#include "decision_procedure.h"
1313

14-
#include <cassert>
1514

16-
bool decision_proceduret::in_core(const exprt &expr)
17-
{
18-
UNREACHABLE;
19-
return true;
20-
}

src/util/decision_procedure.h

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -52,9 +52,6 @@ class decision_proceduret:public messaget
5252
return dec_solve();
5353
}
5454

55-
// old-style, will go away
56-
virtual bool in_core(const exprt &expr);
57-
5855
// return a textual description of the decision procedure
5956
virtual std::string decision_procedure_text() const=0;
6057

src/util/expr_util.cpp

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -17,15 +17,6 @@ Author: Daniel Kroening, [email protected]
1717
#include "namespace.h"
1818
#include "arith_tools.h"
1919

20-
void make_next_state(exprt &expr)
21-
{
22-
Forall_operands(it, expr)
23-
make_next_state(*it);
24-
25-
if(expr.id()==ID_symbol)
26-
expr.id(ID_next_symbol);
27-
}
28-
2920
exprt make_binary(const exprt &expr)
3021
{
3122
const exprt::operandst &operands=expr.operands();

src/util/expr_util.h

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -28,11 +28,6 @@ class symbolt;
2828
class typet;
2929
class namespacet;
3030

31-
/// \deprecated This function will eventually be removed. Use functions
32-
/// from \ref util/std_expr.h instead.
33-
34-
void make_next_state(exprt &);
35-
3631
/// splits an expression with >=3 operands into nested binary expressions
3732
exprt make_binary(const exprt &);
3833

src/util/format_constant.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ std::string format_constantt::operator()(const exprt &expr)
2525
expr.type().id()==ID_signedbv)
2626
{
2727
mp_integer i;
28-
if(to_integer(expr, i))
28+
if(to_integer(to_constant_expr(expr), i))
2929
return "(number conversion failed)";
3030

3131
return integer2string(i);

src/util/std_expr.h

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3837,11 +3837,6 @@ inline void validate_expr(const array_update_exprt &value)
38373837
class member_exprt:public unary_exprt
38383838
{
38393839
public:
3840-
// deprecated, and will go away -- use either of the two below
3841-
explicit member_exprt(const typet &_type):unary_exprt(ID_member, _type)
3842-
{
3843-
}
3844-
38453840
member_exprt(
38463841
const exprt &op,
38473842
const irep_idt &component_name,

src/util/xml_expr.cpp

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -159,7 +159,8 @@ xmlt xml(
159159
std::size_t width=to_bitvector_type(type).get_width();
160160

161161
result.name="integer";
162-
result.set_attribute("binary", expr.get_string(ID_value));
162+
result.set_attribute("binary",
163+
id2string(to_constant_expr(expr).get_value()));
163164
result.set_attribute("width", width);
164165

165166
const typet &underlying_type=
@@ -182,7 +183,7 @@ xmlt xml(
182183
result.set_attribute("c_type", sig+"long long int");
183184

184185
mp_integer i;
185-
if(!to_integer(expr, i))
186+
if(!to_integer(to_constant_expr(expr), i))
186187
result.data=integer2string(i);
187188
}
188189
else if(type.id()==ID_c_enum)
@@ -193,7 +194,7 @@ xmlt xml(
193194
result.set_attribute("c_type", "enum");
194195

195196
mp_integer i;
196-
if(!to_integer(expr, i))
197+
if(!to_integer(to_constant_expr(expr), i))
197198
result.data=integer2string(i);
198199
}
199200
else if(type.id()==ID_c_enum_tag)

0 commit comments

Comments
 (0)