>> +         /* If we're putting types in their own .debug_types sections,
>> +            the .debug_pubtypes table will still point to the compile
>> +            unit (not the type unit), so we want to use the offset of
>> +            the skeleton DIE (if there is one).  */
>> +         if (pub->die->comdat_type_p && names == pubtype_table)
>>
>> +           {
>> +             comdat_type_node_ref type_node =
>> pub->die->die_id.die_type_node;
>> +
>> +             if (type_node != NULL && type_node->skeleton_die != NULL)
>> +               die_offset = type_node->skeleton_die->die_offset;
>> +           }
>
>
> I think we had agreed that if there is no skeleton, we should use an offset
> of 0.

You're right, I forgot to handle that case. How's this look?

             if (type_node != NULL)
               die_offset = (type_node->skeleton_die != NULL
                             ? type_node->skeleton_die->die_offset
                             : 0);

Is that OK if it passes regression tests?

-cary

Reply via email to