cprover
|
#include <linking_class.h>
Classes | |
struct | adjust_type_infot |
Public Member Functions | |
linkingt (symbol_table_baset &_main_symbol_table, message_handlert &_message_handler) | |
bool | link (const symbol_table_baset &src_symbol_table) |
Merges the symbol table src_symbol_table into main_symbol_table , renaming symbols from src_symbol_table when necessary. | |
Public Attributes | |
rename_symbolt | rename_symbol |
casting_replace_symbolt | object_type_updates |
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) |
std::unordered_map< irep_idt, irep_idt > | rename_symbols (const symbol_table_baset &, const std::unordered_set< irep_idt > &needs_to_be_renamed) |
void | copy_symbols (const symbol_table_baset &, 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 |
bool | detailed_conflict_report_rec (const symbolt &old_symbol, const symbolt &new_symbol, const typet &type1, const typet &type2, unsigned depth, exprt &conflict_path) |
Returns true iff the conflict report on a particular branch of the tree of types was a definitive result, and not contingent on conflicts within a tag type. | |
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 symbol_table_baset &, const irep_idt &) |
Protected Attributes | |
symbol_table_baset & | main_symbol_table |
namespacet | ns |
message_handlert & | message_handler |
std::unordered_set< irep_idt > | renamed_ids |
Definition at line 34 of file linking_class.h.
|
inline |
Definition at line 37 of file linking_class.h.
|
protected |
Definition at line 1069 of file linking.cpp.
|
protected |
Definition at line 877 of file linking.cpp.
|
protected |
Definition at line 1456 of file linking.cpp.
|
inlineprotected |
Definition at line 153 of file linking_class.h.
|
protected |
Returns true iff the conflict report on a particular branch of the tree of types was a definitive result, and not contingent on conflicts within a tag type.
Definition at line 194 of file linking.cpp.
Definition at line 556 of file linking.cpp.
Definition at line 1176 of file linking.cpp.
Definition at line 1084 of file linking.cpp.
Definition at line 1220 of file linking.cpp.
|
protected |
Definition at line 114 of file linking.cpp.
bool linkingt::link | ( | const symbol_table_baset & | src_symbol_table | ) |
Merges the symbol table src_symbol_table
into main_symbol_table
, renaming symbols from src_symbol_table
when necessary.
Definition at line 1522 of file linking.cpp.
|
protected |
Definition at line 481 of file linking.cpp.
|
protected |
Definition at line 499 of file linking.cpp.
|
inlineprotected |
Definition at line 63 of file linking_class.h.
|
protected |
Definition at line 542 of file linking.cpp.
|
protected |
Definition at line 1315 of file linking.cpp.
|
protected |
Definition at line 518 of file linking.cpp.
|
protected |
Definition at line 1421 of file linking.cpp.
|
protected |
|
protected |
Definition at line 121 of file linking.cpp.
|
inlineprotected |
Definition at line 136 of file linking_class.h.
|
protected |
Definition at line 142 of file linking.cpp.
|
protected |
Definition at line 183 of file linking_class.h.
|
protected |
Definition at line 185 of file linking_class.h.
|
protected |
Definition at line 184 of file linking_class.h.
casting_replace_symbolt linkingt::object_type_updates |
Definition at line 52 of file linking_class.h.
rename_symbolt linkingt::rename_symbol |
Definition at line 51 of file linking_class.h.
|
protected |
Definition at line 190 of file linking_class.h.