[gcc r13-8372] libstdc++: Fix access error in __gnu_test::uneq_allocator
Jonathan Wakely
redi@gcc.gnu.org
Fri Mar 1 10:52:51 GMT 2024
https://gcc.gnu.org/g:cf8faabcac2adee1fd59a5baf7a36d4334a74a93
commit r13-8372-gcf8faabcac2adee1fd59a5baf7a36d4334a74a93
Author: Jonathan Wakely <jwakely@redhat.com>
Date: Thu Nov 23 14:34:59 2023 +0000
libstdc++: Fix access error in __gnu_test::uneq_allocator
The operator== function is only a friend of the LHS argument, so cannot
access the private member of the RHS argument. Use the public accessor
instead.
libstdc++-v3/ChangeLog:
* testsuite/util/testsuite_allocator.h (uneq_allocator): Fix
equality operator for heterogeneous comparisons.
(cherry picked from commit 0585daf7de0673ade9feca1be66a68178786b48d)
Diff:
---
libstdc++-v3/testsuite/util/testsuite_allocator.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/libstdc++-v3/testsuite/util/testsuite_allocator.h b/libstdc++-v3/testsuite/util/testsuite_allocator.h
index 9108ee40821..24b86e82516 100644
--- a/libstdc++-v3/testsuite/util/testsuite_allocator.h
+++ b/libstdc++-v3/testsuite/util/testsuite_allocator.h
@@ -418,7 +418,7 @@ namespace __gnu_test
operator==(const uneq_allocator& a,
const uneq_allocator<Tp1,
typename AllocTraits::template rebind<Tp1>::other>& b)
- { return a.personality == b.personality; }
+ { return a.personality == b.get_personality(); }
template<typename Tp1>
friend inline bool
More information about the Libstdc++-cvs
mailing list