On 30/04/2026 00:50, Pierre Muller via fpc-devel wrote:

  I tried recently to use dwarfdump, a standard unix utility,
and this tool does indeed list a few issues with
the DWARF information generated by Free Pascal.

  I didn't have time to investigate these issues.

I just did try myself.

The list definitely includes false positives.
dwarfdump [Mar  6 2026 19:38:46 (libdwarf 2.3.1 dwarfdump 2.3.1)]
And the latest 3.3.1 fpc


Proof?
*** DWARF CHECK: DW_TAG_compile_unit -> DW_TAG_interface_type: tag-tree relation is not standard. ***


1) The dwarf docs don't say anything that wouldn't allow this. And as other types are declared in the CU, where else should an intf be?

2) From dwarfdump sources
https://github.com/avast/libdwarf/blob/master/libdwarf/dwarfdump/tag_tree.list

2a)
 Since DWARF is generally descriptive, not prescriptive,
    this list is at best a current understanding of
    appropriate practice.  Moreover the the dwarf standard
    does not actually list the tag-tag dependencies.
    So mistakes in the list below is certainly possible.


2b)
DW_TAG_interface_type is not listed as possible child to any of the other tags.

It is only listed as a parent specifying which children it can have.
So given the list in the above file, it couldn't be used anywhere at all.

_______________________________________________
fpc-devel maillist  -  [email protected]
https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel

Reply via email to