Go to the documentation of this file.
29 if(!ns.
lookup(it->first).is_macro &&
30 !it->second.body_available())
31 os << it->first <<
'\n';
52 goto_functionst::function_mapt::const_iterator entry=
56 "called function must be in function_map");
58 if(entry->second.body_available())
63 "'" +
id2string(
function) +
"' is undefined");
#define Forall_goto_program_instructions(it, program)
dstringt has one field, an unsigned integer no which is an index into a static table of strings.
source_locationt source_location
The location of the instruction in the source file.
void set_comment(const irep_idt &comment)
function_mapt function_map
void list_undefined_functions(const goto_modelt &goto_model, std::ostream &os)
A namespacet is essentially one or two symbol tables bound together, to allow for symbol lookups in t...
bool lookup(const irep_idt &name, const symbolt *&symbol) const override
See documentation for namespace_baset::lookup().
codet representation of a function call statement.
#define DATA_INVARIANT(CONDITION, REASON)
This condition should be used to document that assumptions that are made on goto_functions,...
const std::string & id2string(const irep_idt &d)
codet code
Do not read or modify directly – use get_X() instead.
void undefined_function_abort_path(goto_modelt &goto_model)
const irep_idt & get_identifier() const
const symbol_exprt & to_symbol_expr(const exprt &expr)
Cast an exprt to a symbol_exprt.
const irep_idt & id() const
const code_function_callt & to_code_function_call(const codet &code)
The Boolean constant false.
#define Forall_goto_functions(it, functions)
Handling of functions without body.
goto_functionst goto_functions
GOTO functions.
#define forall_goto_functions(it, functions)
static instructiont make_assumption(const exprt &g, const source_locationt &l=source_locationt::nil())
bool is_function_call() const
This class represents an instruction in the GOTO intermediate representation.
symbol_tablet symbol_table
Symbol table.