[fpc-devel] dvarf 3 implementation issue

Martin Frb lazarus at mfriebe.de
Tue May 6 01:29:59 CEST 2014


When FPC generates dwarf 3, it does use DW_AT_data_location for dynamic 
array.

That leads to gdb  reporting "a=b" to be false, after the below code. 
(with dwarf 2 gdb compares the pointer, and returns true)

var  a,b: array of Integer;
SetLength(a,3);
b:=a;

With that gdb does no longer know there is a hidden pointer.

All GDB sees, is that a is at addr x, and b at addr y.
It does not have a data  size, or type for what is at that address.

How to use that address is now hidden in the location expression in 
DW_AT_data_location.







More information about the fpc-devel mailing list