19 if(type.
id()==ID_symbol)
25 type_symbol,
"symbol " +
id2string(identifier) +
" must exist already");
28 "symbol " +
id2string(identifier) +
" must be a type");
30 else if(type.
id()==ID_pointer)
34 else if(type.
id()==ID_array)
39 else if(type.
id()==ID_code)
46 for(java_method_typet::parameterst::iterator it = parameters.begin();
47 it != parameters.end();
58 symbol.
mode = ID_java;
The type of an expression.
irep_idt name
The unique identifier.
const std::string & id2string(const irep_idt &d)
std::vector< parametert > parameterst
void typecheck_type(typet &)
irep_idt mode
Language mode.
const symbol_typet & to_symbol_type(const typet &type)
Cast a generic typet to a symbol_typet.
void typecheck_type_symbol(symbolt &)
Symbol table entry.This is a symbol in the symbol table, stored in an object of type symbol_tablet...
JAVA Bytecode Language Type Checking.
const irep_idt & id() const
symbol_table_baset & symbol_table
dstringt has one field, an unsigned integer no which is an index into a static table of strings...
virtual void typecheck_expr(exprt &expr)
typet type
Type of symbol.
const java_method_typet & to_java_method_type(const typet &type)
const array_typet & to_array_type(const typet &type)
Cast a generic typet to an array_typet.
const parameterst & parameters() const
const typet & subtype() const
#define DATA_INVARIANT(CONDITION, REASON)
const symbolt * lookup(const irep_idt &name) const
Find a symbol in the symbol table for read-only access.
const typet & return_type() const
const irep_idt & get_identifier() const