Skip to content

Commit 68a0b70

Browse files
author
Daniel Kroening
authored
Merge pull request #2830 from diffblue/code_block_move_add
use code_blockt::statements() where appropriate
2 parents 45f0133 + 01fd831 commit 68a0b70

File tree

7 files changed

+16
-24
lines changed

7 files changed

+16
-24
lines changed

jbmc/src/java_bytecode/java_bytecode_convert_method.cpp

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1773,8 +1773,7 @@ codet java_bytecode_convert_methodt::convert_instructions(
17731773
more_code.statements().end());
17741774
}
17751775
else
1776-
for(const auto &statement : more_code.statements())
1777-
c.copy_to_operands(statement);
1776+
to_code_block(c).append(more_code);
17781777
}
17791778
}
17801779
a_it2->second.stack=stack;

src/ansi-c/c_typecheck_base.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -125,7 +125,7 @@ class c_typecheck_baset:
125125

126126
virtual void typecheck_assign(codet &expr);
127127
virtual void typecheck_asm(codet &code);
128-
virtual void typecheck_block(codet &code);
128+
virtual void typecheck_block(code_blockt &code);
129129
virtual void typecheck_break(codet &code);
130130
virtual void typecheck_continue(codet &code);
131131
virtual void typecheck_decl(codet &code);

src/ansi-c/c_typecheck_code.cpp

Lines changed: 8 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ void c_typecheck_baset::typecheck_code(codet &code)
4343
else if(statement==ID_gcc_switch_case_range)
4444
typecheck_gcc_switch_case_range(code);
4545
else if(statement==ID_block)
46-
typecheck_block(code);
46+
typecheck_block(to_code_block(code));
4747
else if(statement==ID_decl_block)
4848
{
4949
}
@@ -181,23 +181,21 @@ void c_typecheck_baset::typecheck_assign(codet &code)
181181
implicit_typecast(code.op1(), code.op0().type());
182182
}
183183

184-
void c_typecheck_baset::typecheck_block(codet &code)
184+
void c_typecheck_baset::typecheck_block(code_blockt &code)
185185
{
186-
Forall_operands(it, code)
187-
typecheck_code(to_code(*it));
186+
for(auto &c : code.statements())
187+
typecheck_code(c);
188188

189189
// do decl-blocks
190190

191191
code_blockt new_ops;
192-
new_ops.operands().reserve(code.operands().size());
192+
new_ops.statements().reserve(code.statements().size());
193193

194-
Forall_operands(it1, code)
194+
for(auto &code_op : code.statements())
195195
{
196-
if(it1->is_nil())
196+
if(code_op.is_nil())
197197
continue;
198198

199-
codet &code_op=to_code(*it1);
200-
201199
if(code_op.get_statement()==ID_label)
202200
{
203201
// these may be nested
@@ -217,7 +215,7 @@ void c_typecheck_baset::typecheck_block(codet &code)
217215
new_ops.move(code_op);
218216
}
219217

220-
code.operands().swap(new_ops.operands());
218+
code.statements().swap(new_ops.statements());
221219
}
222220

223221
void c_typecheck_baset::typecheck_break(codet &code)

src/cpp/cpp_typecheck.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -424,7 +424,7 @@ class cpp_typecheckt:public c_typecheck_baset
424424
void typecheck_try_catch(codet &);
425425
void typecheck_member_initializer(codet &);
426426
void typecheck_decl(codet &) override;
427-
void typecheck_block(codet &) override;
427+
void typecheck_block(code_blockt &) override;
428428
void typecheck_ifthenelse(code_ifthenelset &) override;
429429
void typecheck_while(code_whilet &) override;
430430
void typecheck_switch(code_switcht &) override;

src/cpp/cpp_typecheck_code.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -446,7 +446,7 @@ void cpp_typecheckt::typecheck_decl(codet &code)
446446
code.swap(new_code);
447447
}
448448

449-
void cpp_typecheckt::typecheck_block(codet &code)
449+
void cpp_typecheckt::typecheck_block(code_blockt &code)
450450
{
451451
cpp_save_scopet saved_scope(cpp_scopes);
452452
cpp_scopes.new_block_scope();

src/goto-instrument/dump_c.cpp

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -621,7 +621,7 @@ void dump_ct::cleanup_decl(
621621
system_headers);
622622
p2s();
623623

624-
POSTCONDITION(b.operands().size()==1);
624+
POSTCONDITION(b.statements().size() == 1);
625625
decl.swap(b.op0());
626626
}
627627

@@ -943,10 +943,8 @@ void dump_ct::cleanup_harness(code_blockt &b)
943943
decls.add(d);
944944
}
945945

946-
Forall_operands(it, b)
946+
for(auto &code : b.statements())
947947
{
948-
codet &code=to_code(*it);
949-
950948
if(code.get_statement()==ID_function_call)
951949
{
952950
exprt &func=to_code_function_call(code).function();

src/goto-instrument/goto_program2code.cpp

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1681,12 +1681,9 @@ static bool has_labels(const codet &code)
16811681
return false;
16821682
}
16831683

1684-
static bool move_label_ifthenelse(
1685-
exprt &expr,
1686-
exprt &label_dest)
1684+
static bool move_label_ifthenelse(exprt &expr, exprt &label_dest)
16871685
{
1688-
if(expr.is_nil() ||
1689-
to_code(expr).get_statement()!=ID_block)
1686+
if(expr.is_nil() || to_code(expr).get_statement() != ID_block)
16901687
return false;
16911688

16921689
code_blockt &block=to_code_block(to_code(expr));

0 commit comments

Comments
 (0)