[fpc-devel] Merge requests

Martin Frb lazarus at mfriebe.de
Wed Sep 30 15:56:53 CEST 2026


I've seen a few features been added by MR recently.

So I wanted to take the opportunity and push some of my MR into view again.

1)
Most awaited by many users: The ability to debug properties.
https://gitlab.com/freepascal.org/fpc/source/-/merge_requests/1454

I have to the day not even received feedback on it. So where to we stand 
with that?


2)
Methods on interfaces
Interfaces (com/corba) are stored as structures, but the compile omits 
the methods.
Maybe there is or was a reason? I can only think that back in the day 
gdb as only debugger wasn't able to call them, so they weren't considered?
But FpDebug can call them.
https://gitlab.com/freepascal.org/fpc/source/-/merge_requests/687

This isn't about if calling methods from a debugger is advisable. I do 
not advise it at all. But, its a valid technique....

3)
Strings
https://gitlab.com/freepascal.org/fpc/source/-/merge_requests/683

Currently debuggers can't differentiate between string/pchar
(well FpDebug can in some common cases, by going deep into 
implementation detail)

Dwarf provides means to do better. => we should.

If -gw4 isn't enough to guard against gdb disliking this, then a 
separate flag can be added, to toggle between
* dwarf for gdb
* dwarf for fpdebug
* dwarf for ...

Btw, the source of gdb suggests that this is not added because "pascal 
does not emit it".
=> for other language gdb does have (some) implementation of it.
So waiting for gdb is futil, if gdb waits for us.
(And sorry, no, I don't know gdb well enough to change that / I located 
some comments in it)

4) other pending dwarf stuff

linker names to help with debug info on windows
https://gitlab.com/freepascal.org/fpc/source/-/merge_requests/1448
Since in various cases addresses are omitted, this can be used by a 
debugger to find them.
(fpdebug already does that using the know current mangling, but that is 
not future save, if the mangling changes in fpc)


and optional
https://gitlab.com/freepascal.org/fpc/source/-/merge_requests/1464
make following new Dwarf versions easier (by reducing the affected scope)


More information about the fpc-devel mailing list