Skip to content

Commit 5004cbe

Browse files
committed
P2997R1 Removing the common reference requirement from the indirectly invocable concepts
1 parent 6d67d20 commit 5004cbe

File tree

2 files changed

+5
-11
lines changed

2 files changed

+5
-11
lines changed

source/iterators.tex

Lines changed: 4 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -2449,7 +2449,6 @@
24492449
@\libconcept{copy_constructible}@<F> &&
24502450
@\libconcept{invocable}@<F&, @\exposidnc{indirect-value-t}@<I>> &&
24512451
@\libconcept{invocable}@<F&, iter_reference_t<I>> &&
2452-
@\libconcept{invocable}@<F&, iter_common_reference_t<I>> &&
24532452
@\libconcept{common_reference_with}@<
24542453
invoke_result_t<F&, @\exposidnc{indirect-value-t}@<I>>,
24552454
invoke_result_t<F&, iter_reference_t<I>>>;
@@ -2460,7 +2459,6 @@
24602459
@\libconcept{copy_constructible}@<F> &&
24612460
@\libconcept{regular_invocable}@<F&, @\exposidnc{indirect-value-t}@<I>> &&
24622461
@\libconcept{regular_invocable}@<F&, iter_reference_t<I>> &&
2463-
@\libconcept{regular_invocable}@<F&, iter_common_reference_t<I>> &&
24642462
@\libconcept{common_reference_with}@<
24652463
invoke_result_t<F&, @\exposidnc{indirect-value-t}@<I>>,
24662464
invoke_result_t<F&, iter_reference_t<I>>>;
@@ -2470,8 +2468,7 @@
24702468
@\libconcept{indirectly_readable}@<I> &&
24712469
@\libconcept{copy_constructible}@<F> &&
24722470
@\libconcept{predicate}@<F&, @\exposidnc{indirect-value-t}@<I>> &&
2473-
@\libconcept{predicate}@<F&, iter_reference_t<I>> &&
2474-
@\libconcept{predicate}@<F&, iter_common_reference_t<I>>;
2471+
@\libconcept{predicate}@<F&, iter_reference_t<I>>;
24752472

24762473
template<class F, class I1, class I2>
24772474
concept @\deflibconcept{indirect_binary_predicate}@ =
@@ -2480,8 +2477,7 @@
24802477
@\libconcept{predicate}@<F&, @\exposidnc{indirect-value-t}@<I1>, @\exposidnc{indirect-value-t}@<I2>> &&
24812478
@\libconcept{predicate}@<F&, @\exposidnc{indirect-value-t}@<I1>, iter_reference_t<I2>> &&
24822479
@\libconcept{predicate}@<F&, iter_reference_t<I1>, @\exposidnc{indirect-value-t}@<I2>> &&
2483-
@\libconcept{predicate}@<F&, iter_reference_t<I1>, iter_reference_t<I2>> &&
2484-
@\libconcept{predicate}@<F&, iter_common_reference_t<I1>, iter_common_reference_t<I2>>;
2480+
@\libconcept{predicate}@<F&, iter_reference_t<I1>, iter_reference_t<I2>>;
24852481

24862482
template<class F, class I1, class I2 = I1>
24872483
concept @\deflibconcept{indirect_equivalence_relation}@ =
@@ -2490,8 +2486,7 @@
24902486
@\libconcept{equivalence_relation}@<F&, @\exposidnc{indirect-value-t}@<I1>, @\exposidnc{indirect-value-t}@<I2>> &&
24912487
@\libconcept{equivalence_relation}@<F&, @\exposidnc{indirect-value-t}@<I1>, iter_reference_t<I2>> &&
24922488
@\libconcept{equivalence_relation}@<F&, iter_reference_t<I1>, @\exposidnc{indirect-value-t}@<I2>> &&
2493-
@\libconcept{equivalence_relation}@<F&, iter_reference_t<I1>, iter_reference_t<I2>> &&
2494-
@\libconcept{equivalence_relation}@<F&, iter_common_reference_t<I1>, iter_common_reference_t<I2>>;
2489+
@\libconcept{equivalence_relation}@<F&, iter_reference_t<I1>, iter_reference_t<I2>>;
24952490

24962491
template<class F, class I1, class I2 = I1>
24972492
concept @\deflibconcept{indirect_strict_weak_order}@ =
@@ -2500,8 +2495,7 @@
25002495
@\libconcept{strict_weak_order}@<F&, @\exposidnc{indirect-value-t}@<I1>, @\exposidnc{indirect-value-t}@<I2>> &&
25012496
@\libconcept{strict_weak_order}@<F&, @\exposidnc{indirect-value-t}@<I1>, iter_reference_t<I2>> &&
25022497
@\libconcept{strict_weak_order}@<F&, iter_reference_t<I1>, @\exposidnc{indirect-value-t}@<I2>> &&
2503-
@\libconcept{strict_weak_order}@<F&, iter_reference_t<I1>, iter_reference_t<I2>> &&
2504-
@\libconcept{strict_weak_order}@<F&, iter_common_reference_t<I1>, iter_common_reference_t<I2>>;
2498+
@\libconcept{strict_weak_order}@<F&, iter_reference_t<I1>, iter_reference_t<I2>>;
25052499
}
25062500
\end{codeblock}
25072501

source/support.tex

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -730,7 +730,7 @@
730730
#define @\defnlibxname{cpp_lib_polymorphic_allocator}@ 201902L // also in \libheader{memory_resource}
731731
#define @\defnlibxname{cpp_lib_print}@ 202403L // also in \libheader{print}, \libheader{ostream}
732732
#define @\defnlibxname{cpp_lib_quoted_string_io}@ 201304L // also in \libheader{iomanip}
733-
#define @\defnlibxname{cpp_lib_ranges}@ 202302L
733+
#define @\defnlibxname{cpp_lib_ranges}@ 202406L
734734
// also in \libheader{algorithm}, \libheader{functional}, \libheader{iterator}, \libheader{memory}, \libheader{ranges}
735735
#define @\defnlibxname{cpp_lib_ranges_as_const}@ 202311L // freestanding, also in \libheader{ranges}
736736
#define @\defnlibxname{cpp_lib_ranges_as_rvalue}@ 202207L // freestanding, also in \libheader{ranges}

0 commit comments

Comments
 (0)