14 #ifndef CPROVER_GOTO_CC_COMPILE_H 15 #define CPROVER_GOTO_CC_COMPILE_H 58 bool parse(
const std::string &filename);
85 std::size_t> &cprover_macros)
const 89 cprover_macros.insert({pair.first,
114 #endif // CPROVER_GOTO_CC_COMPILE_H symbol_tablet symbol_table
bool add_input_file(const std::string &)
puts input file names into a list and does preprocessing for libraries.
std::string output_file_executable
compilet(cmdlinet &_cmdline, ui_message_handlert &mh, bool Werror)
constructor
Globally accessible architectural configuration.
std::list< std::string > tmp_dirs
const code_typet & to_code_type(const typet &type)
Cast a generic typet to a code_typet.
std::list< std::string > libraries
std::list< std::string > library_paths
const cmdlinet & _cmdline
bool doit()
reads and source and object files, compiles and links them into goto program objects.
bool find_library(const std::string &)
tries to find a library object file that matches the given library name.
bool wrote_object_files() const
Has this compiler written any object files?
bool write_bin_object_file(const std::string &, const symbol_tablet &, goto_functionst &)
writes the goto functions in the function table to a binary format object file.
bool parse_stdin()
parses a source file (low-level parsing)
void cprover_macro_arities(std::map< irep_idt, std::size_t > &cprover_macros) const
__CPROVER_... macros written to object files and their arities
bool compile()
parses source files and writes object files, or keeps the symbols in the symbol_table depending on th...
bool parse_source(const std::string &)
parses a source file
goto_functionst compiled_functions
#define PRECONDITION(CONDITION)
std::string working_directory
unsigned function_body_count(const goto_functionst &) const
bool write_object_file(const std::string &, const symbol_tablet &, goto_functionst &)
writes the goto functions in the function table to a binary format object file.
std::map< irep_idt, symbolt > written_macros
bool add_files_from_archive(const std::string &file_name, bool thin_archive)
extracts goto binaries from AR archive and add them as input files.
void convert_symbols(goto_functionst &dest)
const parameterst & parameters() const
std::string object_file_extension
std::list< std::string > source_files
std::list< std::string > object_files
bool link()
parses object files and links them
void add_compiler_specific_defines(class configt &config) const
std::string override_language
bool add_written_cprover_symbols(const symbol_tablet &symbol_table)
std::string output_file_object
~compilet()
cleans up temporary files
std::list< irep_idt > seen_modes