Fix bit offset regression
authorTom Tromey <tromey@adacore.com>
Tue, 6 Oct 2020 14:56:54 +0000 (08:56 -0600)
committerTom Tromey <tromey@adacore.com>
Fri, 9 Oct 2020 17:18:52 +0000 (11:18 -0600)
commit7c184d334adac03eb200b0f8b01edaf051bfc01b
tree38ff6a0265cb9dbbd3683aa7d726bb92bc47e324
parent5c4258f4c051a31d7209712ecd28830c55a92034
Fix bit offset regression

The type-safe attribute patch introduced a regression that can occur
when the DW_AT_bit_offset value is negative.  This can happen with
some Ada programs.

This patch fixes the problem.  It also fixes a minor oddity in the
existing scalar storage test -- this test was intended to assign a
smaller number of bits to the field.

2020-10-09  Tom Tromey  <tromey@adacore.com>

* dwarf2/read.c (dwarf2_add_field): Handle signed offsets.

gdb/testsuite/ChangeLog
2020-10-09  Tom Tromey  <tromey@adacore.com>

* gdb.ada/scalar_storage/storage.adb (Another_Range): New type.
(Rec): Add field.  Fix range.
* gdb.ada/scalar_storage.exp: Update.
gdb/ChangeLog
gdb/dwarf2/read.c
gdb/testsuite/ChangeLog
gdb/testsuite/gdb.ada/scalar_storage.exp
gdb/testsuite/gdb.ada/scalar_storage/storage.adb