On 2016-02-13 1:12 AM, Phil Bouchard wrote:
On 2016-02-12 11:39 PM, Phil Bouchard wrote:
On 2016-02-09 9:52 PM, Phil Bouchard wrote:
On 02/09/2016 11:51 AM, Peter Dimov wrote:
Phil Bouchard wrote:
I added the new repository with the right folder structure: https://github.com/philippeb8/block_ptr
You should update this to work with the latest Boost, because currently block_base is abstract as it doesn't implement
virtual void * get_untyped_deleter() = 0;
It also doesn't work with -DBOOST_DISABLE_THREADS, which makes it inconvenient to test as it requires Boost.Thread.
I just fixed the code to support the latest standards and -DBOOST_DISABLE_THREADS.
Unfortunately it's going to take some time supporting MSVC 2015 because of their use of proxies with STL containers making the support of user defined allocators more complicated...
Settings the _ITERATOR_DEBUG_LEVEL=0 preprocessor flag helps disabling the proxy usages...
It looks like I was able to fix a bug which makes it run correctly under MSVC 2015 Express. Although I do have a crash in the boost::pool: Project2.exe!boost::simple_segregated_storage<unsigned int>::try_malloc_n(void * & start, unsigned int n, unsigned int partition_size) Line 333 C++ Project2.exe!boost::simple_segregated_storage<unsigned int>::malloc_n(unsigned int n, unsigned int partition_size) Line 363 C++ Project2.exe!boost::pool<boost::default_user_allocator_new_delete>::ordered_malloc(unsigned int n) Line 801 C++ Project2.exe!boost::singleton_pool<boost::detail::bp::pool,1,boost::default_user_allocator_new_delete,boost::details::pool::null_mutex,32,0>::ordered_malloc(const unsigned int n) Line 149 C++ Project2.exe!boost::detail::bp::pool::allocate(unsigned int s) Line 148 C++ Project2.exe!boost::detail::bp::block<int>::operator new(unsigned int s) Line 283 C++ Project2.exe!boost::detail::bp::make_block<int,int>(const int & t0) Line 520 C++
Project2.exe!main() Line 119 C++
When I try this example: https://github.com/philippeb8/block_ptr/blob/master/example/block_ptr_test2.... Thanks, -Phil