Skip to content

Commit cf4eeb2

Browse files
author
Owen Jones
committed
Move code into code block instead of copying it
1 parent 7f4a79e commit cf4eeb2

File tree

2 files changed

+10
-5
lines changed

2 files changed

+10
-5
lines changed

src/ansi-c/c_nondet_symbol_factory.cpp

+5-5
Original file line numberDiff line numberDiff line change
@@ -125,7 +125,7 @@ exprt symbol_factoryt::allocate_object(
125125
// <target_expr> = &tmp$<temporary_counter>
126126
code_assignt assign(target_expr, aoe);
127127
assign.add_source_location()=loc;
128-
assignments.add(assign);
128+
assignments.move(assign);
129129

130130
return aoe;
131131
}
@@ -186,7 +186,7 @@ void symbol_factoryt::gen_nondet_init(
186186
null_check.then_case()=set_null_inst;
187187
null_check.else_case()=non_null_inst;
188188

189-
assignments.add(null_check);
189+
assignments.move(null_check);
190190
}
191191
}
192192
// TODO(OJones): Add support for structs and arrays
@@ -202,7 +202,7 @@ void symbol_factoryt::gen_nondet_init(
202202
code_assignt assign(expr, rhs);
203203
assign.add_source_location()=loc;
204204

205-
assignments.add(assign);
205+
assignments.move(assign);
206206
}
207207
}
208208

@@ -258,7 +258,7 @@ exprt c_nondet_symbol_factory(
258258
{
259259
code_declt decl(symbol_ptr->symbol_expr());
260260
decl.add_source_location()=loc;
261-
init_code.add(decl);
261+
init_code.move(decl);
262262
}
263263

264264
init_code.append(assignments);
@@ -275,7 +275,7 @@ exprt c_nondet_symbol_factory(
275275
from_integer(0, index_type())));
276276
input_code.op1()=symbol_ptr->symbol_expr();
277277
input_code.add_source_location()=loc;
278-
init_code.add(input_code);
278+
init_code.move(input_code);
279279
}
280280

281281
return main_symbol_expr;

src/util/std_code.h

+5
Original file line numberDiff line numberDiff line change
@@ -78,6 +78,11 @@ class code_blockt:public codet
7878
o.push_back(*it);
7979
}
8080

81+
void move(codet &code)
82+
{
83+
move_to_operands(code);
84+
}
85+
8186
void add(const codet &code)
8287
{
8388
copy_to_operands(code);

0 commit comments

Comments
 (0)