[libcxx-commits] [libcxx] [libc++] constexpr deque (PR #129368)

A. Jiang via libcxx-commits libcxx-commits at lists.llvm.org
Wed Apr 16 04:18:12 PDT 2025


frederick-vs-ja wrote:

> The constructor `min_pointer(min_pointer<T, ID> p)` fails because `min_pointer<T, ID>` in this case is `min_pointer<min_pointer<const MoveOnly, ID>, ID>`, and there is no conversion to convert `min_pointer<const min_pointer<MoveOnly, ID>, ID>` to it.

It seems that libc++'s `deque::const_iterator` is misdesigned and contains core language UB. I think the `__map_const_pointer` member typedef should be `typename allocator_traits<__pointer_allocator>::const_pointer`.

https://github.com/llvm/llvm-project/pull/129368


More information about the libcxx-commits mailing list