24 const std::string &name_prefix,
25 const std::string &basename_prefix,
30 static size_t temporary_counter=0;
40 std::to_string(++temporary_counter);
41 if(name_prefix.empty())
50 new_symbol.
mode=symbol_mode;
52 while(symbol_table.
move(new_symbol, symbol_ptr));
The type of an expression.
irep_idt name
The unique identifier.
const std::string & id2string(const irep_idt &d)
symbolt & get_fresh_aux_symbol(const typet &type, const std::string &name_prefix, const std::string &basename_prefix, const source_locationt &source_location, const irep_idt &symbol_mode, symbol_tablet &symbol_table)
Installs a fresh-named symbol with the requested name pattern.
irep_idt mode
Language mode.
Fresh auxiliary symbol creation.
Symbol table entry.This is a symbol in the symbol table, stored in an object of type symbol_tablet...
Internally generated symbol table entryThis is a symbol generated as part of translation to or modifi...
bool move(symbolt &symbol, symbolt *&new_symbol)
Move a symbol into the symbol table.
typet type
Type of symbol.
source_locationt location
Source code location of definition of symbol.
irep_idt base_name
Base (non-scoped) name.