// Try to find a more complete description of the type:
// We need to fix in order to support C++.
- dw_type_t subtype = xbt_dict_get_or_null(info->types_by_name, type->subtype->name);
+ dw_type_t subtype = xbt_dict_get_or_null(info->full_types_by_name, type->subtype->name);
if(subtype!=NULL) {
type->subtype = subtype;
}
for(size_t i=0; i!=NB_REGIONS; ++i) {
mc_mem_region_t region = snapshot->regions[i];
- if(addr>=region->data && addr<=region->data+region->size) {
+ if(addr>=region->data && addr<=(void*)(((char*)region->data)+region->size)) {
size_t offset = (size_t) ((char*) addr - (char*) region->data);
- return (uintptr_t) (region->start_addr + offset);
+ return ((uintptr_t) region->start_addr) + offset;
}
}