Boost C++ Libraries: Ticket #9334: Boost 1.55.0 beta1: circular_buffer incompatible with shared memory allocators? https://svn.boost.org/trac10/ticket/9334 <p> Apparently, because of the use of "placement new" instead of "m_alloc.construct()" used in previous versions, Circular Buffer can no longer be used with allocators which return a pointer type different from void*. In particular, shared memory allocators provided by the Interprocess library result in a compile-time error. This seems to be a serious regression. </p> en-us Boost C++ Libraries /htdocs/site/boost.png https://svn.boost.org/trac10/ticket/9334 Trac 1.4.3 Jan Gaspar Mon, 04 Nov 2013 21:00:23 GMT owner changed https://svn.boost.org/trac10/ticket/9334#comment:1 https://svn.boost.org/trac10/ticket/9334#comment:1 <ul> <li><strong>owner</strong> changed from <span class="trac-author">Jan Gaspar</span> to <span class="trac-author">No-Maintainer</span> </li> </ul> Ticket anonymous Fri, 29 Nov 2013 18:22:54 GMT <link>https://svn.boost.org/trac10/ticket/9334#comment:2 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/9334#comment:2</guid> <description> <p> I am afraid that this bug has now been hidden away from view because of the owner change, and no Cc: added. </p> <p> This isssue is making it impossible for me to use the circular_buffer from 1.55. </p> </description> <category>Ticket</category> </item> <item> <dc:creator>Jan Gaspar</dc:creator> <pubDate>Fri, 29 Nov 2013 21:43:28 GMT</pubDate> <title/> <link>https://svn.boost.org/trac10/ticket/9334#comment:3 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/9334#comment:3</guid> <description> <p> Sorry about this, but I'm not maintaining circular_buffer any more. </p> </description> <category>Ticket</category> </item> <item> <author>saleyn@…</author> <pubDate>Sun, 01 Dec 2013 02:01:41 GMT</pubDate> <title>attachment set https://svn.boost.org/trac10/ticket/9334 https://svn.boost.org/trac10/ticket/9334 <ul> <li><strong>attachment</strong> → <span class="trac-field-new">circular_buffer.patch</span> </li> </ul> <p> Patch that fixes reported issue with circular buffer </p> Ticket saleyn@… Sun, 01 Dec 2013 02:04:11 GMT <link>https://svn.boost.org/trac10/ticket/9334#comment:4 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/9334#comment:4</guid> <description> <p> Who is in charge of maintaining this project, can we get this fix applied to to the new release? </p> </description> <category>Ticket</category> </item> <item> <dc:creator>Jan Gaspar</dc:creator> <pubDate>Sun, 01 Dec 2013 08:51:32 GMT</pubDate> <title/> <link>https://svn.boost.org/trac10/ticket/9334#comment:5 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/9334#comment:5</guid> <description> <p> Sure, you can fix the issue and also you can start maintaining the library if you wish. </p> </description> <category>Ticket</category> </item> <item> <author>Serge Aleynikov <saleyn@…></author> <pubDate>Sun, 01 Dec 2013 15:20:26 GMT</pubDate> <title/> <link>https://svn.boost.org/trac10/ticket/9334#comment:6 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/9334#comment:6</guid> <description> <p> Replying to <a class="ticket" href="https://svn.boost.org/trac10/ticket/9334#comment:5" title="Comment 5">jano_gaspar</a>: </p> <blockquote class="citation"> <p> Sure, you can fix the issue and also you can start maintaining the library if you wish. </p> </blockquote> <p> Do you mind pushing this fix into the release area? Aside from fixing this issue, unfortunately, I have no resources to be able to become the maintainer of this project. </p> </description> <category>Ticket</category> </item> <item> <dc:creator>Jan Gaspar</dc:creator> <pubDate>Sun, 01 Dec 2013 23:18:00 GMT</pubDate> <title/> <link>https://svn.boost.org/trac10/ticket/9334#comment:7 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/9334#comment:7</guid> <description> <p> You need to ask someone at boost dev mailing list to push it for you I'm afraid. </p> </description> <category>Ticket</category> </item> <item> <dc:creator>Antony Polukhin</dc:creator> <pubDate>Mon, 02 Dec 2013 08:14:16 GMT</pubDate> <title>owner changed https://svn.boost.org/trac10/ticket/9334#comment:8 https://svn.boost.org/trac10/ticket/9334#comment:8 <ul> <li><strong>owner</strong> changed from <span class="trac-author">No-Maintainer</span> to <span class="trac-author">Antony Polukhin</span> </li> </ul> Ticket Antony Polukhin Tue, 03 Dec 2013 12:20:49 GMT <link>https://svn.boost.org/trac10/ticket/9334#comment:9 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/9334#comment:9</guid> <description> <p> This issue is not as easy as it looks like: </p> <ul><li>Replacing placement new with allocator's <code>construct()</code> breaks move emulation under C++03, where <code>construct</code> accepts parameter by const reference, while Boost.Move requires nonconst reference. </li></ul><ul><li>Older versions of circular buffer did not work well in DEBUG mode: <code>std::memset</code> was attempting to convert <code>typename Allocator::pointer</code> to <code>void*</code>. </li></ul><p> Attached a patch that fixes the issue. Will be applied as soon as the GIT migration will be finished. </p> </description> <category>Ticket</category> </item> <item> <dc:creator>Antony Polukhin</dc:creator> <pubDate>Tue, 03 Dec 2013 12:21:37 GMT</pubDate> <title>attachment set https://svn.boost.org/trac10/ticket/9334 https://svn.boost.org/trac10/ticket/9334 <ul> <li><strong>attachment</strong> → <span class="trac-field-new">9334.patch</span> </li> </ul> <p> More advanced patch, based on the previous one. </p> Ticket Antony Polukhin Tue, 03 Dec 2013 12:24:42 GMT status changed https://svn.boost.org/trac10/ticket/9334#comment:10 https://svn.boost.org/trac10/ticket/9334#comment:10 <ul> <li><strong>status</strong> <span class="trac-field-old">new</span> → <span class="trac-field-new">assigned</span> </li> </ul> Ticket Serge Aleynikov <saleyn@…> Tue, 03 Dec 2013 13:43:40 GMT <link>https://svn.boost.org/trac10/ticket/9334#comment:11 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/9334#comment:11</guid> <description> <p> Thanks for looking into it! </p> <p> Replying to <a class="ticket" href="https://svn.boost.org/trac10/ticket/9334#comment:9" title="Comment 9">apolukhin</a>: </p> <blockquote class="citation"> <p> This issue is not as easy as it looks like: </p> <ul><li>Replacing placement new with allocator's <code>construct()</code> breaks move emulation under C++03, where <code>construct</code> accepts parameter by const reference, while Boost.Move requires nonconst reference. </li></ul><ul><li>Older versions of circular buffer did not work well in DEBUG mode: <code>std::memset</code> was attempting to convert <code>typename Allocator::pointer</code> to <code>void*</code>. </li></ul><p> Attached a patch that fixes the issue. Will be applied as soon as the GIT migration will be finished. </p> </blockquote> </description> <category>Ticket</category> </item> <item> <dc:creator>Antony Polukhin</dc:creator> <pubDate>Tue, 10 Dec 2013 12:23:05 GMT</pubDate> <title/> <link>https://svn.boost.org/trac10/ticket/9334#comment:12 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/9334#comment:12</guid> <description> <p> In <a class="ext-link" href="https://github.com/boostorg/circular_buffer/commit/ece12779652dcfefee1328a3af5598ce114cb7f7"><span class="icon">​</span>commit1</a> and <a class="ext-link" href="https://github.com/boostorg/circular_buffer/commit/fc1d341a26550dfafa505261841725157eb1e937"><span class="icon">​</span>commit2</a> to GIT's developer branch this issue was addressed. </p> </description> <category>Ticket</category> </item> <item> <dc:creator>Antony Polukhin</dc:creator> <pubDate>Wed, 05 Feb 2014 11:50:45 GMT</pubDate> <title>status, milestone changed; resolution set https://svn.boost.org/trac10/ticket/9334#comment:13 https://svn.boost.org/trac10/ticket/9334#comment:13 <ul> <li><strong>status</strong> <span class="trac-field-old">assigned</span> → <span class="trac-field-new">closed</span> </li> <li><strong>resolution</strong> → <span class="trac-field-new">fixed</span> </li> <li><strong>milestone</strong> <span class="trac-field-old">To Be Determined</span> → <span class="trac-field-new">Boost 1.56.0</span> </li> </ul> <p> <a class="ext-link" href="https://github.com/boostorg/circular_buffer/commit/f5303c70d813b993097ab1c376ac0612b2613b4f"><span class="icon">​</span>Fix merged to master branch</a> </p> Ticket