cprover
c_typecheck_baset Class Referenceabstract

#include <c_typecheck_base.h>

Inheritance diagram for c_typecheck_baset:
[legend]
Collaboration diagram for c_typecheck_baset:
[legend]

Public Member Functions

 c_typecheck_baset (symbol_tablet &_symbol_table, const std::string &_module, message_handlert &_message_handler)
 
 c_typecheck_baset (symbol_tablet &_symbol_table1, const symbol_tablet &_symbol_table2, const std::string &_module, message_handlert &_message_handler)
 
virtual ~c_typecheck_baset ()
 
virtual void typecheck ()=0
 
virtual void typecheck_expr (exprt &expr)
 
- Public Member Functions inherited from typecheckt
 typecheckt (message_handlert &_message_handler)
 
virtual ~typecheckt ()
 
void err_location (const source_locationt &loc)
 
void err_location (const exprt &src)
 
void err_location (const typet &src)
 
virtual bool typecheck_main ()
 
- Public Member Functions inherited from messaget
virtual void set_message_handler (message_handlert &_message_handler)
 
message_handlertget_message_handler ()
 
 messaget ()
 
 messaget (const messaget &other)
 
 messaget (message_handlert &_message_handler)
 
virtual ~messaget ()
 
mstreamtget_mstream (unsigned message_level)
 
mstreamterror ()
 
mstreamtwarning ()
 
mstreamtresult ()
 
mstreamtstatus ()
 
mstreamtstatistics ()
 
mstreamtprogress ()
 
mstreamtdebug ()
 
- Public Member Functions inherited from namespacet
 namespacet (const symbol_tablet &_symbol_table)
 
 namespacet (const symbol_tablet &_symbol_table1, const symbol_tablet &_symbol_table2)
 
 namespacet (const symbol_tablet *_symbol_table1, const symbol_tablet *_symbol_table2)
 
virtual bool lookup (const irep_idt &name, const symbolt *&symbol) const
 
virtual unsigned get_max (const std::string &prefix) const
 
const symbol_tabletget_symbol_table () const
 
- Public Member Functions inherited from namespace_baset
const symboltlookup (const irep_idt &name) const
 
const symboltlookup (const irept &irep) const
 
virtual ~namespace_baset ()
 
void follow_symbol (irept &irep) const
 
void follow_macros (exprt &expr) const
 
const typetfollow (const typet &src) const
 
const typetfollow_tag (const union_tag_typet &src) const
 
const typetfollow_tag (const struct_tag_typet &src) const
 
const typetfollow_tag (const c_enum_tag_typet &src) const
 

Protected Types

typedef std::unordered_map< irep_idt, typet, irep_id_hashid_type_mapt
 
typedef std::unordered_map< irep_idt, irep_idt, irep_id_hashasm_label_mapt
 

Protected Member Functions

virtual std::string to_string (const exprt &expr)
 
virtual std::string to_string (const typet &type)
 
virtual void do_initializer (exprt &initializer, const typet &type, bool force_constant)
 
virtual exprt do_initializer_rec (const exprt &value, const typet &type, bool force_constant)
 initialize something of type `type' with given value `value' More...
 
virtual exprt do_initializer_list (const exprt &value, const typet &type, bool force_constant)
 
virtual exprt::operandst::const_iterator do_designated_initializer (exprt &result, designatort &designator, const exprt &initializer_list, exprt::operandst::const_iterator init_it, bool force_constant)
 
designatort make_designator (const typet &type, const exprt &src)
 
void designator_enter (const typet &type, designatort &designator)
 
void increment_designator (designatort &designator)
 
bool gcc_vector_types_compatible (const vector_typet &, const vector_typet &)
 
virtual void implicit_typecast (exprt &expr, const typet &type)
 
virtual void implicit_typecast_arithmetic (exprt &expr)
 
virtual void implicit_typecast_arithmetic (exprt &expr1, exprt &expr2)
 
virtual void implicit_typecast_bool (exprt &expr)
 
virtual void start_typecheck_code ()
 
virtual void typecheck_code (codet &code)
 
