I have encountered a problem using GDB (6.4.90-debian) with FPC (2.0.4 or 2.1.4). In a nutshell, GDB sometimes barfs on FPC generated stabs.
If the program is compiled with -g (stabs format) the debugger works but attempts to print some data structures or produce a back-trace can result in a SEGV in GDB (ie, GDB itself crashes). If the program is compiled with -gd (DBX format) or -gw (dwarf) GDB works correctly without crashing but reference to source files that are in directories other than the current directory have a (relative) path prepended to the name which breaks other things (notably the emacs/GUD and Lazarus front ends). By way of example, with GDB run in the (project home) directory /home/bruce/vc/ with dwarf symbols GDB reports: (gdb) info source Current source file is src//Widget.pas Compilation directory is src/ Located in /home/bruce/vc/src/Widget.pas Contains 637 lines. Source language is pascal. Compiled with unknown debugging format. Does not include preprocessor macro info. When the program is compiled with stabs I get: (gdb) info source Current source file is Widget.pas Compilation directory is src/ Located in /home/bruce/vc/src/Widget.pas Contains 637 lines. Source language is pascal. Compiled with stabs debugging format. Does not include preprocessor macro info. which is correct (but GDB is otherwise unusable due the stabs problem). My (2) questions are: [1] has anyone else seen the GDB crashing problem when a program is compiled with stabs info? [2] is the filename problem with dwarf encoded symbols an FPC bug or is there some configuration I'm missing somehere. Note that in all cases I've compiled the program (which is a port of a a working Delphi application) with no optimizations or other bells and whistles enabled. Many thanks for any advice about what I might be doing wrong. Otherwise consider this a bug report :-) Cheers, Bruce Tulloch. _______________________________________________ fpc-devel maillist - fpc-devel@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-devel