@@ -50,6 +50,7 @@ struct model_merger;
struct svalue_id_merger_mapping;
struct canonicalization;
class pending_diagnostic;
+class state_change_event;
class checker_path;
class extrinsic_state;
class sm_state_map;
@@ -229,7 +229,7 @@ state_change_event::get_desc (bool can_colorize) const
label_text custom_desc
= m_pending_diagnostic->describe_state_change
(evdesc::state_change (can_colorize, m_var, m_origin,
- m_from, m_to, m_emission_id));
+ m_from, m_to, m_emission_id, *this));
if (custom_desc.m_buffer)
{
if (flag_analyzer_verbose_state_changes)
@@ -50,11 +50,12 @@ struct state_change : public event_desc
tree origin,
state_machine::state_t old_state,
state_machine::state_t new_state,
- diagnostic_event_id_t event_id)
+ diagnostic_event_id_t event_id,
+ const state_change_event &event)
: event_desc (colorize),
m_expr (expr), m_origin (origin),
m_old_state (old_state), m_new_state (new_state),
- m_event_id (event_id)
+ m_event_id (event_id), m_event (event)
{}
bool is_global_p () const { return m_expr == NULL_TREE; }
@@ -64,6 +65,7 @@ struct state_change : public event_desc
state_machine::state_t m_old_state;
state_machine::state_t m_new_state;
diagnostic_event_id_t m_event_id;
+ const state_change_event &m_event;
};
/* For use by pending_diagnostic::describe_call_with_state. */