Skip to content

Commit cf2d9ab

Browse files
committed
Remove forall_rw_range_set_{r,w}_objects
This was useful in the past, but with C++-11 we can use a ranged-for to avoid the iterator altogether.
1 parent a924423 commit cf2d9ab

File tree

5 files changed

+19
-27
lines changed

5 files changed

+19
-27
lines changed

.clang-format

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,8 +30,6 @@ DerivePointerAlignment: 'false'
3030
DisableFormat: 'false'
3131
ExperimentalAutoDetectBinPacking: 'false'
3232
ForEachMacros: [
33-
'forall_rw_range_set_r_objects',
34-
'forall_rw_range_set_w_objects',
3533
'forall_rw_set_r_entries',
3634
'forall_rw_set_w_entries',
3735
'forall_goto_functions',

src/analyses/dependence_graph.cpp

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -161,11 +161,11 @@ void dep_graph_domaint::data_dependencies(
161161
rw_range_set_value_sett rw_set(ns, value_sets);
162162
goto_rw(function_to, to, rw_set);
163163

164-
forall_rw_range_set_r_objects(it, rw_set)
164+
for(const auto &read_object_entry : rw_set.get_r_set())
165165
{
166-
const range_domaint &r_ranges = rw_set.get_ranges(it->second);
167-
const rd_range_domaint::ranges_at_loct &w_ranges=
168-
dep_graph.reaching_definitions()[to].get(it->first);
166+
const range_domaint &r_ranges = rw_set.get_ranges(read_object_entry.second);
167+
const rd_range_domaint::ranges_at_loct &w_ranges =
168+
dep_graph.reaching_definitions()[to].get(read_object_entry.first);
169169

170170
for(const auto &w_range : w_ranges)
171171
{
@@ -186,7 +186,7 @@ void dep_graph_domaint::data_dependencies(
186186
}
187187
}
188188

189-
dep_graph.reaching_definitions()[to].clear_cache(it->first);
189+
dep_graph.reaching_definitions()[to].clear_cache(read_object_entry.first);
190190
}
191191
}
192192

src/analyses/goto_rw.cpp

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -65,20 +65,20 @@ rw_range_sett::~rw_range_sett()
6565
void rw_range_sett::output(std::ostream &out) const
6666
{
6767
out << "READ:\n";
68-
forall_rw_range_set_r_objects(it, *this)
68+
for(const auto &read_object_entry : get_r_set())
6969
{
70-
out << " " << it->first;
71-
it->second->output(ns, out);
70+
out << " " << read_object_entry.first;
71+
read_object_entry.second->output(ns, out);
7272
out << '\n';
7373
}
7474

7575
out << '\n';
7676

7777
out << "WRITE:\n";
78-
forall_rw_range_set_w_objects(it, *this)
78+
for(const auto &written_object_entry : get_w_set())
7979
{
80-
out << " " << it->first;
81-
it->second->output(ns, out);
80+
out << " " << written_object_entry.first;
81+
written_object_entry.second->output(ns, out);
8282
out << '\n';
8383
}
8484
}

src/analyses/goto_rw.h

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -21,14 +21,6 @@ Date: April 2010
2121

2222
#include <goto-programs/goto_model.h>
2323

24-
#define forall_rw_range_set_r_objects(it, rw_set) \
25-
for(rw_range_sett::objectst::const_iterator it=(rw_set).get_r_set().begin(); \
26-
it!=(rw_set).get_r_set().end(); ++it)
27-
28-
#define forall_rw_range_set_w_objects(it, rw_set) \
29-
for(rw_range_sett::objectst::const_iterator it=(rw_set).get_w_set().begin(); \
30-
it!=(rw_set).get_w_set().end(); ++it)
31-
3224
class rw_range_sett;
3325
class goto_modelt;
3426

src/analyses/reaching_definitions.cpp

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -139,16 +139,17 @@ void rd_range_domaint::transform(
139139
goto_rw(to, rw_set);
140140
const bool is_must_alias=rw_set.get_w_set().size()==1;
141141

142-
forall_rw_range_set_w_objects(it, rw_set)
142+
for(const auto &written_object_entry : rw_set.get_w_set())
143143
{
144-
const irep_idt &identifier=it->first;
144+
const irep_idt &identifier = written_object_entry.first;
145145
// ignore symex::invalid_object
146146
const symbolt *symbol_ptr;
147147
if(ns.lookup(identifier, symbol_ptr))
148148
continue;
149149
assert(symbol_ptr!=0);
150150

151-
const range_domaint &ranges = rw_set.get_ranges(it->second);
151+
const range_domaint &ranges =
152+
rw_set.get_ranges(written_object_entry.second);
152153

153154
if(is_must_alias &&
154155
(!rd->get_is_threaded()(from) ||
@@ -345,9 +346,9 @@ void rd_range_domaint::transform_assign(
345346
goto_rw(function_to, to, rw_set);
346347
const bool is_must_alias=rw_set.get_w_set().size()==1;
347348

348-
forall_rw_range_set_w_objects(it, rw_set)
349+
for(const auto &written_object_entry : rw_set.get_w_set())
349350
{
350-
const irep_idt &identifier=it->first;
351+
const irep_idt &identifier = written_object_entry.first;
351352
// ignore symex::invalid_object
352353
const symbolt *symbol_ptr;
353354
if(ns.lookup(identifier, symbol_ptr))
@@ -357,7 +358,8 @@ void rd_range_domaint::transform_assign(
357358
nullptr_exceptiont,
358359
"Symbol is in symbol table");
359360

360-
const range_domaint &ranges = rw_set.get_ranges(it->second);
361+
const range_domaint &ranges =
362+
rw_set.get_ranges(written_object_entry.second);
361363

362364
if(is_must_alias &&
363365
(!rd.get_is_threaded()(from) ||

0 commit comments

Comments
 (0)