c++ debugging broke last week

Benjamin Kosnik bkoz@redhat.com
Wed Sep 5 09:22:00 GMT 2001


Hey folks. Some change on the g++ side broke debugging between

2001-08-23
2001-08-31

Sorry I don't have more granularity than that, but I updated sources
for the compiler on the 23rd, and then updated after Jason's change on
the 31st to eh_personality.cc. Things were working well before I updated.

The branch is still fine, FWIW. Both --with-dwarf2 and default
configurations of the mainline compiler now fail to display static
const member data, which means that

  #include <locale>
  std::locale loc_c = std::locale::classic(); <--break here

gives:

(gdb) p loc_c
$2 = {static none = 0, static ctype = 1, static numeric = 2, 
  static collate = 4, static time = 8, static monetary = 16, 
  static messages = 32, static all = 63, _M_impl = 0x810b1a0, 
  static _S_classic = Cannot access memory at address 0x0

whereas the branch gives:

(gdb) p loc_c
$1 = {static none = 0, static ctype = 1, static numeric = 2, 
  static collate = 4, static time = 8, static monetary = 16, 
  static messages = 32, static all = 63, _M_impl = 0x8117780, 
  static _S_classic = 0x8117780, static _S_global = 0x8117780, 
  static _S_num_categories = 6, static _S_num_facets = 26}

This is a pretty simple example, but you get the idea. I've
temporarily switched to the branch compiler for my current work, so
that I can proceed with debugging capability.

Any ideas?

-benjamin



More information about the Libstdc++ mailing list