[v3] debug mode simplifications

Benjamin Kosnik bkoz@redhat.com
Wed Feb 22 01:08:00 GMT 2006


This could be considered fallout from libstdc++/26142, but really, it's
something that I've been thinking of cleaning up since the debug mode
fix-ups went in around December. 

I've been thinking there is an easier way to do this.

The previous arrangement of namespaces in the debug mode was a bit
convoluted, and unnecessary: we can now just simplify to always
creating a debug mode by nesting a __debug and __norm namespace, and
defining the debug mode containers and bits in the nested __debug
namespace. The top level __gnu_debug namespace will always have the
debug containers injected, like before. However, all the debug mode
machinery itself, ie safe iterators and bases, can be put in the
top-level __gnu_debug namespace. This means, in a nutshell, that std,
__gnu_cxx, and other namespaces can all use the same basic design and
machinery. So, that's cool.

Anyway. There is one new failure versus gcc-4.0.x, in that

23_containers/list/operators/5.cc

now fails. However, that is a new test case. So, I think it should just
be an expected fail for debug mode.

-benjamin

tested x86/linux
tested x86/linux -D_GLIBCXX_DEBUG
-------------- next part --------------
A non-text attachment was scrubbed...
Name: p.20060221.bz2
Type: application/x-bzip2
Size: 15717 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/libstdc++/attachments/20060222/c5170027/attachment.bz2>


More information about the Libstdc++ mailing list