Boost C++ Libraries: Ticket #2360: out-of-memory segfault https://svn.boost.org/trac10/ticket/2360 <h2 class="section" id="FromPhilBouchard">From Phil Bouchard</h2> <p> Oh this morning I assumed there was a bug in shifted_ptr but it turns out it's inside pool&lt;&gt;::ordered_malloc(). It sounds like there is an out-of-memory: </p> <pre class="wiki">#0 0x0804c668 in boost::simple_segregated_storage&lt;unsigned int&gt;::try_malloc_n (start=@0xbffe8a40, n=11, partition_size=4) at /usr/local/include/boost/pool/simple_segregated_storage.hpp:234 #1 0x0804b14f in boost::simple_segregated_storage&lt;unsigned int&gt;::malloc_n (this=0x806e320, n=12, partition_size=4) at /usr/local/include/boost/pool/simple_segregated_storage.hpp:256 #2 0x0804a26f in boost::pool&lt;boost::default_user_allocator_new_delete&gt;::ordered_malloc (this=0x806e320, n=48) at /usr/local/include/boost/pool/pool.hpp:511 #3 0x0804a116 in boost::detail::sh::pool::allocate (this=0x806e320, s=48) at ../../../boost/detail/sh_owned_base_nt.hpp:104 #4 0x0804f062 in boost::detail::sh::shifted&lt;boost::array&lt;char, 2u&gt; &gt;::operator new (s=48) at ../../../boost/detail/sh_owned_base_nt.hpp:214 #5 0x0804eb57 in create_type::operator()&lt;mpl_::integral_c&lt;int, 2&gt; &gt; (this=0xbffe8bcc) at shifted_ptr_test2.cpp:75 #6 0x0804e10b in boost::mpl::aux::for_each_impl&lt;false&gt;::execute&lt;boost::mpl::r_iter&lt;mpl_::integral_c&lt;int, 2&gt; &gt;, boost::mpl::r_iter&lt;mpl_::integral_c&lt;int, 100&gt; &gt;, boost::mpl::identity&lt;mpl_::na&gt;, create_type&gt; (f={&lt;No data fields&gt;}) at /usr/local/include/boost/mpl/for_each.hpp:73 #7 0x0804d45b in boost::mpl::aux::for_each_impl&lt;false&gt;::execute&lt;boost::mpl::r_iter&lt;mpl_::integral_c&lt;int, 1&gt; &gt;, boost::mpl::r_iter&lt;mpl_::integral_c&lt;int, 100&gt; &gt;, boost::mpl::identity&lt;mpl_::na&gt;, create_type&gt; (f={&lt;No data fields&gt;}) at /usr/local/include/boost/mpl/for_each.hpp:76 #8 0x0804c581 in boost::mpl::for_each&lt;boost::mpl::range_c&lt;int, 1, 100&gt;, boost::mpl::identity&lt;mpl_::na&gt;, create_type&gt; (f={&lt;No data fields&gt;}) at /usr/local/include/boost/mpl/for_each.hpp:96 #9 0x0804af56 in boost::mpl::for_each&lt;boost::mpl::range_c&lt;int, 1, 100&gt;, create_type&gt; (f={&lt;No data fields&gt;}) at /usr/local/include/boost/mpl/for_each.hpp:107 #10 0x080495bb in main () at shifted_ptr_test2.cpp:123 </pre><p> This is: shifted_ptr/libs/smart_ptr/example/shifted_ptr_test2.cpp, compiled with: -I ../../.. </p> en-us Boost C++ Libraries /htdocs/site/boost.png https://svn.boost.org/trac10/ticket/2360 Trac 1.4.3 Chris Newbold Wed, 08 Oct 2008 16:01:51 GMT status changed; resolution set https://svn.boost.org/trac10/ticket/2360#comment:1 https://svn.boost.org/trac10/ticket/2360#comment:1 <ul> <li><strong>status</strong> <span class="trac-field-old">new</span> → <span class="trac-field-new">closed</span> </li> <li><strong>resolution</strong> → <span class="trac-field-new">invalid</span> </li> </ul> <p> After much digging, this appears to be a problem with a patched version of std::list which is being used by the failing test case. Please re-open if you turn up evidence that the pool is at fault. </p> Ticket