- if(new_type_id1 != NULL && new_type_id2 != NULL && !strcmp(new_type_id1, new_type_id2)){
- if(switch_type){
- type = xbt_dict_get_or_null(other_info->types, new_type_id1);
- while(type->byte_size == 0 && type->dw_type_id != NULL)
- type = xbt_dict_get_or_null(other_info->types, type->dw_type_id);
- new_size1 = type->byte_size;
- type = xbt_dict_get_or_null(other_info->types, new_type_id2);
- while(type->byte_size == 0 && type->dw_type_id != NULL)
- type = xbt_dict_get_or_null(other_info->types, type->dw_type_id);
- new_size2 = type->byte_size;
- }else{
- type = xbt_dict_get_or_null(info->types, new_type_id1);
- while(type->byte_size == 0 && type->dw_type_id != NULL)
- type = xbt_dict_get_or_null(info->types, type->dw_type_id);
+ if(new_type1 != NULL && new_type2 != NULL && new_type1!=new_type2){
+
+ type = new_type1;
+ while(type->byte_size == 0 && type->subtype != NULL)
+ type = type->subtype;