cprover
link_goto_model.cpp File Reference

Link Goto Programs. More...

#include "link_goto_model.h"
#include <unordered_set>
#include <util/base_type.h>
#include <util/symbol.h>
#include <util/rename_symbol.h>
#include <linking/linking_class.h>
#include <util/exception_utils.h>
#include "goto_model.h"
+ Include dependency graph for link_goto_model.cpp:

Go to the source code of this file.

Functions

static void rename_symbols_in_function (goto_functionst::goto_functiont &function, irep_idt &new_function_name, const rename_symbolt &rename_symbol)
 
static bool link_functions (symbol_tablet &dest_symbol_table, goto_functionst &dest_functions, const symbol_tablet &src_symbol_table, goto_functionst &src_functions, const rename_symbolt &rename_symbol, const std::unordered_set< irep_idt > &weak_symbols, const replace_symbolt &object_type_updates)
 Link a set of goto functions, considering weak symbols and symbol renaming. More...
 
void link_goto_model (goto_modelt &dest, goto_modelt &src, message_handlert &message_handler)
 

Detailed Description

Link Goto Programs.

Definition in file link_goto_model.cpp.

Function Documentation

◆ link_functions()

static bool link_functions ( symbol_tablet dest_symbol_table,
goto_functionst dest_functions,
const symbol_tablet src_symbol_table,
goto_functionst src_functions,
const rename_symbolt rename_symbol,
const std::unordered_set< irep_idt > &  weak_symbols,
const replace_symbolt object_type_updates 
)
static

Link a set of goto functions, considering weak symbols and symbol renaming.

Definition at line 45 of file link_goto_model.cpp.

◆ link_goto_model()

void link_goto_model ( goto_modelt dest,
goto_modelt src,
message_handlert message_handler 
)

Definition at line 157 of file link_goto_model.cpp.

◆ rename_symbols_in_function()

static void rename_symbols_in_function ( goto_functionst::goto_functiont function,
irep_idt new_function_name,
const rename_symbolt rename_symbol 
)
static

Definition at line 25 of file link_goto_model.cpp.