questions about libc++'s _LIBCPP_DEBUG

Hi,

I have a few questions about libc++'s _LIBCPP_DEBUG.

Is this the right mailing list?

Is the _LIBCPP_DEBUG mode being maintained/developed?
I see at least two compile-time problems:

  1. __LIBCPP_DEBUG is used a few places in include/string instead of LIBCPP_DEBUG (two '’ instead of one)

  2. =================
    % cat erase.cc
    #include

void foo(std::string &s) {
s.erase(10, std::string::npos);
}
% clang++ ./erase.cc -I/home/kcc/llvm/projects/libcxx/include -D_LIBCPP_DEBUG -c

In file included from ./erase.cc:1:
In file included from /home/kcc/llvm/projects/libcxx/include/string:434:
In file included from /home/kcc/llvm/projects/libcxx/include/algorithm:594:
In file included from /home/kcc/llvm/projects/libcxx/include/memory:596:
/home/kcc/llvm/projects/libcxx/include/iterator:1486:30: error: elaborated type refers to a typedef
friend class _Container::__self;
^
./erase.cc:4:11: note: in instantiation of template class ‘std::__1::__debug_iter<std::__1::basic_string, const char *>’ requested here
s.erase(10, std::string::npos);
^
/home/kcc/llvm/projects/libcxx/include/string:1043:58: note: declared here
typedef basic_string __self;
^
1 error generated.

Hi,

I have a few questions about libc++'s _LIBCPP_DEBUG.

Is this the right mailing list?

Yes.

Is the _LIBCPP_DEBUG mode being maintained/developed?

No, it was abandoned about two years ago. However that doesn't mean it won't be revived in the future. Thanks for your comments below.

Howard