virtual void typecheck_assign (codet &expr)
 
virtual void typecheck_asm (codet &code)
 
virtual void typecheck_block (codet &code)
 
virtual void typecheck_break (codet &code)
 
virtual void typecheck_continue (codet &code)
 
virtual void typecheck_decl (codet &code)
 
virtual void typecheck_expression (codet &code)
 
virtual void typecheck_for (codet &code)
 
virtual void typecheck_goto (code_gotot &code)
 
virtual void typecheck_ifthenelse (code_ifthenelset &code)
 
virtual void typecheck_label (code_labelt &code)
 
virtual void typecheck_switch_case (code_switch_caset &code)
 
virtual void typecheck_gcc_computed_goto (codet &code)
 
virtual void typecheck_gcc_switch_case_range (codet &code)
 
virtual void typecheck_gcc_local_label (codet &code)
 
virtual void typecheck_return (codet &code)
 
virtual void typecheck_switch (code_switcht &code)
 
virtual void typecheck_while (code_whilet &code)
 
virtual void typecheck_dowhile (code_dowhilet &code)
 
virtual void typecheck_start_thread (codet &code)
 
virtual void typecheck_spec_expr (codet &code, const irep_idt &spec)
 
virtual void typecheck_expr_builtin_va_arg (exprt &expr)
 
virtual void typecheck_expr_builtin_offsetof (exprt &expr)
 
virtual void typecheck_expr_cw_va_arg_typeof (exprt &expr)
 
virtual void typecheck_expr_main (exprt &expr)
 
virtual void typecheck_expr_operands (exprt &expr)
 
virtual void typecheck_expr_comma (exprt &expr)
 
virtual void typecheck_expr_constant (exprt &expr)
 
virtual void typecheck_expr_side_effect (side_effect_exprt &expr)
 
virtual void typecheck_expr_unary_arithmetic (exprt &expr)
 
virtual void typecheck_expr_unary_boolean (exprt &expr)
 
virtual void typecheck_expr_binary_arithmetic (exprt &expr)
 
virtual void typecheck_expr_shifts (shift_exprt &expr)
 
virtual void typecheck_expr_pointer_arithmetic (exprt &expr)
 
virtual void typecheck_arithmetic_pointer (const exprt &expr)
 
virtual void typecheck_expr_binary_boolean (exprt &expr)
 
virtual void typecheck_expr_trinary (if_exprt &expr)
 
virtual void typecheck_expr_address_of (exprt &expr)
 
virtual void typecheck_expr_dereference (exprt &expr)
 
virtual void typecheck_expr_member (exprt &expr)
 
virtual void typecheck_expr_ptrmember (exprt &expr)
 
virtual void typecheck_expr_rel (binary_relation_exprt &expr)
 
virtual void typecheck_expr_rel_vector (binary_relation_exprt &expr)
 
virtual void adjust_float_rel (exprt &expr)
 
virtual void typecheck_expr_index (exprt &expr)
 
virtual void typecheck_expr_typecast (exprt &expr)
 
virtual void typecheck_expr_symbol (exprt &expr)
 
virtual void typecheck_expr_sizeof (exprt &expr)
 
virtual void typecheck_expr_alignof (exprt &expr)
 
virtual void typecheck_expr_function_identifier (exprt &expr)
 
virtual void typecheck_side_effect_gcc_conditional_expression (side_effect_exprt &expr)
 
virtual void typecheck_side_effect_function_call (side_effect_expr_function_callt &expr)
 
virtual void typecheck_side_effect_assignment (side_effect_exprt &expr)
 
virtual void typecheck_side_effect_statement_expression (side_effect_exprt &expr)
 
virtual void typecheck_function_call_arguments (side_effect_expr_function_callt &expr)
 
virtual exprt do_special_functions (side_effect_expr_function_callt &expr)
 
virtual void make_index_type (exprt &expr)
 
virtual void make_constant (exprt &expr)
 
virtual void make_constant_index (exprt &expr)
 
virtual void make_constant_rec (exprt &expr)
 
