[fpc-devel] 0020225: issue examining pointer/array/record elements with GDB
Jonas Maebe
jonas.maebe at elis.ugent.be
Thu Sep 15 14:11:48 CEST 2011
On 15 Sep 2011, at 13:55, Martin wrote:
> http://bugs.freepascal.org/view.php?id=20225
>
> I did run a test on w32 vista
>
> with gdb 6.7.5 / 7.0 / 7.2.1 / 7.3.1 / 7.3.2
> with fpc 2.4.4 / recent fixes 2.6 / recent trunk
>
> stabs
> dwarf
> dwarf3 (only trunk + gdb 7.3.2)
The DWARF3 implementation can only work in combination with a GDB
built from the GDB archer branch currently.
> the result:
> - all combinations of gdb and fpc using stabs got the correct result.
Stabs just encodes a dynamic array as a pointer to an infinite-length
array.
> - none were able to display it with dwarf.
DWARF2 encodes a dynamic array as an array of unknown size. DWARF3
encodes it as an array where the size information has to be
dynamically loaded from memory (which is only supported by the GDB
from the Archer branch currently)
> the conclusion on the bug report appears wrong. it is not a gdb
> version issue (unless gdb 7.2 / 7.3 on linux has fixes over the
> window version). It is a stabs/dwarf issue
The DWARF information is correct. Maybe Anton is using a GDB on a
Fedora-based distribution. Fedora's GDB is built from the Archer
branch. It's possible that this fixes another bug in GDB that is also
triggered by the DWARF2-encoding of dynamic arrays.
Jonas
More information about the fpc-devel
mailing list