During the development of an MSP430-based C++ project I ran into a situation where gdb failed to read the Dwarf debug information from the compiled and linked application binary. The debugger displays an error message when I try to set a breakpoint or resolve a symbol:
(gdb) break main
Dwarf Error: Cannot find signatured DIE referenced from DIE at 0x25 [in module /home/inva/Desktop/mspgcc-dwarf-error/test]
I managed to strip down my project and reproduce the issue with a minimal test: Two C++ files including the same header file, which declares two derived classes with virtual destructors. I included the three source files, a Makefile and the resulting binaries in the attached archive.
Version information: msp430-pp-none-g++-bin (GCC) 4.6.3 20120507 (mspgcc LTS 20120406 unpatched prerelease)