Skip to content

Commit 8fd215d

Browse files
author
Daniel Kroening
committed
replace exprt::opX by named methods
This will eventually enable us to protect the opX methods.
1 parent 33e1656 commit 8fd215d

File tree

4 files changed

+26
-22
lines changed

4 files changed

+26
-22
lines changed

src/ansi-c/c_typecheck_expr.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1673,8 +1673,8 @@ void c_typecheck_baset::typecheck_side_effect_gcc_conditional_expression(
16731673
typecheck_expr_trinary(if_expr);
16741674

16751675
// copy the result
1676-
expr.op0()=if_expr.op1();
1677-
expr.op1()=if_expr.op2();
1676+
expr.op0() = if_expr.true_case();
1677+
expr.op1() = if_expr.false_case();
16781678
expr.type()=if_expr.type();
16791679
}
16801680

src/goto-programs/builtin_functions.cpp

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1402,9 +1402,11 @@ void goto_convertt::do_function_call_symbol(
14021402
}
14031403

14041404
// build (*ptr==oldval)?newval:*ptr
1405-
if_exprt if_expr(equal, arguments[2], deref_ptr, deref_ptr.type());
1406-
if(if_expr.op1().type()!=if_expr.type())
1407-
if_expr.op1().make_typecast(if_expr.type());
1405+
if_exprt if_expr(
1406+
equal,
1407+
typecast_exprt::conditional_cast(arguments[2], deref_ptr.type()),
1408+
deref_ptr,
1409+
deref_ptr.type());
14081410

14091411
goto_programt::targett t3=dest.add_instruction(ASSIGN);
14101412
t3->source_location=function.source_location();
@@ -1461,9 +1463,11 @@ void goto_convertt::do_function_call_symbol(
14611463
equal.op1().make_typecast(equal.op0().type());
14621464

14631465
// build (*ptr==oldval)?newval:*ptr
1464-
if_exprt if_expr(equal, arguments[2], deref_ptr, deref_ptr.type());
1465-
if(if_expr.op1().type()!=if_expr.type())
1466-
if_expr.op1().make_typecast(if_expr.type());
1466+
if_exprt if_expr(
1467+
equal,
1468+
typecast_exprt::conditional_cast(arguments[2], deref_ptr.type()),
1469+
deref_ptr,
1470+
deref_ptr.type());
14671471

14681472
goto_programt::targett t3=dest.add_instruction(ASSIGN);
14691473
t3->source_location=function.source_location();

src/solvers/lowering/byte_operators.cpp

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -362,9 +362,9 @@ static exprt lower_byte_update(
362362

363363
const mp_integer &element_size = *element_size_opt;
364364

365-
if(src.op0().type().id()==ID_array)
365+
if(src.op().type().id()==ID_array)
366366
{
367-
const array_typet &array_type=to_array_type(src.op0().type());
367+
const array_typet &array_type=to_array_type(src.op().type());
368368
const typet &subtype=array_type.subtype();
369369

370370
// array of bitvectors?
@@ -531,14 +531,14 @@ static exprt lower_byte_update(
531531
subtype.id_string());
532532
}
533533
}
534-
else if(src.op0().type().id()==ID_signedbv ||
535-
src.op0().type().id()==ID_unsignedbv ||
536-
src.op0().type().id()==ID_floatbv ||
537-
src.op0().type().id()==ID_c_bool ||
538-
src.op0().type().id()==ID_pointer)
534+
else if(src.op().type().id()==ID_signedbv ||
535+
src.op().type().id()==ID_unsignedbv ||
536+
src.op().type().id()==ID_floatbv ||
537+
src.op().type().id()==ID_c_bool ||
538+
src.op().type().id()==ID_pointer)
539539
{
540540
// do a shift, mask and OR
541-
const auto type_width = pointer_offset_bits(src.op0().type(), ns);
541+
const auto type_width = pointer_offset_bits(src.op().type(), ns);
542542
CHECK_RETURN(type_width.has_value() && *type_width > 0);
543543
const std::size_t width = numeric_cast_v<std::size_t>(*type_width);
544544

@@ -560,7 +560,7 @@ static exprt lower_byte_update(
560560
unsignedbv_typet(
561561
width - numeric_cast_v<std::size_t>(element_size) * 8)),
562562
src.value(),
563-
src.op0().type());
563+
src.op().type());
564564
else
565565
value_extended = src.value();
566566

@@ -602,7 +602,7 @@ static exprt lower_byte_update(
602602
PRECONDITION_WITH_DIAGNOSTICS(
603603
false,
604604
"flatten_byte_update can only do arrays and scalars right now",
605-
src.op0().type().id_string());
605+
src.op().type().id_string());
606606
}
607607
}
608608

src/util/simplify_expr.cpp

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2061,8 +2061,8 @@ bool simplify_exprt::simplify_byte_update(byte_update_exprt &expr)
20612061
plus_exprt new_offset(offset, compo_offset);
20622062
simplify_node(new_offset);
20632063
exprt new_value(with.new_value());
2064-
expr.op1().swap(new_offset);
2065-
expr.op2().swap(new_value);
2064+
expr.offset().swap(new_offset);
2065+
expr.value().swap(new_value);
20662066
simplify_byte_update(expr); // do this recursively
20672067
return false;
20682068
}
@@ -2088,8 +2088,8 @@ bool simplify_exprt::simplify_byte_update(byte_update_exprt &expr)
20882088
plus_exprt new_offset(offset, index_offset);
20892089
simplify_node(new_offset);
20902090
exprt new_value(with.new_value());
2091-
expr.op1().swap(new_offset);
2092-
expr.op2().swap(new_value);
2091+
expr.offset().swap(new_offset);
2092+
expr.value().swap(new_value);
20932093
simplify_byte_update(expr); // do this recursively
20942094
return false;
20952095
}

0 commit comments

Comments
 (0)