[libcxx-commits] [PATCH] D124011: [libc++] Always enable the ranges concepts

Mark de Wever via Phabricator via libcxx-commits libcxx-commits at lists.llvm.org
Wed Apr 20 12:04:07 PDT 2022

Mordante added a subscriber: ldionne.
Mordante added a comment.

In D124011#3461353 <https://reviews.llvm.org/D124011#3461353>, @philnik wrote:

> @Mordante There are quite a few things that were shipped in libc++13 but are guarded now under `_LIBCPP_HAS_NO_INCOMPLETE_RANGES`. So I'm not certain anymore that we should re-enable the concepts. Do you have any thoughts? https://github.com/llvm/llvm-project/tree/release/13.x/libcxx/include/__ranges is the full list of ranges things that were shipped in libc++13. All the views and `data`, `size` etc. are now guarded.

Note in libc++13 we had a guard `#if !defined(_LIBCPP_HAS_NO_INCOMPLETE_RANGES)` in the `ranges` header. This is the same way I've guarded the `format` header.

There's probably a difference for apple-clang and normal clang since that version of apple-clang had no concepts support so there I expect the code was never enabled.

We changed to a more frequent release schedule for the LLVM 14 branch (https://discourse.llvm.org/t/llvm-14-0-1-schedule-and-release-updates/61227/20). I would propose bring this to @ldionne's attention when he's back. Then, if needed, we can aim to have a fix in LLVM 4.0.3, slated for the 10th of May. I'm not sure what the best approach is, I don't know what the impact of the change is for our vendors.

  rG LLVM Github Monorepo



More information about the libcxx-commits mailing list