From 0d6f09c1d80bff04749f9a94ec2d5150a377604c Mon Sep 17 00:00:00 2001 From: Dennis Luxen Date: Thu, 7 May 2026 09:59:13 +0200 Subject: [PATCH 1/2] fix: implement comparison operator for vector view The iterator was missing ordering operators. C++20 ranges concepts checks require these for random access iterator. Fixes compilation of #7444. --- include/util/vector_view.hpp | 11 +++-------- 1 file changed, 3 insertions(+), 8 deletions(-) diff --git a/include/util/vector_view.hpp b/include/util/vector_view.hpp index 88ee79757d0..412234cb359 100644 --- a/include/util/vector_view.hpp +++ b/include/util/vector_view.hpp @@ -12,6 +12,7 @@ #include #include +#include #include #include #include @@ -94,14 +95,8 @@ template class VectorViewIterator return it; } - friend bool operator==(const VectorViewIterator &a, const VectorViewIterator &b) - { - return a.m_value == b.m_value; - } - friend bool operator!=(const VectorViewIterator &a, const VectorViewIterator &b) - { - return !(a == b); - } + friend bool operator==(const VectorViewIterator &a, const VectorViewIterator &b) = default; + friend bool operator<=>(const VectorViewIterator &a, const VectorViewIterator &b) = default; private: DataT *m_value; From 497e6c7fb0ea2314e9924beb14d1a32c466c7a9c Mon Sep 17 00:00:00 2001 From: Dennis Luxen Date: Thu, 7 May 2026 10:05:36 +0200 Subject: [PATCH 2/2] fix: spaceship operator return type Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> --- include/util/vector_view.hpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/util/vector_view.hpp b/include/util/vector_view.hpp index 412234cb359..ff93e778e58 100644 --- a/include/util/vector_view.hpp +++ b/include/util/vector_view.hpp @@ -96,7 +96,7 @@ template class VectorViewIterator } friend bool operator==(const VectorViewIterator &a, const VectorViewIterator &b) = default; - friend bool operator<=>(const VectorViewIterator &a, const VectorViewIterator &b) = default; + friend auto operator<=>(const VectorViewIterator &a, const VectorViewIterator &b) = default; private: DataT *m_value;