OK.

On Tue, Oct 25, 2016 at 3:56 PM, Jakub Jelinek <ja...@redhat.com> wrote:
> On Tue, Oct 25, 2016 at 08:06:12PM +0200, Jakub Jelinek wrote:
>> I think this patch should fix it, will bootstrap/regtest it now:
>>
>> 2016-10-25  Jakub Jelinek  <ja...@redhat.com>
>>
>>       * dwarf2out.c (gen_member_die): Only reparent_child instead of
>>       splice_child_die if child doesn't have DW_AT_specification attribute.
>
> Bootstrapped/regtested on x86_64-linux and i686-linux now, with this
> patch C++14 static data members are treated in debug info as they were in
> the past, just C++17 static constexpr data mambers or other static inline
> data members are treated the new way (definition in DW_TAG_member).
>
> Ok for trunk?
>
>> --- gcc/dwarf2out.c.jj        2016-10-25 19:49:28.000000000 +0200
>> +++ gcc/dwarf2out.c   2016-10-25 20:02:33.264639847 +0200
>> @@ -22624,7 +22624,8 @@ gen_member_die (tree type, dw_die_ref co
>>         /* Handle inline static data members, which only have in-class
>>            declarations.  */
>>         if (child->die_tag == DW_TAG_variable
>> -           && child->die_parent == comp_unit_die ())
>> +           && child->die_parent == comp_unit_die ()
>> +           && get_AT (child, DW_AT_specification) == NULL)
>>           {
>>             reparent_child (child, context_die);
>>             child->die_tag = DW_TAG_member;
>>
>
>         Jakub

Reply via email to