Message ID | 2373481.7fSg0krngQ@polaris |
---|---|
State | New |
Headers | show |
Series | Fix debug info for discriminated record types | expand |
On Wed, Jul 3, 2019 at 12:12 PM Eric Botcazou <ebotcazou@adacore.com> wrote: > > Hi, > > this is a regression present on the mainline and 9 branch: since > https://gcc.gnu.org/ml/gcc-patches/2018-08/msg01066.html > the debug info emitted in Ada with -fgnat-encodings=minimal for discriminated > record types containing an array component whose bound is a discriminant is > incomplete, i.e. the DW_AT_*_bound attribute of the range subtype is missing. > > Tested on x86_64-suse-linux, OK for mainline and 9 branch? OK. Richard. > > 2019-07-03 Eric Botcazou <ebotcazou@adacore.com> > > * dwarf2out.c (add_scalar_info): Add back refererence to existing DIE > if it has the DW_AT_data_member_location attribute. > > > 2019-07-03 Eric Botcazou <ebotcazou@adacore.com> > > * gnat.dg/specs/debug1.ads: New test. > > -- > Eric Botcazou
Index: dwarf2out.c =================================================================== --- dwarf2out.c (revision 272930) +++ dwarf2out.c (working copy) @@ -20845,6 +20845,7 @@ add_scalar_info (dw_die_ref die, enum dw if (decl_die != NULL) { if (get_AT (decl_die, DW_AT_location) + || get_AT (decl_die, DW_AT_data_member_location) || get_AT (decl_die, DW_AT_const_value)) { add_AT_die_ref (die, attr, decl_die);