From 4b719a6687eec8678d97ead771cef8f4ee901da3 Mon Sep 17 00:00:00 2001 From: Jens Maurer Date: Wed, 27 Nov 2024 19:03:34 +0100 Subject: [PATCH 1/2] P3379R0 Constrain std::expected equality operators --- source/support.tex | 2 +- source/utilities.tex | 11 ++++++----- 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/source/support.tex b/source/support.tex index 1c516033a7..f238a65e90 100644 --- a/source/support.tex +++ b/source/support.tex @@ -620,7 +620,7 @@ #define @\defnlibxname{cpp_lib_constexpr_typeinfo}@ 202106L // freestanding, also in \libheader{typeinfo} #define @\defnlibxname{cpp_lib_constexpr_utility}@ 201811L // freestanding, also in \libheader{utility} #define @\defnlibxname{cpp_lib_constexpr_vector}@ 201907L // also in \libheader{vector} -#define @\defnlibxname{cpp_lib_constrained_equality}@ 202403L // freestanding, +#define @\defnlibxname{cpp_lib_constrained_equality}@ 202411L // freestanding, // also in \libheader{utility}, \libheader{tuple}, \libheader{optional}, \libheader{variant} #define @\defnlibxname{cpp_lib_containers_ranges}@ 202202L // also in \libheader{vector}, \libheader{list}, \libheader{forward_list}, \libheader{map}, \libheader{set}, \libheader{unordered_map}, \libheader{unordered_set}, diff --git a/source/utilities.tex b/source/utilities.tex index 212449243a..6719e8a672 100644 --- a/source/utilities.tex +++ b/source/utilities.tex @@ -8775,7 +8775,7 @@ \begin{itemdescr} \pnum -\mandates +\constraints The expressions \tcode{*x == *y} and \tcode{x.error() == y.error()} are well-formed and their results are convertible to \tcode{bool}. @@ -8793,7 +8793,8 @@ \begin{itemdescr} \pnum -\mandates +\constraints +\tcode{T2} is not a specialization of \tcode{expected}. The expression \tcode{*x == v} is well-formed and its result is convertible to \tcode{bool}. \begin{note} @@ -8812,7 +8813,7 @@ \begin{itemdescr} \pnum -\mandates +\constraints The expression \tcode{x.error() == e.error()} is well-formed and its result is convertible to \tcode{bool}. @@ -9733,7 +9734,7 @@ \begin{itemdescr} \pnum -\mandates +\constraints The expression \tcode{x.error() == y.error()} is well-formed and its result is convertible to \tcode{bool}. @@ -9751,7 +9752,7 @@ \begin{itemdescr} \pnum -\mandates +\constraints The expression \tcode{x.error() == e.error()} is well-formed and its result is convertible to \tcode{bool}. From dbbef7f7106723bea7eb1ab9196fc0fef20a7c01 Mon Sep 17 00:00:00 2001 From: Jens Maurer Date: Wed, 27 Nov 2024 21:10:36 +0100 Subject: [PATCH 2/2] [version.syn] Add to headers for __cpp_lib_constrained_equality --- source/support.tex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/support.tex b/source/support.tex index f238a65e90..c59b39c439 100644 --- a/source/support.tex +++ b/source/support.tex @@ -621,7 +621,7 @@ #define @\defnlibxname{cpp_lib_constexpr_utility}@ 201811L // freestanding, also in \libheader{utility} #define @\defnlibxname{cpp_lib_constexpr_vector}@ 201907L // also in \libheader{vector} #define @\defnlibxname{cpp_lib_constrained_equality}@ 202411L // freestanding, - // also in \libheader{utility}, \libheader{tuple}, \libheader{optional}, \libheader{variant} + // also in \libheader{utility}, \libheader{tuple}, \libheader{optional}, \libheader{variant}, \libheader{expected} #define @\defnlibxname{cpp_lib_containers_ranges}@ 202202L // also in \libheader{vector}, \libheader{list}, \libheader{forward_list}, \libheader{map}, \libheader{set}, \libheader{unordered_map}, \libheader{unordered_set}, // \libheader{deque}, \libheader{queue}, \libheader{stack}, \libheader{string}