On 2026-02-20 01:31, Graeme Geldenhuys via fpc-devel wrote:

More soon. ;-)

What is it? A fully working, native FPC debug format and debugger. I designed a new debug format from scratch (ditching the very C-centric DWARF format and its many versions) and added support into FPC `main` (3.3.1) via a feature branch. That's all on the compiler side.

On the client side, I implemented a debug engine from scratch along with a reference CLI debugger client (seen in my previous message). For the engine, I used a Hexagonal design (aka Ports & Adapters). This means the debug engine does all the heavy lifting and exposes methods that the thin "debug client" (in my case, the CLI debugger) can simply call to display output and orchestrate user interaction.

Integrating this into Lazarus IDE or MSEide simply means implementing the equivalent `pdr-cli` [thin] layer. Nothing needs to be changed in the debug engine itself.

I'll reveal more soon with a Pull Request. I'll include links to my analysis, the OPDF specification, and Implementation Architecture documents. A huge amount of research has gone into this -- studying Kylix, Delphi, and DWARF. Finally, I've scratched that 14-year itch I had, triggered by the duby release. :)


Regards,
  Graeme


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

Reply via email to