Skip to content

Commit

Permalink
Merge pull request #1065 from ArsenArsen/cpp_gcc13
Browse files Browse the repository at this point in the history
test: Add missing rebind to allocators
  • Loading branch information
redboltz committed Apr 21, 2023
2 parents 1edfba0 + 2dd3dbc commit 706fde4
Showing 1 changed file with 9 additions and 0 deletions.
9 changes: 9 additions & 0 deletions test/msgpack_cpp11.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -252,6 +252,9 @@ struct equal_to : std::equal_to<Key> {
template <class Key>
struct set_allocator : std::allocator<Key> {
using std::allocator<Key>::allocator;

template<class U>
struct rebind { using other = set_allocator<U>; };
};

// C++ named requirement Allocator implies that the first template type
Expand All @@ -262,6 +265,9 @@ struct set_allocator : std::allocator<Key> {
template <typename KeyValuePair>
struct map_allocator_impl : std::allocator<KeyValuePair> {
using std::allocator<KeyValuePair>::allocator;

template<class U>
struct rebind { using other = map_allocator_impl<U>; };
};

template <class Key, class T>
Expand All @@ -270,6 +276,9 @@ using map_allocator = map_allocator_impl<std::pair<const Key, T>>;
template <class T>
struct allocator : std::allocator<T> {
using std::allocator<T>::allocator;

template<class U>
struct rebind { using other = allocator<U>; };
};

} // namespace test
Expand Down

0 comments on commit 706fde4

Please sign in to comment.