[libcxx-commits] [libcxx] [libcxx] Make removed allocator members constexpr in C++20 (PR #69466)

Ilya Biryukov via libcxx-commits libcxx-commits at lists.llvm.org
Thu Oct 19 02:42:51 PDT 2023


ilya-biryukov wrote:

We switched google to C++20, but enabled this flag to postpone the cleanup that gets rid of these members.

I do not see how this digs deeper into non-conformance land since this mode is already non-conformant and the corresponding members in `allocator_traits` are `constexpr`. It makes most sense to have the members available in parallel on instances of `allocator` to have the same signatures (including `constexpr`).

That being said, rolling this out also causes a lot of breakages because more `constexpr` inside our codebase. In particular, Clang starts instantiating members of `vector` earlier causing "incomplete type" errors all over the place. So doing the cleanup and not landing the patch is the only way forward for us as well.

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


More information about the libcxx-commits mailing list