Re: [Boost-bugs] [Boost C++ Libraries] #9334: Boost 1.55.0 beta1: circular_buffer incompatible with shared memory allocators?

Subject: Re: [Boost-bugs] [Boost C++ Libraries] #9334: Boost 1.55.0 beta1: circular_buffer incompatible with shared memory allocators?
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2013-12-03 12:20:49


#9334: Boost 1.55.0 beta1: circular_buffer incompatible with shared memory
allocators?
-------------------------------------+-------------------------------------
  Reporter: Dr Leonid Timochouk | Owner: apolukhin
  <L.Timochouk@…> | Status: new
      Type: Bugs | Component: circular_buffer
 Milestone: To Be Determined | Severity: Regression
   Version: Boost 1.55.0 | Keywords: circular buffer
Resolution: | interprocess shared memory
                                     | allocator
-------------------------------------+-------------------------------------

Comment (by apolukhin):

 This issue is not as easy as it looks like:

 * Replacing placement new with allocator's `construct()` breaks move
 emulation under C++03, where `construct` accepts parameter by const
 reference, while Boost.Move requires nonconst reference.

 * Older versions of circular buffer did not work well in DEBUG mode:
 `std::memset` was attempting to convert `typename Allocator::pointer` to
 `void*`.

 Attached a patch that fixes the issue. Will be applied as soon as the GIT
 migration will be finished.

-- 
Ticket URL: <https://svn.boost.org/trac/boost/ticket/9334#comment:9>
Boost C++ Libraries <http://www.boost.org/>
Boost provides free peer-reviewed portable C++ source libraries.

This archive was generated by hypermail 2.1.7 : 2017-02-16 18:50:14 UTC