[libcxx-commits] [libcxx] [libc++][iterator][ranges] P2997R1: Removing the common reference requirement from the indirectly invocable concepts (PR #98817)
via libcxx-commits
libcxx-commits at lists.llvm.org
Tue Jul 16 10:11:33 PDT 2024
github-actions[bot] wrote:
<!--LLVM CODE FORMAT COMMENT: {clang-format}-->
:warning: C/C++ code formatter, clang-format found issues in your code. :warning:
<details>
<summary>
You can test this locally with the following command:
</summary>
``````````bash
git-clang-format --diff a05724a1f84853fc655950c36453f200fba8af75 e61bd5d7862b87650dceb4ac97ad790c2305d542 --extensions cpp,h -- libcxx/include/__iterator/concepts.h libcxx/test/std/iterators/iterator.requirements/indirectcallable/indirectinvocable/indirect_binary_predicate.compile.pass.cpp libcxx/test/std/iterators/iterator.requirements/indirectcallable/indirectinvocable/indirect_equivalence_relation.compile.pass.cpp libcxx/test/std/iterators/iterator.requirements/indirectcallable/indirectinvocable/indirect_strict_weak_order.compile.pass.cpp libcxx/test/std/iterators/iterator.requirements/indirectcallable/indirectinvocable/indirect_unary_predicate.compile.pass.cpp libcxx/test/std/iterators/iterator.requirements/indirectcallable/indirectinvocable/indirectly_regular_unary_invocable.compile.pass.cpp libcxx/test/std/iterators/iterator.requirements/indirectcallable/indirectinvocable/indirectly_unary_invocable.compile.pass.cpp
``````````
</details>
<details>
<summary>
View the diff from clang-format here.
</summary>
``````````diff
diff --git a/libcxx/test/std/iterators/iterator.requirements/indirectcallable/indirectinvocable/indirect_binary_predicate.compile.pass.cpp b/libcxx/test/std/iterators/iterator.requirements/indirectcallable/indirectinvocable/indirect_binary_predicate.compile.pass.cpp
index a9a5d23271..38dcd70d85 100644
--- a/libcxx/test/std/iterators/iterator.requirements/indirectcallable/indirectinvocable/indirect_binary_predicate.compile.pass.cpp
+++ b/libcxx/test/std/iterators/iterator.requirements/indirectcallable/indirectinvocable/indirect_binary_predicate.compile.pass.cpp
@@ -78,8 +78,9 @@ static_assert(!std::indirect_binary_predicate<BadPredicate5, It1, It2>);
// This case was made valid by P2997R1.
struct GoodPredicate6 {
- template <class T, class U> bool operator()(T const&, U const&) const;
- bool operator()(std::iter_common_reference_t<It1>, std::iter_common_reference_t<It2>) const = delete;
+ template <class T, class U>
+ bool operator()(T const&, U const&) const;
+ bool operator()(std::iter_common_reference_t<It1>, std::iter_common_reference_t<It2>) const = delete;
};
static_assert(std::indirect_binary_predicate<GoodPredicate6, It1, It2>);
diff --git a/libcxx/test/std/iterators/iterator.requirements/indirectcallable/indirectinvocable/indirect_equivalence_relation.compile.pass.cpp b/libcxx/test/std/iterators/iterator.requirements/indirectcallable/indirectinvocable/indirect_equivalence_relation.compile.pass.cpp
index c7e5675af2..8ea7e8a6d9 100644
--- a/libcxx/test/std/iterators/iterator.requirements/indirectcallable/indirectinvocable/indirect_equivalence_relation.compile.pass.cpp
+++ b/libcxx/test/std/iterators/iterator.requirements/indirectcallable/indirectinvocable/indirect_equivalence_relation.compile.pass.cpp
@@ -93,8 +93,9 @@ static_assert(!std::indirect_equivalence_relation<BadRelation5, It1, It2>);
// This case was made valid by P2997R1.
struct GoodRelation6 {
- template <class T, class U> bool operator()(T const&, U const&) const;
- bool operator()(std::iter_common_reference_t<It1>, std::iter_common_reference_t<It2>) const = delete;
+ template <class T, class U>
+ bool operator()(T const&, U const&) const;
+ bool operator()(std::iter_common_reference_t<It1>, std::iter_common_reference_t<It2>) const = delete;
};
static_assert(std::indirect_equivalence_relation<GoodRelation6, It1, It2>);
diff --git a/libcxx/test/std/iterators/iterator.requirements/indirectcallable/indirectinvocable/indirect_strict_weak_order.compile.pass.cpp b/libcxx/test/std/iterators/iterator.requirements/indirectcallable/indirectinvocable/indirect_strict_weak_order.compile.pass.cpp
index 49daaf3784..074725f97b 100644
--- a/libcxx/test/std/iterators/iterator.requirements/indirectcallable/indirectinvocable/indirect_strict_weak_order.compile.pass.cpp
+++ b/libcxx/test/std/iterators/iterator.requirements/indirectcallable/indirectinvocable/indirect_strict_weak_order.compile.pass.cpp
@@ -93,8 +93,9 @@ static_assert(!std::indirect_strict_weak_order<BadOrder5, It1, It2>);
// This case was made valid by P2997R1.
struct GoodOrder6 {
- template <class T, class U> bool operator()(T const&, U const&) const;
- bool operator()(std::iter_common_reference_t<It1>, std::iter_common_reference_t<It2>) const = delete;
+ template <class T, class U>
+ bool operator()(T const&, U const&) const;
+ bool operator()(std::iter_common_reference_t<It1>, std::iter_common_reference_t<It2>) const = delete;
};
static_assert(std::indirect_strict_weak_order<GoodOrder6, It1, It2>);
diff --git a/libcxx/test/std/iterators/iterator.requirements/indirectcallable/indirectinvocable/indirect_unary_predicate.compile.pass.cpp b/libcxx/test/std/iterators/iterator.requirements/indirectcallable/indirectinvocable/indirect_unary_predicate.compile.pass.cpp
index 0f1b1d0388..f52ea8f915 100644
--- a/libcxx/test/std/iterators/iterator.requirements/indirectcallable/indirectinvocable/indirect_unary_predicate.compile.pass.cpp
+++ b/libcxx/test/std/iterators/iterator.requirements/indirectcallable/indirectinvocable/indirect_unary_predicate.compile.pass.cpp
@@ -59,8 +59,9 @@ static_assert(!std::indirect_unary_predicate<BadPredicate3, It>);
// This case was made valid by P2997R1.
struct GoodPredicate4 {
- template <class T> bool operator()(T const&) const;
- bool operator()(std::iter_common_reference_t<It>) const = delete;
+ template <class T>
+ bool operator()(T const&) const;
+ bool operator()(std::iter_common_reference_t<It>) const = delete;
};
static_assert(std::indirect_unary_predicate<GoodPredicate4, It>);
diff --git a/libcxx/test/std/iterators/iterator.requirements/indirectcallable/indirectinvocable/indirectly_regular_unary_invocable.compile.pass.cpp b/libcxx/test/std/iterators/iterator.requirements/indirectcallable/indirectinvocable/indirectly_regular_unary_invocable.compile.pass.cpp
index 207b9b3937..fceae03a4b 100644
--- a/libcxx/test/std/iterators/iterator.requirements/indirectcallable/indirectinvocable/indirectly_regular_unary_invocable.compile.pass.cpp
+++ b/libcxx/test/std/iterators/iterator.requirements/indirectcallable/indirectinvocable/indirectly_regular_unary_invocable.compile.pass.cpp
@@ -58,8 +58,9 @@ static_assert(!std::indirectly_regular_unary_invocable<BadInvocable3, It>);
// This case was made valid by P2997R1.
struct GoodInvocable4 {
- template <class T> R1 operator()(T const&) const;
- R1 operator()(std::iter_common_reference_t<It>) const = delete;
+ template <class T>
+ R1 operator()(T const&) const;
+ R1 operator()(std::iter_common_reference_t<It>) const = delete;
};
static_assert(std::indirectly_regular_unary_invocable<GoodInvocable4, It>);
diff --git a/libcxx/test/std/iterators/iterator.requirements/indirectcallable/indirectinvocable/indirectly_unary_invocable.compile.pass.cpp b/libcxx/test/std/iterators/iterator.requirements/indirectcallable/indirectinvocable/indirectly_unary_invocable.compile.pass.cpp
index 2308a3636d..27c078baeb 100644
--- a/libcxx/test/std/iterators/iterator.requirements/indirectcallable/indirectinvocable/indirectly_unary_invocable.compile.pass.cpp
+++ b/libcxx/test/std/iterators/iterator.requirements/indirectcallable/indirectinvocable/indirectly_unary_invocable.compile.pass.cpp
@@ -58,8 +58,9 @@ static_assert(!std::indirectly_unary_invocable<BadInvocable3, It>);
// This case was made valid by P2997R1.
struct GoodInvocable4 {
- template <class T> R1 operator()(T const&) const;
- R1 operator()(std::iter_common_reference_t<It>) const = delete;
+ template <class T>
+ R1 operator()(T const&) const;
+ R1 operator()(std::iter_common_reference_t<It>) const = delete;
};
static_assert(std::indirectly_unary_invocable<GoodInvocable4, It>);
``````````
</details>
https://github.com/llvm/llvm-project/pull/98817
More information about the libcxx-commits
mailing list