File tree 2 files changed +23
-8
lines changed 2 files changed +23
-8
lines changed Original file line number Diff line number Diff line change @@ -573,6 +573,14 @@ class goto_programt
573
573
return instructions.insert (target, instructiont ());
574
574
}
575
575
576
+ // / Insertion before the instruction pointed-to by the given instruction
577
+ // / iterator `target`.
578
+ // / \return newly inserted location
579
+ targett insert_before (const_targett target, const instructiont &i)
580
+ {
581
+ return instructions.insert (target, i);
582
+ }
583
+
576
584
// / Insertion after the instruction pointed-to by the given instruction
577
585
// / iterator `target`.
578
586
// / \return newly inserted location
@@ -581,6 +589,14 @@ class goto_programt
581
589
return instructions.insert (std::next (target), instructiont ());
582
590
}
583
591
592
+ // / Insertion after the instruction pointed-to by the given instruction
593
+ // / iterator `target`.
594
+ // / \return newly inserted location
595
+ targett insert_after (const_targett target, const instructiont &i)
596
+ {
597
+ return instructions.insert (std::next (target), i);
598
+ }
599
+
584
600
// / Appends the given program `p` to `*this`. `p` is destroyed.
585
601
void destructive_append (goto_programt &p)
586
602
{
Original file line number Diff line number Diff line change @@ -206,20 +206,19 @@ void remove_returnst::do_function_calls(
206
206
rhs = side_effect_expr_nondett (
207
207
function_call.lhs ().type (), i_it->source_location );
208
208
209
- goto_programt::targett t_a= goto_program.insert_after (i_it);
210
- t_a-> make_assignment ();
211
- t_a-> source_location =i_it-> source_location ;
212
- t_a-> code = code_assignt (function_call.lhs (), rhs);
209
+ goto_programt::targett t_a = goto_program.insert_after (
210
+ i_it,
211
+ goto_programt::make_assignment (
212
+ code_assignt (function_call.lhs (), rhs), i_it-> source_location ) );
213
213
214
214
// fry the previous assignment
215
215
function_call.lhs ().make_nil ();
216
216
217
217
if (!is_stub)
218
218
{
219
- goto_programt::targett t_d=goto_program.insert_after (t_a);
220
- t_d->make_dead ();
221
- t_d->source_location =i_it->source_location ;
222
- t_d->code = code_deadt (*return_value);
219
+ goto_program.insert_after (
220
+ t_a,
221
+ goto_programt::make_dead (*return_value, i_it->source_location ));
223
222
}
224
223
}
225
224
}
You can’t perform that action at this time.
0 commit comments