cprover
remove_exceptions.h
Go to the documentation of this file.
1 /*******************************************************************\
2 
3 Module: Remove function exceptional returns
4 
5 Author: Cristina David
6 
7 Date: December 2016
8 
9 \*******************************************************************/
10 
13 
14 #ifndef CPROVER_JAVA_BYTECODE_REMOVE_EXCEPTIONS_H
15 #define CPROVER_JAVA_BYTECODE_REMOVE_EXCEPTIONS_H
16 
19 
20 #include <util/message.h>
21 
22 #define INFLIGHT_EXCEPTION_VARIABLE_BASENAME "@inflight_exception"
23 #define INFLIGHT_EXCEPTION_VARIABLE_NAME \
24  "java::" INFLIGHT_EXCEPTION_VARIABLE_BASENAME
25 
30  goto_programt &,
33 
38 
43  goto_programt &,
45  const class_hierarchyt &,
47 
52  goto_modelt &,
53  const class_hierarchyt &,
55 
56 #endif
Non-graph-based representation of the class hierarchy.
void remove_exceptions(goto_programt &, symbol_table_baset &, const class_hierarchyt &, message_handlert &)
Removes &#39;throw x&#39; and CATCH-PUSH/CATCH-POP and adds the required instrumentation (GOTOs and assignmen...
Class Hierarchy.
void remove_exceptions_using_instanceof(goto_programt &, symbol_table_baset &, message_handlert &)
Removes &#39;throw x&#39; and CATCH-PUSH/CATCH-POP and adds the required instrumentation (GOTOs and assignmen...
Symbol Table + CFG.
A generic container class for the GOTO intermediate representation of one function.
Definition: goto_program.h:72
The symbol table base class interface.