virtual bool gcc_types_compatible_p (const typet &, const typet &)
 
virtual void typecheck_type (typet &type)
 
virtual void typecheck_compound_type (struct_union_typet &type)
 
virtual void typecheck_compound_body (struct_union_typet &type)
 
virtual void typecheck_c_enum_type (typet &type)
 
virtual void typecheck_c_enum_tag_type (c_enum_tag_typet &type)
 
virtual void typecheck_code_type (code_typet &type)
 
virtual void typecheck_symbol_type (typet &type)
 
virtual void typecheck_c_bit_field_type (c_bit_field_typet &type)
 
virtual void typecheck_typeof_type (typet &type)
 
virtual void typecheck_array_type (array_typet &type)
 
virtual void typecheck_vector_type (vector_typet &type)
 
virtual void typecheck_custom_type (typet &type)
 
virtual void adjust_function_parameter (typet &type) const
 
virtual bool is_complete_type (const typet &type) const
 
typet enum_constant_type (const mp_integer &min, const mp_integer &max) const
 
typet enum_underlying_type (const mp_integer &min, const mp_integer &max, bool is_packed) const
 
void make_already_typechecked (typet &dest)
 
void add_argc_argv (const symbolt &main_symbol)
 
void move_symbol (symbolt &symbol, symbolt *&new_symbol)
 
void move_symbol (symbolt &symbol)
 
void typecheck_declaration (ansi_c_declarationt &)
 
void typecheck_symbol (symbolt &symbol)
 
void typecheck_new_symbol (symbolt &symbol)
 
void typecheck_redefinition_type (symbolt &old_symbol, symbolt &new_symbol)
 
void typecheck_redefinition_non_type (symbolt &old_symbol, symbolt &new_symbol)
 
void typecheck_function_body (symbolt &symbol)
 
virtual void do_initializer (symbolt &symbol)
 
void apply_asm_label (const irep_idt &asm_label, symbolt &symbol)
 

Static Protected Member Functions

static void add_rounding_mode (exprt &)
 
static bool is_numeric_type (const typet &src)
 

Protected Attributes

symbol_tabletsymbol_table
 
const irep_idt module
 
const irep_idt mode
 
symbolt current_symbol
 
id_type_mapt parameter_map
 
bool break_is_allowed
 
bool continue_is_allowed
 
bool case_is_allowed
 
typet switch_op_type
 
typet return_type
 
std::map< irep_idt, source_locationtlabels_defined
 
std::map< irep_idt, source_locationtlabels_used
 
std::list< codetclean_code
 
asm_label_mapt asm_label_map
 
- Protected Attributes inherited from messaget
message_handlertmessage_handler
 
mstreamt mstream
 
- Protected Attributes inherited from namespacet
const symbol_tabletsymbol_table1
 
const symbol_tabletsymbol_table2
 

Additional Inherited Members

- Public Types inherited from messaget
enum  message_levelt {
  M_ERROR =1, M_WARNING =2, M_RESULT =4, M_STATUS =6,
  M_STATISTICS =8, M_PROGRESS =9, M_DEBUG =10
}
 
- Static Public Member Functions inherited from messaget
static mstreamteom (mstreamt &m)
 
static mstreamtendl (mstreamt &m)
 

Detailed Description

Definition at line 25 of file c_typecheck_base.h.

Member Typedef Documentation

§ asm_label_mapt

typedef std::unordered_map<irep_idt, irep_idt, irep_id_hash> c_typecheck_baset::asm_label_mapt
protected

Definition at line 265 of file c_typecheck_base.h.

§ id_type_mapt

typedef std::unordered_map<irep_idt, typet, irep_id_hash> c_typecheck_baset::id_type_mapt
protected

Definition at line 66 of file c_typecheck_base.h.

Constructor & Destructor Documentation

§ c_typecheck_baset() [1/2]

c_typecheck_baset::c_typecheck_baset ( symbol_tablet _symbol_table,
const std::string &  _module,
message_handlert _message_handler 
)
inline

Definition at line 30 of file c_typecheck_base.h.

