cprover
|
#include <linking_class.h>
Classes | |
struct | adjust_type_infot |
Public Member Functions | |
linkingt (symbol_table_baset &_main_symbol_table, const symbol_table_baset &_src_symbol_table, message_handlert &_message_handler) | |
virtual void | typecheck () |
![]() | |
typecheckt (message_handlert &_message_handler) | |
virtual | ~typecheckt () |
virtual bool | typecheck_main () |
Public Attributes | |
rename_symbolt | rename_symbol |
casting_replace_symbolt | object_type_updates |
Protected Types | |
typedef std::unordered_map< irep_idt, std::unordered_set< irep_idt > > | used_byt |
Protected Member Functions | |
bool | needs_renaming_type (const symbolt &old_symbol, const symbolt &new_symbol) |
bool | needs_renaming_non_type (const symbolt &old_symbol, const symbolt &new_symbol) |
bool | needs_renaming (const symbolt &old_symbol, const symbolt &new_symbol) |
void | do_type_dependencies (std::unordered_set< irep_idt > &) |
std::unordered_map< irep_idt, irep_idt > | rename_symbols (const std::unordered_set< irep_idt > &needs_to_be_renamed) |
void | copy_symbols (const std::unordered_map< irep_idt, irep_idt > &) |
void | duplicate_non_type_symbol (symbolt &old_symbol, symbolt &new_symbol) |
void | duplicate_code_symbol (symbolt &old_symbol, symbolt &new_symbol) |
void | duplicate_object_symbol (symbolt &old_symbol, symbolt &new_symbol) |
bool | adjust_object_type (const symbolt &old_symbol, const symbolt &new_symbol, bool &set_to_new) |
bool | adjust_object_type_rec (const typet &type1, const typet &type2, adjust_type_infot &info) |
void | duplicate_type_symbol (symbolt &old_symbol, const symbolt &new_symbol) |
std::string | expr_to_string (const irep_idt &identifier, const exprt &expr) const |
std::string | type_to_string (const irep_idt &identifier, const typet &type) const |
std::string | type_to_string_verbose (const symbolt &symbol, const typet &type) const |
std::string | type_to_string_verbose (const symbolt &symbol) const |
void | detailed_conflict_report_rec (const symbolt &old_symbol, const symbolt &new_symbol, const typet &type1, const typet &type2, unsigned depth, exprt &conflict_path) |
void | detailed_conflict_report (const symbolt &old_symbol, const symbolt &new_symbol, const typet &type1, const typet &type2) |
void | link_error (const symbolt &old_symbol, const symbolt &new_symbol, const std::string &msg) |
void | link_warning (const symbolt &old_symbol, const symbolt &new_symbol, const std::string &msg) |
void | show_struct_diff (const struct_typet &old_type, const struct_typet &new_type) |
irep_idt | rename (const irep_idt &) |
Protected Attributes | |
symbol_table_baset & | main_symbol_table |
const symbol_table_baset & | src_symbol_table |
namespacet | ns |
std::unordered_set< irep_idt > | renamed_ids |
Additional Inherited Members |
Definition at line 28 of file linking_class.h.
|
protected |
Definition at line 178 of file linking_class.h.
|
inline |
Definition at line 31 of file linking_class.h.
|
protected |
Definition at line 995 of file linking.cpp.
|
protected |
Definition at line 814 of file linking.cpp.
|
protected |
Definition at line 1368 of file linking.cpp.
|
inlineprotected |
Definition at line 142 of file linking_class.h.
|
protected |
Definition at line 130 of file linking.cpp.
|
protected |
Definition at line 1290 of file linking.cpp.
Definition at line 473 of file linking.cpp.
Definition at line 1100 of file linking.cpp.
Definition at line 1010 of file linking.cpp.
Definition at line 1134 of file linking.cpp.
|
protected |
Definition at line 50 of file linking.cpp.
|
protected |
Definition at line 400 of file linking.cpp.
|
protected |
Definition at line 417 of file linking.cpp.
|
inlineprotected |
Definition at line 56 of file linking_class.h.
|
protected |
Definition at line 459 of file linking.cpp.
|
protected |
Definition at line 1231 of file linking.cpp.
Definition at line 435 of file linking.cpp.
|
protected |
Definition at line 1335 of file linking.cpp.
|
protected |
|
protected |
Definition at line 57 of file linking.cpp.
|
inlineprotected |
Definition at line 128 of file linking_class.h.
|
protected |
Definition at line 78 of file linking.cpp.
|
virtual |
Implements typecheckt.
Definition at line 1434 of file linking.cpp.
|
protected |
Definition at line 172 of file linking_class.h.
|
protected |
Definition at line 175 of file linking_class.h.
casting_replace_symbolt linkingt::object_type_updates |
Definition at line 45 of file linking_class.h.
rename_symbolt linkingt::rename_symbol |
Definition at line 44 of file linking_class.h.
|
protected |
Definition at line 183 of file linking_class.h.
|
protected |
Definition at line 173 of file linking_class.h.