15#ifndef SAGE3_CLASSES_BASIC__H
16#define SAGE3_CLASSES_BASIC__H
29#ifdef ROSE_HAVE_BOOST_SERIALIZATION_LIB
30#include <boost/filesystem.hpp>
31#include <boost/serialization/nvp.hpp>
33 namespace serialization {
34 template<
class Archive>
35 void serialize(Archive &ar, boost::filesystem::path &path,
const unsigned ) {
36 if (Archive::is_saving::value) {
37 std::string nativePath = path.string();
38 ar & BOOST_SERIALIZATION_NVP(nativePath);
40 std::string nativePath;
41 ar & BOOST_SERIALIZATION_NVP(nativePath);
70#include "Rose/Constants.h"
81#include "fileoffsetbits.h"
86 #define snprintf _snprintf
91#ifndef TEMP_FAILURE_RETRY
92#define TEMP_FAILURE_RETRY(expression) \
95 do _result = (long int) (expression); \
96 while (_result == -1L && errno == EINTR); \
111#include "rose_paths.h"
115#if defined(__WIN32__) || defined (__WIN16__)
116#error "WIN macros should not be defined (test in sage3.h)"
120#if defined(__MSDOS__) && defined(_Windows)
121#error "MSDOS macros should not be defined"
141#define ENFORCE_NO_FUNCTION_TEMPLATE_DECLARATIONS_IN_TEMPLATE_CLASS_INSTANTIATIONS 0
149#define USE_RESET_TEMPLATE_NAME false
151#include <ROSE_DEPRECATED.h>
163#define PRINT_SIDE_EFFECT_WARNINGS false
180#include "rose_attributes_list.h"
183#include <Rose/StringUtility.h>
184#include "FileUtility.h"
191#define SKIP_MANGLED_NAME_CACHING 0
194#define USE_OLD_BINARY_EXECUTABLE_IR_NODES 0
196#define USING_OLD_EXECUTABLE_FORMAT_SUPPORT 0
197#if USING_OLD_EXECUTABLE_FORMAT_SUPPORT
200namespace Exec {
namespace ELF {
class ElfFileHeader; }; };
204#include "AstAttributeMechanism.h"
210#include "Cxx_Grammar.h"
221#undef CCPP_EXTENSIONS_ALLOWED
224#include "utility_functions.h"
235#include "sageInterface.h"
240#include "manglingSupport.h"
244#include "AstPerformance.h"
252 #ifdef USE_ROSE_INTEL_PIN_SUPPORT
254 #include "IntelPinSupport.h"
258#ifdef ROSE_USE_INTERNAL_FRONTEND_DEVELOPMENT
259 #include "transformationSupport.h"
262#include <Rose/Initialize.h>
265#define OMPVERSION 201511
void serialize(std::ostream &output, Graph &graph)
Serialize a graph into a stream of bytes.