|
| impl_region_model_context (exploded_graph &eg, exploded_node *enode_for_diag, const program_state *old_state, program_state *new_state, uncertainty_t *uncertainty, path_context *path_ctxt, const gimple *stmt, stmt_finder *stmt_finder=NULL, bool *out_could_have_done_work=nullptr) |
|
| impl_region_model_context (program_state *state, const extrinsic_state &ext_state, uncertainty_t *uncertainty, logger *logger=NULL) |
|
bool | warn (std::unique_ptr< pending_diagnostic > d, const stmt_finder *custom_finder=NULL) final override |
|
void | add_note (std::unique_ptr< pending_note > pn) final override |
|
void | add_event (std::unique_ptr< checker_event > event) final override |
|
void | on_svalue_leak (const svalue *) override |
|
void | on_liveness_change (const svalue_set &live_svalues, const region_model *model) final override |
|
logger * | get_logger () final override |
|
void | on_state_leak (const state_machine &sm, const svalue *sval, state_machine::state_t state) |
|
void | on_condition (const svalue *lhs, enum tree_code op, const svalue *rhs) final override |
|
void | on_bounded_ranges (const svalue &sval, const bounded_ranges &ranges) final override |
|
void | on_pop_frame (const frame_region *frame_reg) final override |
|
void | on_unknown_change (const svalue *sval, bool is_mutable) final override |
|
void | on_phi (const gphi *phi, tree rhs) final override |
|
void | on_unexpected_tree_code (tree t, const dump_location_t &loc) final override |
|
void | on_escaped_function (tree fndecl) final override |
|
uncertainty_t * | get_uncertainty () final override |
|
void | purge_state_involving (const svalue *sval) final override |
|
void | bifurcate (std::unique_ptr< custom_edge_info > info) final override |
|
void | terminate_path () final override |
|
const extrinsic_state * | get_ext_state () const final override |
|
bool | get_state_map_by_name (const char *name, sm_state_map **out_smap, const state_machine **out_sm, unsigned *out_sm_idx, std::unique_ptr< sm_context > *out_sm_context) override |
|
const gimple * | get_stmt () const override |
|
const exploded_graph * | get_eg () const override |
|
void | maybe_did_work () override |
|
bool | checking_for_infinite_loop_p () const override |
|
void | on_unusable_in_infinite_loop () override |
|
bool | get_fd_map (sm_state_map **out_smap, const state_machine **out_sm, unsigned *out_sm_idx, std::unique_ptr< sm_context > *out_sm_context) |
|
bool | get_malloc_map (sm_state_map **out_smap, const state_machine **out_sm, unsigned *out_sm_idx) |
|
bool | get_taint_map (sm_state_map **out_smap, const state_machine **out_sm, unsigned *out_sm_idx) |
|
bool | possibly_tainted_p (const svalue *sval) |
|
Concrete implementation of region_model_context, wiring it up to the
rest of the analysis engine.