Opened 7 years ago
#11799 new Bugs
boost::interprocess::offset_ptr not compatible with C++11 std::pointer_traits
| Reported by: | Owned by: | Ion Gaztañaga | |
|---|---|---|---|
| Milestone: | To Be Determined | Component: | container |
| Version: | Boost 1.59.0 | Severity: | Problem |
| Keywords: | Cc: |
Description
offset_ptr defines its rebind member as:
template <class U>
struct rebind
{ typedef offset_ptr<U, DifferenceType, OffsetType, OffsetAlignment> other; };
but std::pointer_traits<T>::rebind is defined as:
Ptr::rebind<U> if exists, otherwise Template<U, Args...> if Ptr is a template instantiation Template<T, Args...>
This means that offset_ptr's rebind should just be an alias template rather than a struct with an ::other member.
Note:
See TracTickets
for help on using tickets.