§ c_typecheck_baset() [2/2]

c_typecheck_baset::c_typecheck_baset ( symbol_tablet _symbol_table1,
const symbol_tablet _symbol_table2,
const std::string &  _module,
message_handlert _message_handler 
)
inline

Definition at line 42 of file c_typecheck_base.h.

§ ~c_typecheck_baset()

virtual c_typecheck_baset::~c_typecheck_baset ( )
inlinevirtual

Definition at line 55 of file c_typecheck_base.h.

References typecheck(), and typecheck_expr().

Member Function Documentation

§ add_argc_argv()

§ add_rounding_mode()

void c_typecheck_baset::add_rounding_mode ( exprt expr)
staticprotected

§ adjust_float_rel()

void c_typecheck_baset::adjust_float_rel ( exprt expr)
protectedvirtual

§ adjust_function_parameter()

void c_typecheck_baset::adjust_function_parameter ( typet type) const
protectedvirtual

§ apply_asm_label()

§ designator_enter()

§ do_designated_initializer()

§ do_initializer() [1/2]

§ do_initializer() [2/2]

§ do_initializer_list()

§ do_initializer_rec()

§ do_special_functions()

§ enum_constant_type()

§ enum_underlying_type()

§ gcc_types_compatible_p()

bool c_typecheck_baset::gcc_types_compatible_p ( const typet type1,
const typet type2 
)
protectedvirtual

§ gcc_vector_types_compatible()

bool c_typecheck_baset::gcc_vector_types_compatible ( const vector_typet type0,
const vector_typet type1 
)
protected

§ implicit_typecast()

§ implicit_typecast_arithmetic() [1/2]

§ implicit_typecast_arithmetic() [2/2]

void c_typecheck_baset::implicit_typecast_arithmetic ( exprt expr1,
exprt expr2 
)
protectedvirtual

§ implicit_typecast_bool()

§ increment_designator()

§ is_complete_type()

bool c_typecheck_baset::is_complete_type ( const typet type) const
protectedvirtual

§ is_numeric_type()

static bool c_typecheck_baset::is_numeric_type ( const typet src)
inlinestaticprotected

Definition at line 252 of file c_typecheck_base.h.

References irept::id().

Referenced by typecheck_expr_side_effect(), and typecheck_expr_typecast().

§ make_already_typechecked()

void c_typecheck_baset::make_already_typechecked ( typet dest)
inlineprotected

§ make_constant()

§ make_constant_index()

§ make_constant_rec()

void c_typecheck_baset::make_constant_rec ( exprt expr)
protectedvirtual

Definition at line 3292 of file c_typecheck_expr.cpp.

Referenced by make_constant().

§ make_designator()

§ make_index_type()

void c_typecheck_baset::make_index_type ( exprt expr)
protectedvirtual

§ move_symbol() [1/2]

§ move_symbol() [2/2]

§ start_typecheck_code()

void c_typecheck_baset::start_typecheck_code ( )
protectedvirtual

§ to_string() [1/2]

§ to_string() [2/2]

std::string c_typecheck_baset::to_string ( const typet type)
protectedvirtual

Reimplemented in cpp_typecheckt.

Definition at line 27 of file c_typecheck_base.cpp.

References type2c().

§ typecheck()

virtual void c_typecheck_baset::typecheck ( )
pure virtual

Implements typecheckt.

Implemented in cpp_typecheckt, and ansi_c_typecheckt.

Referenced by ~c_typecheck_baset().

§ typecheck_arithmetic_pointer()

void c_typecheck_baset::typecheck_arithmetic_pointer ( const exprt expr)
protectedvirtual

§ typecheck_array_type()

§ typecheck_asm()

void c_typecheck_baset::typecheck_asm ( codet code)
protectedvirtual

§ typecheck_assign()

void c_typecheck_baset::typecheck_assign ( codet expr)
protectedvirtual

§ typecheck_block()

void c_typecheck_baset::typecheck_block ( codet code)
protectedvirtual

§ typecheck_break()

void c_typecheck_baset::typecheck_break ( codet code)
protectedvirtual

