-#include <stdint.h>
-
-#include <string>
-
-#include <simgrid_config.h>
-#include <xbt/dict.h>
-#include <xbt/dynar.h>
-
-#include "mc_forward.h"
-#include "mc_location.h"
-#include "mc_process.h"
-#include "../smpi/private.h"
-
-// ***** Type
-
-typedef int e_mc_type_type;
-
-namespace simgrid {
-namespace mc {
-
-class Type {
-public:
- Type();
- ~Type();
- Type(Type const& type) = delete;
- Type& operator=(Type const&) = delete;
-
- e_mc_type_type type;
- Dwarf_Off id; /* Offset in the section (in hexadecimal form) */
- std::string name; /* Name of the type */
- int byte_size; /* Size in bytes */
- int element_count; /* Number of elements for array type */
- std::string dw_type_id; /* DW_AT_type id */
- xbt_dynar_t members; /* if DW_TAG_structure_type, DW_TAG_class_type, DW_TAG_union_type*/
- int is_pointer_type;
-
- // Location (for members) is either of:
- struct s_mc_expression location;
- int offset;
-
- mc_type_t subtype; // DW_AT_type
- mc_type_t full_type; // The same (but more complete) type
-};
-
-}
-}
-
-// ***** Object info
-
-/** Bit field of options */
-typedef int mc_object_info_flags;
-#define MC_OBJECT_INFO_NONE 0
-#define MC_OBJECT_INFO_EXECUTABLE 1
-
-namespace simgrid {
-namespace mc {