On 27/12/2011 15:37, AaronP wrote:
Ah, thanks, compiling with -gc works. Though names are mangled and I can
only set breakpoints at line numbers. I thought I could compile with -g
because I've got the latest gdb (woo Arch Linux). Weren't there some
patches that were being included with gdb to make things better for d?
Or was that for gdc?

There are patches for gdb that have been integrated... They only work with -g though (or when using ldc or gdc). However you need to use -gc to stop gdb giving fatal errors... It's a bit of a pain. To work around this, use:

(gdb) set language d

There is a patch that should fix this, it still needs to be merged though:

https://github.com/D-Programming-Language/dmd/pull/526

The issue goes something like this:

* -g emits debug information with D extensions that conflict with official standards (causing gdb to error). It sets the language to D, so the gdb D extensions are activated. * -gc emits debug information without D extensions, and sets the language to C.

Hopefully the above pull request will be integrated soon, in the mean time, try set language in gdb, or switch to ldc or gdc.

--
Robert
http://octarineparrot.com/

Reply via email to