§ typecheck_c_bit_field_type()

§ typecheck_c_enum_tag_type()

§ typecheck_c_enum_type()

§ typecheck_code()

§ typecheck_code_type()

§ typecheck_compound_body()

§ typecheck_compound_type()

§ typecheck_continue()

void c_typecheck_baset::typecheck_continue ( codet code)
protectedvirtual

§ typecheck_custom_type()

§ typecheck_decl()

§ typecheck_declaration()

§ typecheck_dowhile()

§ typecheck_expr()

§ typecheck_expr_address_of()

§ typecheck_expr_alignof()

void c_typecheck_baset::typecheck_expr_alignof ( exprt expr)
protectedvirtual

§ typecheck_expr_binary_arithmetic()

§ typecheck_expr_binary_boolean()

void c_typecheck_baset::typecheck_expr_binary_boolean ( exprt expr)
protectedvirtual

§ typecheck_expr_builtin_offsetof()

§ typecheck_expr_builtin_va_arg()

§ typecheck_expr_comma()

void c_typecheck_baset::typecheck_expr_comma ( exprt expr)
protectedvirtual

§ typecheck_expr_constant()

void c_typecheck_baset::typecheck_expr_constant ( exprt expr)
protectedvirtual

Definition at line 2676 of file c_typecheck_expr.cpp.

Referenced by typecheck_expr_main().

§ typecheck_expr_cw_va_arg_typeof()

void c_typecheck_baset::typecheck_expr_cw_va_arg_typeof ( exprt expr)
protectedvirtual

Definition at line 492 of file c_typecheck_expr.cpp.

References irept::add(), signed_int_type(), exprt::type(), and typecheck_type().

Referenced by typecheck_expr_main().

§ typecheck_expr_dereference()

§ typecheck_expr_function_identifier()

void c_typecheck_baset::typecheck_expr_function_identifier ( exprt expr)
protectedvirtual

§ typecheck_expr_index()

§ typecheck_expr_main()

void c_typecheck_baset::typecheck_expr_main ( exprt expr)
protectedvirtual

Reimplemented in cpp_typecheckt.

Definition at line 169 of file c_typecheck_expr.cpp.

References irept::add(), exprt::add_source_location(), messaget::eom(), typecheckt::err_location(), messaget::error(), namespace_baset::follow(), forall_irep, Forall_irep, Forall_operands, gcc_types_compatible_p(), irept::get(), irept::get_bool(), irept::get_sub(), irept::id(), irept::is_nil(), irept::is_not_nil(), is_number(), exprt::make_bool(), exprt::make_typecast(), exprt::op0(), exprt::operands(), irept::pretty(), irept::remove(), irept::set(), signed_int_type(), exprt::source_location(), typet::subtype(), irept::swap(), to_binary_relation_expr(), to_if_expr(), to_shift_expr(), to_side_effect_expr(), to_string(), to_symbol_expr(), exprt::type(), typecheck_expr(), typecheck_expr_address_of(), typecheck_expr_alignof(), typecheck_expr_binary_arithmetic(), typecheck_expr_binary_boolean(), typecheck_expr_builtin_offsetof(), typecheck_expr_builtin_va_arg(), typecheck_expr_comma(), typecheck_expr_constant(), typecheck_expr_cw_va_arg_typeof(), typecheck_expr_dereference(), typecheck_expr_index(), typecheck_expr_member(), typecheck_expr_ptrmember(), typecheck_expr_rel(), typecheck_expr_shifts(), typecheck_expr_side_effect(), typecheck_expr_sizeof(), typecheck_expr_symbol(), typecheck_expr_trinary(), typecheck_expr_typecast(), typecheck_expr_unary_arithmetic(), typecheck_expr_unary_boolean(), typecheck_type(), and void_type().

Referenced by typecheck_expr(), and cpp_typecheckt::typecheck_expr_main().

§ typecheck_expr_member()

§ typecheck_expr_operands()

§ typecheck_expr_pointer_arithmetic()

§ typecheck_expr_ptrmember()

