Skip to content

Commit 8474807

Browse files
author
Daniel Kroening
committed
use member_exprt::compound() instead of op0
This will eventually allow us to protect exprt::opX().
1 parent e4c52cd commit 8474807

File tree

8 files changed

+18
-20
lines changed

8 files changed

+18
-20
lines changed

jbmc/src/java_bytecode/java_bytecode_instrument.cpp

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -484,10 +484,10 @@ optionalt<codet> java_bytecode_instrumentt::instrument_expr(const exprt &expr)
484484
if(plus_expr.op0().id()==ID_member)
485485
{
486486
const member_exprt &member_expr=to_member_expr(plus_expr.op0());
487-
if(member_expr.op0().id()==ID_dereference)
487+
if(member_expr.compound().id() == ID_dereference)
488488
{
489-
const dereference_exprt &dereference_expr=
490-
to_dereference_expr(member_expr.op0());
489+
const dereference_exprt &dereference_expr =
490+
to_dereference_expr(member_expr.compound());
491491
codet bounds_check=
492492
check_array_access(
493493
dereference_expr,

jbmc/unit/java-testing-utils/require_goto_statements.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -95,7 +95,7 @@ require_goto_statements::find_struct_component_assignments(
9595
member_expr.compound().id() == ID_member)
9696
{
9797
const member_exprt &superclass_expr =
98-
to_member_expr(member_expr.op0());
98+
to_member_expr(member_expr.compound());
9999
const irep_idt supercomponent_name =
100100
"@" + id2string(superclass_name.value());
101101

src/ansi-c/expr2c.cpp

Lines changed: 9 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1528,39 +1528,37 @@ std::string expr2ct::convert_member(
15281528
const member_exprt &src,
15291529
unsigned precedence)
15301530
{
1531-
if(src.operands().size()!=1)
1532-
return convert_norep(src, precedence);
1531+
const auto &compound = src.compound();
15331532

15341533
unsigned p;
15351534
std::string dest;
15361535

1537-
if(src.op0().id()==ID_dereference &&
1538-
src.operands().size()==1)
1536+
if(compound.id() == ID_dereference && src.operands().size() == 1)
15391537
{
1540-
std::string op=convert_with_precedence(src.op0().op0(), p);
1538+
std::string op = convert_with_precedence(compound.op0(), p);
15411539

1542-
if(precedence>p || src.op0().op0().id()==ID_typecast)
1540+
if(precedence > p || compound.op0().id() == ID_typecast)
15431541
dest+='(';
15441542
dest+=op;
1545-
if(precedence>p || src.op0().op0().id()==ID_typecast)
1543+
if(precedence > p || compound.op0().id() == ID_typecast)
15461544
dest+=')';
15471545

15481546
dest+="->";
15491547
}
15501548
else
15511549
{
1552-
std::string op=convert_with_precedence(src.op0(), p);
1550+
std::string op = convert_with_precedence(compound, p);
15531551

1554-
if(precedence>p || src.op0().id()==ID_typecast)
1552+
if(precedence > p || compound.id() == ID_typecast)
15551553
dest+='(';
15561554
dest+=op;
1557-
if(precedence>p || src.op0().id()==ID_typecast)
1555+
if(precedence > p || compound.id() == ID_typecast)
15581556
dest+=')';
15591557

15601558
dest+='.';
15611559
}
15621560

1563-
const typet &full_type=ns.follow(src.op0().type());
1561+
const typet &full_type = ns.follow(compound.type());
15641562

15651563
if(full_type.id()!=ID_struct &&
15661564
full_type.id()!=ID_union)

src/pointer-analysis/value_set.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1115,7 +1115,7 @@ void value_sett::get_reference_set_rec(
11151115
{
11161116
// adjust type?
11171117
if(ns.follow(struct_op.type())!=final_object_type)
1118-
member_expr.op0().make_typecast(struct_op.type());
1118+
member_expr.compound().make_typecast(struct_op.type());
11191119

11201120
insert(dest, member_expr, o);
11211121
}

src/pointer-analysis/value_set_fi.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -930,7 +930,7 @@ void value_set_fit::get_reference_set_sharing_rec(
930930

931931
// adjust type?
932932
if(ns.follow(struct_op.type())!=ns.follow(object.type()))
933-
member_expr.op0().make_typecast(struct_op.type());
933+
member_expr.compound().make_typecast(struct_op.type());
934934

935935
insert(dest, member_expr, o);
936936
}

src/pointer-analysis/value_set_fivr.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1043,7 +1043,7 @@ void value_set_fivrt::get_reference_set_sharing_rec(
10431043

10441044
// adjust type?
10451045
if(ns.follow(struct_op.type())!=ns.follow(object.type()))
1046-
member_expr.op0().make_typecast(struct_op.type());
1046+
member_expr.compound().make_typecast(struct_op.type());
10471047

10481048
insert_from(dest, member_expr, o);
10491049
}

src/pointer-analysis/value_set_fivrns.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -736,7 +736,7 @@ void value_set_fivrnst::get_reference_set_rec(
736736

737737
// adjust type?
738738
if(ns.follow(struct_op.type())!=ns.follow(object.type()))
739-
member_expr.op0().make_typecast(struct_op.type());
739+
member_expr.compound().make_typecast(struct_op.type());
740740

741741
insert_from(dest, member_expr, o);
742742
}

src/solvers/flattening/bv_pointers.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -160,7 +160,7 @@ bool bv_pointerst::convert_address_of_rec(
160160
else if(expr.id()==ID_member)
161161
{
162162
const member_exprt &member_expr=to_member_expr(expr);
163-
const exprt &struct_op=member_expr.op0();
163+
const exprt &struct_op = member_expr.compound();
164164
const typet &struct_op_type=ns.follow(struct_op.type());
165165

166166
// recursive call

0 commit comments

Comments
 (0)