|
GCC Middle and Back End API Reference
|
#include <exploded-graph.h>


Public Member Functions | |
| rewind_info_t (const setjmp_record &setjmp_record, const gcall &longjmp_call) | |
| void | print (pretty_printer *pp) const final override |
| bool | update_model (region_model *model, const exploded_edge *eedge, region_model_context *ctxt) const final override |
| void | add_events_to_path (checker_path *emission_path, const exploded_edge &eedge, pending_diagnostic &pd) const final override |
| program_point | get_point_before_setjmp () const |
| program_point | get_point_after_setjmp () const |
| const gcall & | get_setjmp_call () const |
| const gcall & | get_longjmp_call () const |
| const exploded_node * | get_enode_origin () const |
| virtual void | get_dot_attrs (const char *&out_style, const char *&out_color) const |
| virtual bool | update_state (program_state *state, const exploded_edge *eedge, region_model_context *ctxt) const |
| virtual exploded_node * | create_enode (exploded_graph &eg, const program_point &point, program_state &&state, exploded_node *enode_for_diag, region_model_context *ctxt) const |
Private Attributes | |
| setjmp_record | m_setjmp_record |
| const gcall & | m_longjmp_call |
Extra data for an exploded_edge that represents a rewind from a longjmp to a setjmp (or from a siglongjmp to a sigsetjmp).
|
inline |
References m_longjmp_call, and m_setjmp_record.
|
finaloverridevirtual |
Implements ana::custom_edge_info.
|
virtualinherited |
|
virtualinherited |
Reimplemented in ana::interprocedural_call, and ana::interprocedural_return.
|
inline |
References m_setjmp_record.
Referenced by get_point_after_setjmp(), and get_point_before_setjmp().
|
inline |
References m_longjmp_call.
|
inline |
|
inline |
References get_enode_origin(), and ana::exploded_node::get_point().
|
inline |
References m_setjmp_record.
|
inlinefinaloverridevirtual |
Implements ana::custom_edge_info.
References pp_string().
|
finaloverridevirtual |
Implements ana::custom_edge_info.
|
virtualinherited |
Reimplemented in ana::interprocedural_call, and ana::interprocedural_return.
|
private |
Referenced by get_longjmp_call(), and rewind_info_t().
|
private |
Referenced by get_enode_origin(), get_point_after_setjmp(), get_setjmp_call(), and rewind_info_t().