-#include "mc/Variable.hpp"
-#include "mc/mc_memory_map.h"
-
-/** \brief A class of DWARF tags (DW_TAG_*)
- */
-typedef enum mc_tag_class {
- mc_tag_unknown,
- mc_tag_type,
- mc_tag_subprogram,
- mc_tag_variable,
- mc_tag_scope,
- mc_tag_namespace
-} mc_tag_class;
-
-static mc_tag_class MC_dwarf_tag_classify(int tag)
-{
- switch (tag) {
-
- case DW_TAG_array_type:
- case DW_TAG_class_type:
- case DW_TAG_enumeration_type:
- case DW_TAG_typedef:
- case DW_TAG_pointer_type:
- case DW_TAG_reference_type:
- case DW_TAG_rvalue_reference_type:
- case DW_TAG_string_type:
- case DW_TAG_structure_type:
- case DW_TAG_subroutine_type:
- case DW_TAG_union_type:
- case DW_TAG_ptr_to_member_type:
- case DW_TAG_set_type:
- case DW_TAG_subrange_type:
- case DW_TAG_base_type:
- case DW_TAG_const_type:
- case DW_TAG_file_type:
- case DW_TAG_packed_type:
- case DW_TAG_volatile_type:
- case DW_TAG_restrict_type:
- case DW_TAG_interface_type:
- case DW_TAG_unspecified_type:
- case DW_TAG_shared_type:
- return mc_tag_type;