33 goto_functionst::function_mapt::iterator entry=
38 message.
error() <<
"No function " << identifier
45 message.
warning() <<
"Function " << identifier <<
" is inlined, "
46 <<
"instantiations will not be removed"
50 if(entry->second.body_available())
52 message.
status() <<
"Removing body of " << identifier
54 entry->second.clear();
70 const std::list<std::string> &names,
73 for(
const auto &f : names)
dstringt has one field, an unsigned integer no which is an index into a static table of strings.
function_mapt function_map
symbol_tablet symbol_table
Symbol table.
goto_functionst goto_functions
GOTO functions.
Class that provides messages with a built-in verbosity 'level'.
mstreamt & warning() const
mstreamt & status() const
symbolt & get_writeable_ref(const irep_idt &name)
Find a symbol in the symbol table for read-write access.
const symbolt & lookup_ref(const irep_idt &name) const
Find a symbol in the symbol table for read-only access.
typet type
Type of symbol.
exprt value
Initial value of symbol.
void remove_function(goto_modelt &goto_model, const irep_idt &identifier, message_handlert &message_handler)
Remove the body of function "identifier" such that an analysis will treat it as a side-effect free fu...
void remove_functions(goto_modelt &goto_model, const std::list< std::string > &names, message_handlert &message_handler)
Remove the body of all functions listed in "names" such that an analysis will treat it as a side-effe...
Remove function definition.
const code_typet & to_code_type(const typet &type)
Cast a typet to a code_typet.