From 9d0259c2c63fc3c8f000ae28365ee5c951ebed5a Mon Sep 17 00:00:00 2001 From: "Stephan T. Lavavej" Date: Tue, 5 Dec 2023 18:34:44 -0800 Subject: [PATCH] Product fix for GH 4242 : vectors with fancy pointers cause ranges::equal to fail STL-internal checks --- stl/inc/vector | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/stl/inc/vector b/stl/inc/vector index 680499edff0..2248be330aa 100644 --- a/stl/inc/vector +++ b/stl/inc/vector @@ -1855,20 +1855,20 @@ public: return rend(); } - _NODISCARD _CONSTEXPR20 pointer _Unchecked_begin() noexcept { - return _Mypair._Myval2._Myfirst; + _NODISCARD _CONSTEXPR20 _Ty* _Unchecked_begin() noexcept { + return _Unfancy_maybe_null(_Mypair._Myval2._Myfirst); } - _NODISCARD _CONSTEXPR20 const_pointer _Unchecked_begin() const noexcept { - return _Mypair._Myval2._Myfirst; + _NODISCARD _CONSTEXPR20 const _Ty* _Unchecked_begin() const noexcept { + return _Unfancy_maybe_null(_Mypair._Myval2._Myfirst); } - _NODISCARD _CONSTEXPR20 pointer _Unchecked_end() noexcept { - return _Mypair._Myval2._Mylast; + _NODISCARD _CONSTEXPR20 _Ty* _Unchecked_end() noexcept { + return _Unfancy_maybe_null(_Mypair._Myval2._Mylast); } - _NODISCARD _CONSTEXPR20 const_pointer _Unchecked_end() const noexcept { - return _Mypair._Myval2._Mylast; + _NODISCARD _CONSTEXPR20 const _Ty* _Unchecked_end() const noexcept { + return _Unfancy_maybe_null(_Mypair._Myval2._Mylast); } _NODISCARD_EMPTY_MEMBER _CONSTEXPR20 bool empty() const noexcept {