18 out <<
" " <<
name <<
'\n';
26 out <<
" static_lifetime";
28 out <<
" thread_local";
56 out <<
" mode=" <<
mode;
60 out <<
" module=" <<
module;
64 out <<
" location: " <<
location <<
'\n';
91 dest.
set(
"is_type",
true);
93 dest.
set(
"is_macro",
true);
95 dest.
set(
"is_exported",
true);
97 dest.
set(
"is_input",
true);
99 dest.
set(
"is_output",
true);
101 dest.
set(
"is_statevar",
true);
103 dest.
set(
"is_parameter",
true);
105 dest.
set(
"is_auxiliary",
true);
107 dest.
set(
"is_weak",
true);
109 dest.
set(
"is_property",
true);
111 dest.
set(
"is_lvalue",
true);
113 dest.
set(
"is_static_lifetime",
true);
115 dest.
set(
"is_thread_local",
true);
117 dest.
set(
"is_file_local",
true);
119 dest.
set(
"is_extern",
true);
121 dest.
set(
"is_volatile",
true);
158 #define SYM_SWAP1(x) x.swap(b.x) 169 #define SYM_SWAP2(x) std::swap(x, b.x) The type of an expression.
irep_idt name
The unique identifier.
void show(std::ostream &out) const
std::string pretty(unsigned indent=0, unsigned max_indent=0) const
irep_idt mode
Language mode.
exprt value
Initial value of symbol.
irep_idt module
Name of module the symbol belongs to.
irep_idt pretty_name
Language-specific display name.
Symbol table entry.This is a symbol in the symbol table, stored in an object of type symbol_tablet...
bool get_bool(const irep_namet &name) const
class symbol_exprt symbol_expr() const
produces a symbol_exprt for a symbol
API to expression classes.
const irep_idt & get(const irep_namet &name) const
std::ostream & operator<<(std::ostream &out, const symbolt &symbol)
Base class for tree-like data structures with sharing.
typet type
Type of symbol.
source_locationt location
Source code location of definition of symbol.
Base class for all expressions.
irep_idt base_name
Base (non-scoped) name.
irept & add(const irep_namet &name)
void from_irep(const irept &src)
Expression to hold a symbol (variable)
const irept & find(const irep_namet &name) const
void set(const irep_namet &name, const irep_idt &value)