[libcxx-commits] [libcxx] [libc++] Take the ABI break for `std::list`'s pointer UB unconditionally (PR #100585)
Louis Dionne via libcxx-commits
libcxx-commits at lists.llvm.org
Thu Aug 15 08:55:36 PDT 2024
================
@@ -271,19 +271,10 @@ struct __list_node_pointer_traits {
typedef __rebind_pointer_t<_VoidPtr, __list_node<_Tp, _VoidPtr> > __node_pointer;
typedef __rebind_pointer_t<_VoidPtr, __list_node_base<_Tp, _VoidPtr> > __base_pointer;
-#if defined(_LIBCPP_ABI_LIST_REMOVE_NODE_POINTER_UB)
- typedef __base_pointer __link_pointer;
-#else
- typedef __conditional_t<is_pointer<_VoidPtr>::value, __base_pointer, __node_pointer> __link_pointer;
----------------
ldionne wrote:
The PR description/commit message should re-mention what the ABI break is, in particular the fact that it only affects fancy pointer types. It should also mention how the ABI is being broken.
https://github.com/llvm/llvm-project/pull/100585
More information about the libcxx-commits
mailing list