cprover
|
Remove symbols that are internal only. More...
Go to the source code of this file.
Functions | |
void | remove_internal_symbols (class symbol_tablet &symbol_table) |
A symbol is EXPORTED if it is a * non-static function with body that is not extern inline * symbol used in an EXPORTED symbol * type used in an EXPORTED symbol. More... | |
Remove symbols that are internal only.
Definition in file remove_internal_symbols.h.
void remove_internal_symbols | ( | symbol_tablet & | symbol_table | ) |
A symbol is EXPORTED if it is a * non-static function with body that is not extern inline * symbol used in an EXPORTED symbol * type used in an EXPORTED symbol.
Read http://gcc.gnu.org/ml/gcc/2006-11/msg00006.html on "extern inline"
Definition at line 73 of file remove_internal_symbols.cpp.
References dstringt::c_str(), config, CPROVER_PREFIX, irept::get_bool(), get_symbols_rec(), irept::id(), symbolt::is_extern, symbolt::is_file_local, irept::is_not_nil(), symbolt::is_type, configt::main, symbolt::mode, symbolt::name, code_typet::return_type(), symbol_tablet::symbols, to_code_type(), symbolt::type, and symbolt::value.
Referenced by ansi_c_languaget::typecheck().