File tree 3 files changed +18
-2
lines changed
3 files changed +18
-2
lines changed Original file line number Diff line number Diff line change @@ -235,6 +235,16 @@ static void replace_java_nondet(goto_programt &goto_program)
235
235
}
236
236
}
237
237
238
+ void replace_java_nondet (goto_model_functiont &function)
239
+ {
240
+ goto_programt &program = function.get_goto_function ().body ;
241
+ replace_java_nondet (program);
242
+
243
+ function.compute_location_numbers ();
244
+
245
+ remove_skip (program);
246
+ }
247
+
238
248
void replace_java_nondet (goto_functionst &goto_functions)
239
249
{
240
250
for (auto &goto_program : goto_functions.function_map )
Original file line number Diff line number Diff line change 14
14
15
15
class goto_modelt ;
16
16
class goto_functionst ;
17
+ class goto_model_functiont ;
17
18
18
19
// / Replace calls to nondet library functions with an internal nondet
19
20
// / representation.
@@ -22,4 +23,9 @@ void replace_java_nondet(goto_modelt &);
22
23
23
24
void replace_java_nondet (goto_functionst &);
24
25
26
+ // / Replace calls to nondet library functions with an internal nondet
27
+ // / representation in a single function.
28
+ // / \param function: The goto program to modify.
29
+ void replace_java_nondet (goto_model_functiont &function);
30
+
25
31
#endif
Original file line number Diff line number Diff line change @@ -651,6 +651,8 @@ void jbmc_parse_optionst::process_goto_function(
651
651
remove_virtual_functions (function);
652
652
// remove returns
653
653
remove_returns (function);
654
+
655
+ replace_java_nondet (function);
654
656
}
655
657
656
658
catch (const char *e)
@@ -705,8 +707,6 @@ bool jbmc_parse_optionst::process_goto_functions(
705
707
? std::stoul (cmdline.get_value (" java-max-input-tree-depth" ))
706
708
: MAX_NONDET_TREE_DEPTH;
707
709
708
- replace_java_nondet (goto_model);
709
-
710
710
convert_nondet (
711
711
goto_model,
712
712
get_message_handler (),
You can’t perform that action at this time.
0 commit comments