- xbt_dynar_foreach(type->members, cursor, member){
- XBT_DEBUG("Compare member %s", member->name);
- res = compare_areas_with_type((char *)area1 + member->offset, (char *)area2 + member->offset, info, other_info, member->subtype, region_size, region_type, start_data, pointer_level);
- if(res == 1)
+ case DW_TAG_class_type:
+ xbt_dynar_foreach(type->members, cursor, member) {
+ void *member1 =
+ mc_member_resolve(real_area1, type, member, snapshot1);
+ void *member2 =
+ mc_member_resolve(real_area2, type, member, snapshot2);
+ mc_mem_region_t subregion1 = mc_get_region_hinted(member1, snapshot1, region1);
+ mc_mem_region_t subregion2 = mc_get_region_hinted(member2, snapshot2, region2);
+ res =
+ compare_areas_with_type(member1, snapshot1, subregion1,
+ member2, snapshot2, subregion2,
+ member->subtype, pointer_level);
+ if (res == 1)