@@ -68,6 +68,7 @@ static goto_programt get_gen_nondet_init_instructions(
68
68
// / Checks an instruction to see whether it contains an assignment from
69
69
// / side_effect_expr_nondet. If so, replaces the instruction with a range of
70
70
// / instructions to properly nondet-initialize the lhs.
71
+ // / \param function_identifier: Name of the function containing \p target.
71
72
// / \param goto_program: The goto program to modify.
72
73
// / \param target: One of the steps in that goto program.
73
74
// / \param symbol_table: The global symbol table.
@@ -78,6 +79,7 @@ static goto_programt get_gen_nondet_init_instructions(
78
79
// / \return The next instruction to process with this function and a boolean
79
80
// / indicating whether any changes were made to the goto program.
80
81
static std::pair<goto_programt::targett, bool > insert_nondet_init_code (
82
+ const irep_idt &function_identifier,
81
83
goto_programt &goto_program,
82
84
const goto_programt::targett &target,
83
85
symbol_table_baset &symbol_table,
@@ -116,7 +118,7 @@ static std::pair<goto_programt::targett, bool> insert_nondet_init_code(
116
118
117
119
symbolt &aux_symbol = get_fresh_aux_symbol (
118
120
op.type (),
119
- id2string (goto_programt::get_function_id (goto_program) ),
121
+ id2string (function_identifier ),
120
122
" nondet_tmp" ,
121
123
source_loc,
122
124
ID_java,
@@ -162,13 +164,15 @@ static std::pair<goto_programt::targett, bool> insert_nondet_init_code(
162
164
// / For each instruction in the goto program, checks if it is an assignment from
163
165
// / nondet and replaces it with the appropriate composite initialization code if
164
166
// / so.
167
+ // / \param function_identifier: Name of the function \p goto_program.
165
168
// / \param goto_program: The goto program to modify.
166
169
// / \param symbol_table: The global symbol table.
167
170
// / \param message_handler: Handles logging.
168
171
// / \param object_factory_parameters: Parameters for the generation of nondet
169
172
// / objects.
170
173
// / \param mode: Language mode
171
174
void convert_nondet (
175
+ const irep_idt &function_identifier,
172
176
goto_programt &goto_program,
173
177
symbol_table_baset &symbol_table,
174
178
message_handlert &message_handler,
@@ -181,6 +185,7 @@ void convert_nondet(
181
185
while (instruction_iterator != goto_program.instructions .end ())
182
186
{
183
187
auto ret = insert_nondet_init_code (
188
+ function_identifier,
184
189
goto_program,
185
190
instruction_iterator,
186
191
symbol_table,
@@ -206,6 +211,7 @@ void convert_nondet(
206
211
java_object_factory_parameterst parameters = object_factory_parameters;
207
212
parameters.function_id = function.get_function_id ();
208
213
convert_nondet (
214
+ function.get_function_id (),
209
215
function.get_goto_function ().body ,
210
216
function.get_symbol_table (),
211
217
message_handler,
@@ -232,6 +238,7 @@ void convert_nondet(
232
238
java_object_factory_parameterst parameters = object_factory_parameters;
233
239
parameters.function_id = f_it.first ;
234
240
convert_nondet (
241
+ f_it.first ,
235
242
f_it.second .body ,
236
243
symbol_table,
237
244
message_handler,
0 commit comments