On 23/10/2019 12:41, Martin Frb wrote:
On 23/10/19 11:34, Joost van der Sluis wrote:
About the patch: I made the original change within the period that I tried to get multiple-dimensional arrays to be displayed correctly in gdb. Especially arrays of ansistrings. In the end this worked, does this still work?

We need some kind of debug-tests. I know you have some, and that there are huge differences between gdb versions, but still...

I am away this week, I check next week.

There is a project for manual testing: components\lazdebuggergdbmi\test\RunGDBMI.lpi

It reads a list of fpc compilers from fpclist.txt (there is a sample file).  And gdb versions from gdblist.txt. It then takes an exe, that it will compile and run to a breakpoint. There it will send a series of gdb commands, and record the results.
It can record them in csv format (copy and paste to libre office calc)

File: full filename with path - to be compiled
break: file without path, in which to set the breakpoint (can be used unit)
checkbox "csf": comma separated
upper memo: commands for gdb, one per line
lower memo: output

I tested the following
  a1: array of ansistring;
  a2: array of array of ansistring;
  s1: array [3..5] of ansistring;
  s2: array [3..5, 7..8] of ansistring;

with 3.0.0 (32bit only),  3.0.4, trunk 43310, and 3.2.0 43184  / dwarf (with sets) and dwarf3 sending to gdb (32bit 7.2,  7.7.1,  7.8.2,  8.2.0   and 64bit 7.3-5,  7.7.0,  7.8.2,  8.2.0):
p a1
p a2
p s1
p s2

results attached (as libre office calc)

static array with dwarf-2 work.
In any case I see no change in the results depending on fpc version (so the recent fixes made no diff for gdb)

If you remember what you tested, then I can run that against newer versions.

<<attachment: array_of_string_gdb.zip>>

fpc-devel maillist  -  fpc-devel@lists.freepascal.org

Reply via email to