It was deprecated in LLVM 15, turned into compile-time error in LLVM 16:
0In file included from /usr/lib/llvm-16/bin/../include/c++/v1/cassert:19:
1/usr/lib/llvm-16/bin/../include/c++/v1/__assert:22:5: error: "Defining _LIBCPP_DEBUG is not supported anymore.
2Please use _LIBCPP_ENABLE_DEBUG_MODE instead."
3 ^
41 error generated.
and has been removed entirely in LLVM 17 (main): https://github.com/llvm/llvm-project/commit/ff573a42cd1f1d05508f165dc3e645a0ec17edb5.
Building libc++ in debug mode, will also automatically set
_LIBCPP_ENABLE_DEBUG_MODE
(the new define), so adding it to depends
doesn’t seem useful, and would just result in redefinition errors.
I’m wondering if as a followup, we could enable a DEBUG build of libc++ in our MSAN CI job? i.e https://github.com/fanquake/bitcoin/tree/msan_with_enable_debug_mode.
Somewhat related to https://github.com/google/oss-fuzz/pull/9828, where it looks like we’ll have to sort out getting a DEBUG build of LLVM, and can drop the commentary about re-enabling DEBUG=1.