From bef9038559c5c6719fff96e8f92a42ac110d8f66 Mon Sep 17 00:00:00 2001 From: David Malcolm Date: Mon, 20 Apr 2020 16:02:07 -0400 Subject: [PATCH 057/179] FIXME: implement ~region_model2_manager --- gcc/analyzer/region-model2.cc | 25 +++++++++++++++++++++++++ gcc/analyzer/region-model2.h | 1 + 2 files changed, 26 insertions(+) diff --git a/gcc/analyzer/region-model2.cc b/gcc/analyzer/region-model2.cc index 36ebe60bff5..9f681ca1e6b 100644 --- a/gcc/analyzer/region-model2.cc +++ b/gcc/analyzer/region-model2.cc @@ -2861,6 +2861,31 @@ region_model2_manager::region_model2_manager () // TODO } +region_model2_manager::~region_model2_manager () +{ + /* Delete consolidated svalues. */ + for (constants_map_t::iterator iter = m_constants_map.begin (); + iter != m_constants_map.end (); ++iter) + delete (*iter).second; + for (initial_values_map_t::iterator iter = m_initial_values_map.begin (); + iter != m_initial_values_map.end (); ++iter) + delete (*iter).second; + for (pointer_values_map_t::iterator iter = m_pointer_values_map.begin (); + iter != m_pointer_values_map.end (); ++iter) + delete (*iter).second; + for (unaryop_values_map_t::iterator iter = m_unaryop_values_map.begin (); + iter != m_unaryop_values_map.end (); ++iter) + delete (*iter).second; + for (binop_values_map_t::iterator iter = m_binop_values_map.begin (); + iter != m_binop_values_map.end (); ++iter) + delete (*iter).second; + + /* Delete consolidated regions. */ + for (globals_map_t::iterator iter = m_globals_map.begin (); + iter != m_globals_map.end (); ++iter) + delete (*iter).second; +} + /* svalue2 consolidation. */ /* Return an svalue2 *for a constant_svalue2 for CST_EXPR, diff --git a/gcc/analyzer/region-model2.h b/gcc/analyzer/region-model2.h index 7c1b2632667..4f945f5cd78 100644 --- a/gcc/analyzer/region-model2.h +++ b/gcc/analyzer/region-model2.h @@ -1471,6 +1471,7 @@ class region_model2_manager { public: region_model2_manager (); + ~region_model2_manager (); /* svalue2 consolidation. */ svalue2 *get_or_create_constant_svalue2 (tree cst_expr); -- 2.21.0