29 std::set<irep_idt> used_functions;
30 std::list<goto_functionst::function_mapt::iterator> unused_functions;
34 for(goto_functionst::function_mapt::iterator it=
39 if(used_functions.find(it->first)==used_functions.end())
40 unused_functions.push_back(it);
45 if(!unused_functions.empty())
48 <<
"Dropping " << unused_functions.size() <<
" of " <<
53 for(
const auto &f : unused_functions)
60 std::set<irep_idt> &seen)
62 std::pair<std::set<irep_idt>::const_iterator,
bool> res =
69 goto_functionst::function_mapt::const_iterator f_it =
74 for(
const auto &instruction : f_it->second.body.instructions)
76 if(instruction.is_function_call())
78 const auto &
function = instruction.call_function();