[libcxx-commits] [libcxx] [libc++] Implement LWG4072: std::optional comparisons: constrain harder (PR #209968)

Dan Shan via libcxx-commits libcxx-commits at lists.llvm.org
Sun Sep 6 18:08:55 PDT 2026


================
@@ -35,6 +35,10 @@ static_assert(HasOperatorEqual<std::optional<EqualityComparable>, EqualityCompar
 static_assert(!HasOperatorEqual<std::optional<NonComparable>, NonComparable>);
 static_assert(!HasOperatorEqual<std::optional<EqualityComparable>, NonComparable>);
 
+// LWG4072: avoid ambiguity with optional's own comparison operators
+static_assert(!HasOperatorEqual<std::optional<void*>, std::optional<int>>);
+static_assert(!HasOperatorEqual<std::optional<int>, std::optional<void*>>);
----------------
HumanThe2nd wrote:

Accident when I was trying to figure out why my email wasn't showing. 

I tried to update the email and something went wrong, sorry.

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


More information about the libcxx-commits mailing list