§ typecheck_expr_rel()

§ typecheck_expr_rel_vector()

§ typecheck_expr_shifts()

§ typecheck_expr_side_effect()

§ typecheck_expr_sizeof()

§ typecheck_expr_symbol()

§ typecheck_expr_trinary()

§ typecheck_expr_typecast()

§ typecheck_expr_unary_arithmetic()

void c_typecheck_baset::typecheck_expr_unary_arithmetic ( exprt expr)
protectedvirtual

§ typecheck_expr_unary_boolean()

void c_typecheck_baset::typecheck_expr_unary_boolean ( exprt expr)
protectedvirtual

§ typecheck_expression()

void c_typecheck_baset::typecheck_expression ( codet code)
protectedvirtual

§ typecheck_for()

§ typecheck_function_body()

§ typecheck_function_call_arguments()

§ typecheck_gcc_computed_goto()

void c_typecheck_baset::typecheck_gcc_computed_goto ( codet code)
protectedvirtual

§ typecheck_gcc_local_label()

void c_typecheck_baset::typecheck_gcc_local_label ( codet code)
protectedvirtual

Definition at line 566 of file c_typecheck_code.cpp.

Referenced by implicit_typecast_bool(), and typecheck_code().

§ typecheck_gcc_switch_case_range()

void c_typecheck_baset::typecheck_gcc_switch_case_range ( codet code)
protectedvirtual

§ typecheck_goto()

void c_typecheck_baset::typecheck_goto ( code_gotot code)
protectedvirtual

§ typecheck_ifthenelse()

§ typecheck_label()

void c_typecheck_baset::typecheck_label ( code_labelt code)
protectedvirtual

§ typecheck_new_symbol()

§ typecheck_redefinition_non_type()

§ typecheck_redefinition_type()

§ typecheck_return()

§ typecheck_side_effect_assignment()

§ typecheck_side_effect_function_call()

§ typecheck_side_effect_gcc_conditional_expression()

§ typecheck_side_effect_statement_expression()

§ typecheck_spec_expr()

void c_typecheck_baset::typecheck_spec_expr ( codet code,
const irep_idt spec 
)
protectedvirtual

§ typecheck_start_thread()

void c_typecheck_baset::typecheck_start_thread ( codet code)
protectedvirtual

§ typecheck_switch()

§ typecheck_switch_case()

§ typecheck_symbol()

§ typecheck_symbol_type()

§ typecheck_type()

void c_typecheck_baset::typecheck_type ( typet type)
protectedvirtual

Reimplemented in cpp_typecheckt.

Definition at line 31 of file c_typecheck_type.cpp.

References irept::add(), typet::add_source_location(), alignment(), configt::ansi_c, config, double_type(), messaget::eom(), messaget::error(), irept::find(), float_type(), namespace_baset::follow_tag(), from_integer(), gcc_float128_type(), gcc_signed_int128_type(), gcc_unsigned_int128_type(), irept::get(), irept::get_bool(), messaget::get_message_handler(), irept::id(), irept::is_not_nil(), is_signed(), configt::ansi_ct::long_int_width, configt::ansi_ct::long_long_int_width, make_constant(), mode, ansi_c_convert_typet::read(), messaget::result(), irept::set(), signed_char_type(), signed_int_type(), signed_long_int_type(), signed_long_long_int_type(), signed_short_int_type(), signed_size_type(), size_type(), typet::source_location(), messaget::mstreamt::source_location, typet::subtype(), symbol_table, symbol_tablet::symbols, to_array_type(), to_c_bit_field_type(), to_c_enum_tag_type(), to_code_type(), to_string(), to_struct_union_type(), to_vector_type(), typecheck_array_type(), typecheck_c_bit_field_type(), typecheck_c_enum_tag_type(), typecheck_c_enum_type(), typecheck_code_type(), typecheck_compound_type(), typecheck_custom_type(), typecheck_expr(), typecheck_symbol_type(), typecheck_typeof_type(), typecheck_vector_type(), unsigned_char_type(), unsigned_int_type(), unsigned_long_int_type(), unsigned_long_long_int_type(), unsigned_short_int_type(), ansi_c_convert_typet::write(), and c_qualifierst::write().

