On 15 May 2010, at 23:44, Jan Kratochvil wrote: > But if the "allocation" is just an internal > compiler issue which should be hidden by the same compiler at the DWARF level. > Therefore I would guess to use some: > drop DW_TAG_array_type -> DW_AT_allocated > DW_TAG_subrange_type -> DW_AT_upper_bound: > DW_OP_push_object_address > DW_OP_deref > DW_OP_dup > DW_OP_bra allocated > DW_OP_lit0 > DW_OP_skip end > allocated: > DW_OP_lit8 > DW_OP_minus > DW_OP_deref > end: I agree. Joost, I've attached a patch for FPC's DWARF writer to fix it. I can't test whether it works (the dumped DWARF info looks ok though), because I can't get gdb/F-13 to build: *** ... Patch #329 (gdb-6.8-bz254229-gcore-prpsinfo.patch): + patch -p1 -s misordered hunks! output would be garbled 1 out of 3 hunks FAILED -- saving rejects to file bfd/elf.c.rej error: Bad exit status from /var/tmp/rpm-tmp.88969 (%prep) RPM build errors: Bad exit status from /var/tmp/rpm-tmp.88969 (%prep) *** This is on a Scientific Linux 5.4 machine (which corresponds to RHEL 5.4). Maybe I need a newer version of the "patch" utility? (it has version 2.5.4) Jonas