Skip to content

Commit 73adfb0

Browse files
committed
Perform function-pointer removal in symex
1 parent 260e03d commit 73adfb0

File tree

1 file changed

+7
-0
lines changed

1 file changed

+7
-0
lines changed

src/symex/symex_parse_options.cpp

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@ Author: Daniel Kroening, [email protected]
3636
#include <goto-programs/goto_inline.h>
3737
#include <goto-programs/xml_goto_trace.h>
3838
#include <goto-programs/remove_complex.h>
39+
#include <goto-programs/remove_function_pointers.h>
3940
#include <goto-programs/remove_vector.h>
4041
#include <goto-programs/remove_virtual_functions.h>
4142
#include <goto-programs/remove_exceptions.h>
@@ -304,6 +305,12 @@ bool symex_parse_optionst::process_goto_program(const optionst &options)
304305
// remove stuff
305306
remove_complex(goto_model);
306307
remove_vector(goto_model);
308+
// remove function pointers
309+
status() << "Removal of function pointers and virtual functions" << eom;
310+
remove_function_pointers(
311+
get_message_handler(),
312+
goto_model,
313+
cmdline.isset("pointer-check"));
307314
// Java virtual functions -> explicit dispatch tables:
308315
remove_virtual_functions(goto_model);
309316
// Java throw and catch -> explicit exceptional return variables:

0 commit comments

Comments
 (0)