Referenced by typecheck_array_type(), typecheck_c_bit_field_type(), typecheck_code_type(), typecheck_compound_body(), typecheck_declaration(), typecheck_expr_alignof(), typecheck_expr_builtin_offsetof(), typecheck_expr_builtin_va_arg(), typecheck_expr_cw_va_arg_typeof(), typecheck_expr_main(), typecheck_expr_sizeof(), typecheck_expr_typecast(), typecheck_typeof_type(), and typecheck_vector_type().

§ typecheck_typeof_type()

§ typecheck_vector_type()

§ typecheck_while()

Member Data Documentation

§ asm_label_map

asm_label_mapt c_typecheck_baset::asm_label_map
protected

§ break_is_allowed

bool c_typecheck_baset::break_is_allowed
protected

§ case_is_allowed

bool c_typecheck_baset::case_is_allowed
protected

§ clean_code

std::list<codet> c_typecheck_baset::clean_code
protected

§ continue_is_allowed

bool c_typecheck_baset::continue_is_allowed
protected

§ current_symbol

symbolt c_typecheck_baset::current_symbol
protected

Definition at line 64 of file c_typecheck_base.h.

Referenced by typecheck_array_type(), and typecheck_declaration().

§ labels_defined

std::map<irep_idt, source_locationt> c_typecheck_baset::labels_defined
protected

Definition at line 149 of file c_typecheck_base.h.

Referenced by typecheck_function_body(), and typecheck_label().

§ labels_used

std::map<irep_idt, source_locationt> c_typecheck_baset::labels_used
protected

§ mode

const irep_idt c_typecheck_baset::mode
protected

§ module

§ parameter_map

id_type_mapt c_typecheck_baset::parameter_map
protected

§ return_type

§ switch_op_type

typet c_typecheck_baset::switch_op_type
protected

§ symbol_table

symbol_tablet& c_typecheck_baset::symbol_table
protected

Definition at line 61 of file c_typecheck_base.h.

Referenced by ansi_c_typecheck(), cpp_typecheckt::class_template_symbol(), cpp_typecheckt::clean_up(), cpp_declarator_convertert::convert(), cpp_typecheckt::convert(), cpp_typecheckt::convert_anon_struct_union_member(), cpp_typecheckt::convert_anonymous_union(), cpp_typecheckt::convert_class_template_specialization(), cpp_declarator_convertert::convert_new_symbol(), cpp_typecheckt::convert_parameter(), cpp_typecheck(), cpp_typecheckt::default_cpctor(), cpp_typecheckt::do_not_typechecked(), cpp_typecheckt::do_virtual_table(), cpp_typecheckt::dtor(), cpp_declarator_convertert::get_final_identifier(), cpp_typecheckt::instantiate_template(), move_symbol(), cpp_typecheckt::static_and_dynamic_initialization(), typecheck_array_type(), typecheck_c_enum_tag_type(), typecheck_c_enum_type(), cpp_typecheckt::typecheck_class_template(), cpp_typecheckt::typecheck_class_template_member(), cpp_typecheckt::typecheck_compound_declarator(), typecheck_compound_type(), cpp_typecheckt::typecheck_compound_type(), typecheck_decl(), typecheck_declaration(), cpp_typecheckt::typecheck_enum_body(), cpp_typecheckt::typecheck_enum_type(), typecheck_expr_builtin_va_arg(), cpp_typecheckt::typecheck_expr_function_identifier(), cpp_typecheckt::typecheck_expr_member(), typecheck_expr_operands(), cpp_typecheckt::typecheck_function_template(), cpp_typecheckt::typecheck_member_function(), cpp_typecheckt::typecheck_method_application(), typecheck_redefinition_non_type(), typecheck_side_effect_function_call(), cpp_typecheckt::typecheck_side_effect_function_call(), typecheck_symbol(), typecheck_symbol_type(), and typecheck_type().


The documentation for this class was generated from the following files: