case DW_TAG_base_type:
case DW_TAG_enumeration_type:
case DW_TAG_pointer_type:
+ case DW_TAG_reference_type:
+ case DW_TAG_rvalue_reference_type:
case DW_TAG_structure_type:
case DW_TAG_union_type:
if(subtype->byte_size == 0){ /*declaration of the type, need the complete description */
return res;
}
break;
+ case DW_TAG_reference_type:
+ case DW_TAG_rvalue_reference_type:
case DW_TAG_pointer_type:
if(type->dw_type_id && ((dw_type_t)xbt_dict_get_or_null(info->types, type->dw_type_id))->type == DW_TAG_subroutine_type){
addr_pointed1 = *((void **)(area1));
type = type->subtype;
}
}
- if((type->byte_size == DW_TAG_pointer_type) || ((type->type == DW_TAG_base_type) && type->name!=NULL && (!strcmp(type->name, "char"))))
+ if((type->type == DW_TAG_pointer_type) || ((type->type == DW_TAG_base_type) && type->name!=NULL && (!strcmp(type->name, "char"))))
type_size = -1;
else
type_size = type->byte_size;