Skip to content

Commit 132a438

Browse files
Simplify function using find_symbols on iterators
The code is much simpler and easy to understand.
1 parent eea40db commit 132a438

File tree

3 files changed

+10
-31
lines changed

3 files changed

+10
-31
lines changed

src/goto-instrument/accelerate/acceleration_utils.cpp

Lines changed: 5 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -211,23 +211,14 @@ void acceleration_utilst::stash_variables(
211211
expr_sett modified,
212212
substitutiont &substitution)
213213
{
214-
find_symbols_sett vars;
215-
216-
for(expr_sett::iterator it=modified.begin();
217-
it!=modified.end();
218-
++it)
219-
{
220-
find_symbols(*it, vars);
221-
}
222-
223-
irep_idt loop_counter_name=to_symbol_expr(loop_counter).get_identifier();
214+
find_symbols_sett vars = find_symbols(modified.begin(), modified.end());
215+
const irep_idt &loop_counter_name =
216+
to_symbol_expr(loop_counter).get_identifier();
224217
vars.erase(loop_counter_name);
225218

226-
for(find_symbols_sett::iterator it=vars.begin();
227-
it!=vars.end();
228-
++it)
219+
for(const irep_idt &symbol : vars)
229220
{
230-
const symbolt &orig = symbol_table.lookup_ref(*it);
221+
const symbolt &orig = symbol_table.lookup_ref(symbol);
231222
symbolt stashed_sym=fresh_symbol("polynomial::stash", orig.type);
232223
substitution[orig.symbol_expr()]=stashed_sym.symbol_expr();
233224
program.assign(stashed_sym.symbol_expr(), orig.symbol_expr());

src/goto-instrument/accelerate/polynomial_accelerator.cpp

Lines changed: 3 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -752,23 +752,13 @@ void polynomial_acceleratort::stash_variables(
752752
expr_sett modified,
753753
substitutiont &substitution)
754754
{
755-
find_symbols_sett vars;
756-
757-
for(expr_sett::iterator it=modified.begin();
758-
it!=modified.end();
759-
++it)
760-
{
761-
find_symbols(*it, vars);
762-
}
763-
755+
find_symbols_sett vars = find_symbols(modified.begin(), modified.end());
764756
irep_idt loop_counter_name=to_symbol_expr(loop_counter).get_identifier();
765757
vars.erase(loop_counter_name);
766758

767-
for(find_symbols_sett::iterator it=vars.begin();
768-
it!=vars.end();
769-
++it)
759+
for(const irep_idt &id : vars)
770760
{
771-
const symbolt &orig = symbol_table.lookup_ref(*it);
761+
const symbolt &orig = symbol_table.lookup_ref(id);
772762
symbolt stashed_sym=utils.fresh_symbol("polynomial::stash", orig.type);
773763
substitution[orig.symbol_expr()]=stashed_sym.symbol_expr();
774764
program.assign(stashed_sym.symbol_expr(), orig.symbol_expr());

src/goto-symex/precondition.cpp

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -114,10 +114,8 @@ void preconditiont::compute_rec(exprt &dest)
114114

115115
const std::vector<exprt> expr_set = value_sets.get_values(
116116
SSA_step.source.function_id, target, deref_expr.pointer());
117-
std::unordered_set<irep_idt> symbols;
118-
119-
for(const exprt &e : expr_set)
120-
find_symbols(e, symbols);
117+
const std::unordered_set<irep_idt> symbols =
118+
find_symbols(expr_set.begin(), expr_set.end());
121119

122120
if(symbols.find(lhs_identifier)!=symbols.end())
123121
{

0 commit comments

Comments
 (0)