diff --git a/src/analyses/cfg_dominators.h b/src/analyses/cfg_dominators.h index 0abee1ec6e9..31979f862a7 100644 --- a/src/analyses/cfg_dominators.h +++ b/src/analyses/cfg_dominators.h @@ -126,13 +126,13 @@ void cfg_dominators_templatet
::fixedpoint(P &program)
{
std::list ::output(std::ostream &out) const
it=cfg.entry_map.begin();
it!=cfg.entry_map.end(); ++it)
{
- unsigned n=it->first->location_number;
+ T n=it->first;
if(post_dom)
out << n << " post-dominated by ";
else
out << n << " dominated by ";
- for(typename target_sett::const_iterator d_it=it->second.dominators.begin();
- d_it!=it->second.dominators.end();)
+ const auto& doms=cfg[it->second].dominators;
+ for(typename target_sett::const_iterator d_it=doms.begin();
+ d_it!=doms.end();)
{
- out << (*d_it)->location_number;
- if (++d_it!=it->second.dominators.end())
+ out << *d_it;
+ if(++d_it!=doms.end())
out << ", ";
}
out << "\n";
diff --git a/src/goto-programs/cfg.h b/src/goto-programs/cfg.h
index bbba1120574..514e62e4995 100644
--- a/src/goto-programs/cfg.h
+++ b/src/goto-programs/cfg.h
@@ -131,6 +131,10 @@ class cfg_baset:public graph< cfg_base_nodet