Ticket #12915: log

File log, 31.2 KB (added by karl.tarbe@…, 4 years ago)

Log of valgrind output

Line 
1$ g++ -O0 -ggdb -o test test.cpp
2$ valgrind -- ./test
3==20889== Memcheck, a memory error detector
4==20889== Copyright (C) 2002-2017, and GNU GPL'd, by Julian Seward et al.
5==20889== Using Valgrind-3.13.0 and LibVEX; rerun with -h for copyright info
6==20889== Command: ./test
7==20889==
8==20889== Invalid write of size 8
9==20889== at 0x1160AE: void boost::movelib::detail_adaptive::initialize_keys<unsigned long*, boost::movelib::detail_adaptive::adaptive_xbuf<unsigned long, unsigned long*> >(unsigned long*, unsigned long*, boost::movelib::detail_adaptive::less, boost::movelib::detail_adaptive::adaptive_xbuf<unsigned long, unsigned long*>&) (adaptive_sort_merge.hpp:871)
10==20889== by 0x112CAF: void boost::movelib::detail_adaptive::combine_params<unsigned long*, boost::movelib::detail_adaptive::less, unsigned long, boost::movelib::detail_adaptive::adaptive_xbuf<unsigned long, unsigned long*> >(unsigned long*, boost::movelib::detail_adaptive::less, unsigned long, unsigned long, unsigned long, boost::movelib::detail_adaptive::adaptive_xbuf<unsigned long, unsigned long*>&, unsigned long&, unsigned long&, unsigned long&, unsigned long&, bool) (adaptive_sort_merge.hpp:922)
11==20889== by 0x10FE68: void boost::movelib::detail_adaptive::adaptive_merge_combine_blocks<unsigned long*, boost::container::dtl::flat_tree_value_compare<std::less<unsigned long>, unsigned long, boost::move_detail::identity<unsigned long> >, boost::movelib::detail_adaptive::adaptive_xbuf<unsigned long, unsigned long*> >(unsigned long*, boost::movelib::iterator_traits<unsigned long*>::size_type, boost::movelib::iterator_traits<unsigned long*>::size_type, boost::movelib::iterator_traits<unsigned long*>::size_type, boost::movelib::iterator_traits<unsigned long*>::size_type, boost::movelib::iterator_traits<unsigned long*>::size_type, bool, bool, boost::container::dtl::flat_tree_value_compare<std::less<unsigned long>, unsigned long, boost::move_detail::identity<unsigned long> >, boost::movelib::detail_adaptive::adaptive_xbuf<unsigned long, unsigned long*>&) (adaptive_merge.hpp:83)
12==20889== by 0x10E954: void boost::movelib::detail_adaptive::adaptive_merge_impl<unsigned long*, boost::container::dtl::flat_tree_value_compare<std::less<unsigned long>, unsigned long, boost::move_detail::identity<unsigned long> >, boost::movelib::detail_adaptive::adaptive_xbuf<unsigned long, unsigned long*> >(unsigned long*, boost::movelib::iterator_traits<unsigned long*>::size_type, boost::movelib::iterator_traits<unsigned long*>::size_type, boost::container::dtl::flat_tree_value_compare<std::less<unsigned long>, unsigned long, boost::move_detail::identity<unsigned long> >, boost::movelib::detail_adaptive::adaptive_xbuf<unsigned long, unsigned long*>&) (adaptive_merge.hpp:264)
13==20889== by 0x10D176: void boost::movelib::adaptive_merge<unsigned long*, boost::container::dtl::flat_tree_value_compare<std::less<unsigned long>, unsigned long, boost::move_detail::identity<unsigned long> > >(unsigned long*, unsigned long*, unsigned long*, boost::container::dtl::flat_tree_value_compare<std::less<unsigned long>, unsigned long, boost::move_detail::identity<unsigned long> >, boost::movelib::iterator_traits<unsigned long*>::value_type*, unsigned long) (adaptive_merge.hpp:312)
14==20889== by 0x10AB40: void boost::container::dtl::flat_tree_container_inplace_merge<boost::container::vector<unsigned long, boost::container::new_allocator<unsigned long>, void>, boost::container::dtl::flat_tree_value_compare<std::less<unsigned long>, unsigned long, boost::move_detail::identity<unsigned long> > >(boost::container::vector<unsigned long, boost::container::new_allocator<unsigned long>, void>&, boost::container::vector<unsigned long, boost::container::new_allocator<unsigned long>, void>::iterator, boost::container::dtl::flat_tree_value_compare<std::less<unsigned long>, unsigned long, boost::move_detail::identity<unsigned long> >, boost::move_detail::bool_<true>) (flat_tree.hpp:133)
15==20889== by 0x1097EE: void boost::container::dtl::flat_tree<unsigned long, boost::move_detail::identity<unsigned long>, std::less<unsigned long>, boost::container::new_allocator<unsigned long> >::insert_unique<boost::container::vec_iterator<unsigned long*, false> >(boost::container::vec_iterator<unsigned long*, false>, boost::container::vec_iterator<unsigned long*, false>) (flat_tree.hpp:887)
16==20889== by 0x10916F: insert<boost::container::vec_iterator<long unsigned int*, false> > (flat_set.hpp:695)
17==20889== by 0x10916F: main (test.cpp:20)
18==20889== Address 0x5b3d4a8 is 0 bytes after a block of size 280 alloc'd
19==20889== at 0x4C2D54F: operator new(unsigned long) (vg_replace_malloc.c:334)
20==20889== by 0x113D3A: boost::container::new_allocator<unsigned long>::allocate(unsigned long) (new_allocator.hpp:145)
21==20889== by 0x10D42B: allocate (allocator_traits.hpp:293)
22==20889== by 0x10D42B: allocate (vector.hpp:413)
23==20889== by 0x10D42B: boost::container::vec_iterator<unsigned long*, false> boost::container::vector<unsigned long, boost::container::new_allocator<unsigned long>, void>::priv_forward_range_insert_no_capacity<boost::container::dtl::insert_range_proxy<boost::container::new_allocator<unsigned long>, boost::container::vec_iterator<unsigned long*, false>, unsigned long*> >(unsigned long* const&, unsigned long, boost::container::dtl::insert_range_proxy<boost::container::new_allocator<unsigned long>, boost::container::vec_iterator<unsigned long*, false>, unsigned long*>, boost::move_detail::integral_constant<unsigned int, 1u>) (vector.hpp:2717)
24==20889== by 0x10AD09: boost::container::vec_iterator<unsigned long*, false> boost::container::vector<unsigned long, boost::container::new_allocator<unsigned long>, void>::priv_forward_range_insert<boost::container::dtl::insert_range_proxy<boost::container::new_allocator<unsigned long>, boost::container::vec_iterator<unsigned long*, false>, unsigned long*> >(unsigned long* const&, unsigned long, boost::container::dtl::insert_range_proxy<boost::container::new_allocator<unsigned long>, boost::container::vec_iterator<unsigned long*, false>, unsigned long*>) (vector.hpp:2783)
25==20889== by 0x109DED: boost::container::vec_iterator<unsigned long*, false> boost::container::vector<unsigned long, boost::container::new_allocator<unsigned long>, void>::insert<boost::container::vec_iterator<unsigned long*, false> >(boost::container::vec_iterator<unsigned long*, true>, boost::container::vec_iterator<unsigned long*, false>, boost::container::vec_iterator<unsigned long*, false>, boost::move_detail::disable_if_or<void, boost::move_detail::is_convertible<boost::container::vec_iterator<unsigned long*, false>, unsigned long>, boost::container::dtl::is_input_iterator<boost::container::vec_iterator<unsigned long*, false>, boost::container::dtl::has_iterator_category<boost::container::vec_iterator<unsigned long*, false> >::value>, boost::move_detail::bool_<false>, boost::move_detail::bool_<false> >::type*) (vector.hpp:1953)
26==20889== by 0x1095C6: void boost::container::dtl::flat_tree<unsigned long, boost::move_detail::identity<unsigned long>, std::less<unsigned long>, boost::container::new_allocator<unsigned long> >::insert_unique<boost::container::vec_iterator<unsigned long*, false> >(boost::container::vec_iterator<unsigned long*, false>, boost::container::vec_iterator<unsigned long*, false>) (flat_tree.hpp:876)
27==20889== by 0x10916F: insert<boost::container::vec_iterator<long unsigned int*, false> > (flat_set.hpp:695)
28==20889== by 0x10916F: main (test.cpp:20)
29==20889==
30==20889== Invalid read of size 8
31==20889== at 0x116216: bool boost::movelib::detail_adaptive::less::operator()<unsigned long>(unsigned long const&, unsigned long const&) (adaptive_sort_merge.hpp:721)
32==20889== by 0x1161CF: boost::movelib::iterator_traits<unsigned long*>::size_type boost::movelib::detail_adaptive::find_next_block<unsigned long*, boost::movelib::detail_adaptive::less, unsigned long*, boost::container::dtl::flat_tree_value_compare<std::less<unsigned long>, unsigned long, boost::move_detail::identity<unsigned long> > >(unsigned long*, boost::movelib::detail_adaptive::less, unsigned long*, boost::movelib::iterator_traits<unsigned long*>::size_type, boost::movelib::iterator_traits<unsigned long*>::size_type, boost::movelib::iterator_traits<unsigned long*>::size_type, boost::container::dtl::flat_tree_value_compare<std::less<unsigned long>, unsigned long, boost::move_detail::identity<unsigned long> >) (adaptive_sort_merge.hpp:480)
33==20889== by 0x112EA3: void boost::movelib::detail_adaptive::op_merge_blocks_with_buf<unsigned long*, boost::movelib::detail_adaptive::less, unsigned long*, boost::container::dtl::flat_tree_value_compare<std::less<unsigned long>, unsigned long, boost::move_detail::identity<unsigned long> >, boost::movelib::move_op, unsigned long*>(unsigned long*, boost::movelib::detail_adaptive::less, unsigned long*, boost::movelib::iterator_traits<unsigned long*>::size_type, boost::movelib::iterator_traits<unsigned long*>::size_type, boost::movelib::iterator_traits<unsigned long*>::size_type, boost::movelib::iterator_traits<unsigned long*>::size_type, boost::movelib::iterator_traits<unsigned long*>::size_type, boost::container::dtl::flat_tree_value_compare<std::less<unsigned long>, unsigned long, boost::move_detail::identity<unsigned long> >, boost::movelib::move_op, unsigned long*) (adaptive_sort_merge.hpp:1469)
34==20889== by 0x10FEDF: void boost::movelib::detail_adaptive::adaptive_merge_combine_blocks<unsigned long*, boost::container::dtl::flat_tree_value_compare<std::less<unsigned long>, unsigned long, boost::move_detail::identity<unsigned long> >, boost::movelib::detail_adaptive::adaptive_xbuf<unsigned long, unsigned long*> >(unsigned long*, boost::movelib::iterator_traits<unsigned long*>::size_type, boost::movelib::iterator_traits<unsigned long*>::size_type, boost::movelib::iterator_traits<unsigned long*>::size_type, boost::movelib::iterator_traits<unsigned long*>::size_type, boost::movelib::iterator_traits<unsigned long*>::size_type, bool, bool, boost::container::dtl::flat_tree_value_compare<std::less<unsigned long>, unsigned long, boost::move_detail::identity<unsigned long> >, boost::movelib::detail_adaptive::adaptive_xbuf<unsigned long, unsigned long*>&) (adaptive_merge.hpp:89)
35==20889== by 0x10E954: void boost::movelib::detail_adaptive::adaptive_merge_impl<unsigned long*, boost::container::dtl::flat_tree_value_compare<std::less<unsigned long>, unsigned long, boost::move_detail::identity<unsigned long> >, boost::movelib::detail_adaptive::adaptive_xbuf<unsigned long, unsigned long*> >(unsigned long*, boost::movelib::iterator_traits<unsigned long*>::size_type, boost::movelib::iterator_traits<unsigned long*>::size_type, boost::container::dtl::flat_tree_value_compare<std::less<unsigned long>, unsigned long, boost::move_detail::identity<unsigned long> >, boost::movelib::detail_adaptive::adaptive_xbuf<unsigned long, unsigned long*>&) (adaptive_merge.hpp:264)
36==20889== by 0x10D176: void boost::movelib::adaptive_merge<unsigned long*, boost::container::dtl::flat_tree_value_compare<std::less<unsigned long>, unsigned long, boost::move_detail::identity<unsigned long> > >(unsigned long*, unsigned long*, unsigned long*, boost::container::dtl::flat_tree_value_compare<std::less<unsigned long>, unsigned long, boost::move_detail::identity<unsigned long> >, boost::movelib::iterator_traits<unsigned long*>::value_type*, unsigned long) (adaptive_merge.hpp:312)
37==20889== by 0x10AB40: void boost::container::dtl::flat_tree_container_inplace_merge<boost::container::vector<unsigned long, boost::container::new_allocator<unsigned long>, void>, boost::container::dtl::flat_tree_value_compare<std::less<unsigned long>, unsigned long, boost::move_detail::identity<unsigned long> > >(boost::container::vector<unsigned long, boost::container::new_allocator<unsigned long>, void>&, boost::container::vector<unsigned long, boost::container::new_allocator<unsigned long>, void>::iterator, boost::container::dtl::flat_tree_value_compare<std::less<unsigned long>, unsigned long, boost::move_detail::identity<unsigned long> >, boost::move_detail::bool_<true>) (flat_tree.hpp:133)
38==20889== by 0x1097EE: void boost::container::dtl::flat_tree<unsigned long, boost::move_detail::identity<unsigned long>, std::less<unsigned long>, boost::container::new_allocator<unsigned long> >::insert_unique<boost::container::vec_iterator<unsigned long*, false> >(boost::container::vec_iterator<unsigned long*, false>, boost::container::vec_iterator<unsigned long*, false>) (flat_tree.hpp:887)
39==20889== by 0x10916F: insert<boost::container::vec_iterator<long unsigned int*, false> > (flat_set.hpp:695)
40==20889== by 0x10916F: main (test.cpp:20)
41==20889== Address 0x5b3d4a8 is 0 bytes after a block of size 280 alloc'd
42==20889== at 0x4C2D54F: operator new(unsigned long) (vg_replace_malloc.c:334)
43==20889== by 0x113D3A: boost::container::new_allocator<unsigned long>::allocate(unsigned long) (new_allocator.hpp:145)
44==20889== by 0x10D42B: allocate (allocator_traits.hpp:293)
45==20889== by 0x10D42B: allocate (vector.hpp:413)
46==20889== by 0x10D42B: boost::container::vec_iterator<unsigned long*, false> boost::container::vector<unsigned long, boost::container::new_allocator<unsigned long>, void>::priv_forward_range_insert_no_capacity<boost::container::dtl::insert_range_proxy<boost::container::new_allocator<unsigned long>, boost::container::vec_iterator<unsigned long*, false>, unsigned long*> >(unsigned long* const&, unsigned long, boost::container::dtl::insert_range_proxy<boost::container::new_allocator<unsigned long>, boost::container::vec_iterator<unsigned long*, false>, unsigned long*>, boost::move_detail::integral_constant<unsigned int, 1u>) (vector.hpp:2717)
47==20889== by 0x10AD09: boost::container::vec_iterator<unsigned long*, false> boost::container::vector<unsigned long, boost::container::new_allocator<unsigned long>, void>::priv_forward_range_insert<boost::container::dtl::insert_range_proxy<boost::container::new_allocator<unsigned long>, boost::container::vec_iterator<unsigned long*, false>, unsigned long*> >(unsigned long* const&, unsigned long, boost::container::dtl::insert_range_proxy<boost::container::new_allocator<unsigned long>, boost::container::vec_iterator<unsigned long*, false>, unsigned long*>) (vector.hpp:2783)
48==20889== by 0x109DED: boost::container::vec_iterator<unsigned long*, false> boost::container::vector<unsigned long, boost::container::new_allocator<unsigned long>, void>::insert<boost::container::vec_iterator<unsigned long*, false> >(boost::container::vec_iterator<unsigned long*, true>, boost::container::vec_iterator<unsigned long*, false>, boost::container::vec_iterator<unsigned long*, false>, boost::move_detail::disable_if_or<void, boost::move_detail::is_convertible<boost::container::vec_iterator<unsigned long*, false>, unsigned long>, boost::container::dtl::is_input_iterator<boost::container::vec_iterator<unsigned long*, false>, boost::container::dtl::has_iterator_category<boost::container::vec_iterator<unsigned long*, false> >::value>, boost::move_detail::bool_<false>, boost::move_detail::bool_<false> >::type*) (vector.hpp:1953)
49==20889== by 0x1095C6: void boost::container::dtl::flat_tree<unsigned long, boost::move_detail::identity<unsigned long>, std::less<unsigned long>, boost::container::new_allocator<unsigned long> >::insert_unique<boost::container::vec_iterator<unsigned long*, false> >(boost::container::vec_iterator<unsigned long*, false>, boost::container::vec_iterator<unsigned long*, false>) (flat_tree.hpp:876)
50==20889== by 0x10916F: insert<boost::container::vec_iterator<long unsigned int*, false> > (flat_set.hpp:695)
51==20889== by 0x10916F: main (test.cpp:20)
52==20889==
53==20889== Invalid read of size 8
54==20889== at 0x11621D: bool boost::movelib::detail_adaptive::less::operator()<unsigned long>(unsigned long const&, unsigned long const&) (adaptive_sort_merge.hpp:721)
55==20889== by 0x1161CF: boost::movelib::iterator_traits<unsigned long*>::size_type boost::movelib::detail_adaptive::find_next_block<unsigned long*, boost::movelib::detail_adaptive::less, unsigned long*, boost::container::dtl::flat_tree_value_compare<std::less<unsigned long>, unsigned long, boost::move_detail::identity<unsigned long> > >(unsigned long*, boost::movelib::detail_adaptive::less, unsigned long*, boost::movelib::iterator_traits<unsigned long*>::size_type, boost::movelib::iterator_traits<unsigned long*>::size_type, boost::movelib::iterator_traits<unsigned long*>::size_type, boost::container::dtl::flat_tree_value_compare<std::less<unsigned long>, unsigned long, boost::move_detail::identity<unsigned long> >) (adaptive_sort_merge.hpp:480)
56==20889== by 0x112EA3: void boost::movelib::detail_adaptive::op_merge_blocks_with_buf<unsigned long*, boost::movelib::detail_adaptive::less, unsigned long*, boost::container::dtl::flat_tree_value_compare<std::less<unsigned long>, unsigned long, boost::move_detail::identity<unsigned long> >, boost::movelib::move_op, unsigned long*>(unsigned long*, boost::movelib::detail_adaptive::less, unsigned long*, boost::movelib::iterator_traits<unsigned long*>::size_type, boost::movelib::iterator_traits<unsigned long*>::size_type, boost::movelib::iterator_traits<unsigned long*>::size_type, boost::movelib::iterator_traits<unsigned long*>::size_type, boost::movelib::iterator_traits<unsigned long*>::size_type, boost::container::dtl::flat_tree_value_compare<std::less<unsigned long>, unsigned long, boost::move_detail::identity<unsigned long> >, boost::movelib::move_op, unsigned long*) (adaptive_sort_merge.hpp:1469)
57==20889== by 0x10FEDF: void boost::movelib::detail_adaptive::adaptive_merge_combine_blocks<unsigned long*, boost::container::dtl::flat_tree_value_compare<std::less<unsigned long>, unsigned long, boost::move_detail::identity<unsigned long> >, boost::movelib::detail_adaptive::adaptive_xbuf<unsigned long, unsigned long*> >(unsigned long*, boost::movelib::iterator_traits<unsigned long*>::size_type, boost::movelib::iterator_traits<unsigned long*>::size_type, boost::movelib::iterator_traits<unsigned long*>::size_type, boost::movelib::iterator_traits<unsigned long*>::size_type, boost::movelib::iterator_traits<unsigned long*>::size_type, bool, bool, boost::container::dtl::flat_tree_value_compare<std::less<unsigned long>, unsigned long, boost::move_detail::identity<unsigned long> >, boost::movelib::detail_adaptive::adaptive_xbuf<unsigned long, unsigned long*>&) (adaptive_merge.hpp:89)
58==20889== by 0x10E954: void boost::movelib::detail_adaptive::adaptive_merge_impl<unsigned long*, boost::container::dtl::flat_tree_value_compare<std::less<unsigned long>, unsigned long, boost::move_detail::identity<unsigned long> >, boost::movelib::detail_adaptive::adaptive_xbuf<unsigned long, unsigned long*> >(unsigned long*, boost::movelib::iterator_traits<unsigned long*>::size_type, boost::movelib::iterator_traits<unsigned long*>::size_type, boost::container::dtl::flat_tree_value_compare<std::less<unsigned long>, unsigned long, boost::move_detail::identity<unsigned long> >, boost::movelib::detail_adaptive::adaptive_xbuf<unsigned long, unsigned long*>&) (adaptive_merge.hpp:264)
59==20889== by 0x10D176: void boost::movelib::adaptive_merge<unsigned long*, boost::container::dtl::flat_tree_value_compare<std::less<unsigned long>, unsigned long, boost::move_detail::identity<unsigned long> > >(unsigned long*, unsigned long*, unsigned long*, boost::container::dtl::flat_tree_value_compare<std::less<unsigned long>, unsigned long, boost::move_detail::identity<unsigned long> >, boost::movelib::iterator_traits<unsigned long*>::value_type*, unsigned long) (adaptive_merge.hpp:312)
60==20889== by 0x10AB40: void boost::container::dtl::flat_tree_container_inplace_merge<boost::container::vector<unsigned long, boost::container::new_allocator<unsigned long>, void>, boost::container::dtl::flat_tree_value_compare<std::less<unsigned long>, unsigned long, boost::move_detail::identity<unsigned long> > >(boost::container::vector<unsigned long, boost::container::new_allocator<unsigned long>, void>&, boost::container::vector<unsigned long, boost::container::new_allocator<unsigned long>, void>::iterator, boost::container::dtl::flat_tree_value_compare<std::less<unsigned long>, unsigned long, boost::move_detail::identity<unsigned long> >, boost::move_detail::bool_<true>) (flat_tree.hpp:133)
61==20889== by 0x1097EE: void boost::container::dtl::flat_tree<unsigned long, boost::move_detail::identity<unsigned long>, std::less<unsigned long>, boost::container::new_allocator<unsigned long> >::insert_unique<boost::container::vec_iterator<unsigned long*, false> >(boost::container::vec_iterator<unsigned long*, false>, boost::container::vec_iterator<unsigned long*, false>) (flat_tree.hpp:887)
62==20889== by 0x10916F: insert<boost::container::vec_iterator<long unsigned int*, false> > (flat_set.hpp:695)
63==20889== by 0x10916F: main (test.cpp:20)
64==20889== Address 0x5b3d4a8 is 0 bytes after a block of size 280 alloc'd
65==20889== at 0x4C2D54F: operator new(unsigned long) (vg_replace_malloc.c:334)
66==20889== by 0x113D3A: boost::container::new_allocator<unsigned long>::allocate(unsigned long) (new_allocator.hpp:145)
67==20889== by 0x10D42B: allocate (allocator_traits.hpp:293)
68==20889== by 0x10D42B: allocate (vector.hpp:413)
69==20889== by 0x10D42B: boost::container::vec_iterator<unsigned long*, false> boost::container::vector<unsigned long, boost::container::new_allocator<unsigned long>, void>::priv_forward_range_insert_no_capacity<boost::container::dtl::insert_range_proxy<boost::container::new_allocator<unsigned long>, boost::container::vec_iterator<unsigned long*, false>, unsigned long*> >(unsigned long* const&, unsigned long, boost::container::dtl::insert_range_proxy<boost::container::new_allocator<unsigned long>, boost::container::vec_iterator<unsigned long*, false>, unsigned long*>, boost::move_detail::integral_constant<unsigned int, 1u>) (vector.hpp:2717)
70==20889== by 0x10AD09: boost::container::vec_iterator<unsigned long*, false> boost::container::vector<unsigned long, boost::container::new_allocator<unsigned long>, void>::priv_forward_range_insert<boost::container::dtl::insert_range_proxy<boost::container::new_allocator<unsigned long>, boost::container::vec_iterator<unsigned long*, false>, unsigned long*> >(unsigned long* const&, unsigned long, boost::container::dtl::insert_range_proxy<boost::container::new_allocator<unsigned long>, boost::container::vec_iterator<unsigned long*, false>, unsigned long*>) (vector.hpp:2783)
71==20889== by 0x109DED: boost::container::vec_iterator<unsigned long*, false> boost::container::vector<unsigned long, boost::container::new_allocator<unsigned long>, void>::insert<boost::container::vec_iterator<unsigned long*, false> >(boost::container::vec_iterator<unsigned long*, true>, boost::container::vec_iterator<unsigned long*, false>, boost::container::vec_iterator<unsigned long*, false>, boost::move_detail::disable_if_or<void, boost::move_detail::is_convertible<boost::container::vec_iterator<unsigned long*, false>, unsigned long>, boost::container::dtl::is_input_iterator<boost::container::vec_iterator<unsigned long*, false>, boost::container::dtl::has_iterator_category<boost::container::vec_iterator<unsigned long*, false> >::value>, boost::move_detail::bool_<false>, boost::move_detail::bool_<false> >::type*) (vector.hpp:1953)
72==20889== by 0x1095C6: void boost::container::dtl::flat_tree<unsigned long, boost::move_detail::identity<unsigned long>, std::less<unsigned long>, boost::container::new_allocator<unsigned long> >::insert_unique<boost::container::vec_iterator<unsigned long*, false> >(boost::container::vec_iterator<unsigned long*, false>, boost::container::vec_iterator<unsigned long*, false>) (flat_tree.hpp:876)
73==20889== by 0x10916F: insert<boost::container::vec_iterator<long unsigned int*, false> > (flat_set.hpp:695)
74==20889== by 0x10916F: main (test.cpp:20)
75==20889==
76==20889== Invalid read of size 8
77==20889== at 0x116216: bool boost::movelib::detail_adaptive::less::operator()<unsigned long>(unsigned long const&, unsigned long const&) (adaptive_sort_merge.hpp:721)
78==20889== by 0x113023: void boost::movelib::detail_adaptive::op_merge_blocks_with_buf<unsigned long*, boost::movelib::detail_adaptive::less, unsigned long*, boost::container::dtl::flat_tree_value_compare<std::less<unsigned long>, unsigned long, boost::move_detail::identity<unsigned long> >, boost::movelib::move_op, unsigned long*>(unsigned long*, boost::movelib::detail_adaptive::less, unsigned long*, boost::movelib::iterator_traits<unsigned long*>::size_type, boost::movelib::iterator_traits<unsigned long*>::size_type, boost::movelib::iterator_traits<unsigned long*>::size_type, boost::movelib::iterator_traits<unsigned long*>::size_type, boost::movelib::iterator_traits<unsigned long*>::size_type, boost::container::dtl::flat_tree_value_compare<std::less<unsigned long>, unsigned long, boost::move_detail::identity<unsigned long> >, boost::movelib::move_op, unsigned long*) (adaptive_sort_merge.hpp:1488)
79==20889== by 0x10FEDF: void boost::movelib::detail_adaptive::adaptive_merge_combine_blocks<unsigned long*, boost::container::dtl::flat_tree_value_compare<std::less<unsigned long>, unsigned long, boost::move_detail::identity<unsigned long> >, boost::movelib::detail_adaptive::adaptive_xbuf<unsigned long, unsigned long*> >(unsigned long*, boost::movelib::iterator_traits<unsigned long*>::size_type, boost::movelib::iterator_traits<unsigned long*>::size_type, boost::movelib::iterator_traits<unsigned long*>::size_type, boost::movelib::iterator_traits<unsigned long*>::size_type, boost::movelib::iterator_traits<unsigned long*>::size_type, bool, bool, boost::container::dtl::flat_tree_value_compare<std::less<unsigned long>, unsigned long, boost::move_detail::identity<unsigned long> >, boost::movelib::detail_adaptive::adaptive_xbuf<unsigned long, unsigned long*>&) (adaptive_merge.hpp:89)
80==20889== by 0x10E954: void boost::movelib::detail_adaptive::adaptive_merge_impl<unsigned long*, boost::container::dtl::flat_tree_value_compare<std::less<unsigned long>, unsigned long, boost::move_detail::identity<unsigned long> >, boost::movelib::detail_adaptive::adaptive_xbuf<unsigned long, unsigned long*> >(unsigned long*, boost::movelib::iterator_traits<unsigned long*>::size_type, boost::movelib::iterator_traits<unsigned long*>::size_type, boost::container::dtl::flat_tree_value_compare<std::less<unsigned long>, unsigned long, boost::move_detail::identity<unsigned long> >, boost::movelib::detail_adaptive::adaptive_xbuf<unsigned long, unsigned long*>&) (adaptive_merge.hpp:264)
81==20889== by 0x10D176: void boost::movelib::adaptive_merge<unsigned long*, boost::container::dtl::flat_tree_value_compare<std::less<unsigned long>, unsigned long, boost::move_detail::identity<unsigned long> > >(unsigned long*, unsigned long*, unsigned long*, boost::container::dtl::flat_tree_value_compare<std::less<unsigned long>, unsigned long, boost::move_detail::identity<unsigned long> >, boost::movelib::iterator_traits<unsigned long*>::value_type*, unsigned long) (adaptive_merge.hpp:312)
82==20889== by 0x10AB40: void boost::container::dtl::flat_tree_container_inplace_merge<boost::container::vector<unsigned long, boost::container::new_allocator<unsigned long>, void>, boost::container::dtl::flat_tree_value_compare<std::less<unsigned long>, unsigned long, boost::move_detail::identity<unsigned long> > >(boost::container::vector<unsigned long, boost::container::new_allocator<unsigned long>, void>&, boost::container::vector<unsigned long, boost::container::new_allocator<unsigned long>, void>::iterator, boost::container::dtl::flat_tree_value_compare<std::less<unsigned long>, unsigned long, boost::move_detail::identity<unsigned long> >, boost::move_detail::bool_<true>) (flat_tree.hpp:133)
83==20889== by 0x1097EE: void boost::container::dtl::flat_tree<unsigned long, boost::move_detail::identity<unsigned long>, std::less<unsigned long>, boost::container::new_allocator<unsigned long> >::insert_unique<boost::container::vec_iterator<unsigned long*, false> >(boost::container::vec_iterator<unsigned long*, false>, boost::container::vec_iterator<unsigned long*, false>) (flat_tree.hpp:887)
84==20889== by 0x10916F: insert<boost::container::vec_iterator<long unsigned int*, false> > (flat_set.hpp:695)
85==20889== by 0x10916F: main (test.cpp:20)
86==20889== Address 0x5b3d4a8 is 0 bytes after a block of size 280 alloc'd
87==20889== at 0x4C2D54F: operator new(unsigned long) (vg_replace_malloc.c:334)
88==20889== by 0x113D3A: boost::container::new_allocator<unsigned long>::allocate(unsigned long) (new_allocator.hpp:145)
89==20889== by 0x10D42B: allocate (allocator_traits.hpp:293)
90==20889== by 0x10D42B: allocate (vector.hpp:413)
91==20889== by 0x10D42B: boost::container::vec_iterator<unsigned long*, false> boost::container::vector<unsigned long, boost::container::new_allocator<unsigned long>, void>::priv_forward_range_insert_no_capacity<boost::container::dtl::insert_range_proxy<boost::container::new_allocator<unsigned long>, boost::container::vec_iterator<unsigned long*, false>, unsigned long*> >(unsigned long* const&, unsigned long, boost::container::dtl::insert_range_proxy<boost::container::new_allocator<unsigned long>, boost::container::vec_iterator<unsigned long*, false>, unsigned long*>, boost::move_detail::integral_constant<unsigned int, 1u>) (vector.hpp:2717)
92==20889== by 0x10AD09: boost::container::vec_iterator<unsigned long*, false> boost::container::vector<unsigned long, boost::container::new_allocator<unsigned long>, void>::priv_forward_range_insert<boost::container::dtl::insert_range_proxy<boost::container::new_allocator<unsigned long>, boost::container::vec_iterator<unsigned long*, false>, unsigned long*> >(unsigned long* const&, unsigned long, boost::container::dtl::insert_range_proxy<boost::container::new_allocator<unsigned long>, boost::container::vec_iterator<unsigned long*, false>, unsigned long*>) (vector.hpp:2783)
93==20889== by 0x109DED: boost::container::vec_iterator<unsigned long*, false> boost::container::vector<unsigned long, boost::container::new_allocator<unsigned long>, void>::insert<boost::container::vec_iterator<unsigned long*, false> >(boost::container::vec_iterator<unsigned long*, true>, boost::container::vec_iterator<unsigned long*, false>, boost::container::vec_iterator<unsigned long*, false>, boost::move_detail::disable_if_or<void, boost::move_detail::is_convertible<boost::container::vec_iterator<unsigned long*, false>, unsigned long>, boost::container::dtl::is_input_iterator<boost::container::vec_iterator<unsigned long*, false>, boost::container::dtl::has_iterator_category<boost::container::vec_iterator<unsigned long*, false> >::value>, boost::move_detail::bool_<false>, boost::move_detail::bool_<false> >::type*) (vector.hpp:1953)
94==20889== by 0x1095C6: void boost::container::dtl::flat_tree<unsigned long, boost::move_detail::identity<unsigned long>, std::less<unsigned long>, boost::container::new_allocator<unsigned long> >::insert_unique<boost::container::vec_iterator<unsigned long*, false> >(boost::container::vec_iterator<unsigned long*, false>, boost::container::vec_iterator<unsigned long*, false>) (flat_tree.hpp:876)
95==20889== by 0x10916F: insert<boost::container::vec_iterator<long unsigned int*, false> > (flat_set.hpp:695)
96==20889== by 0x10916F: main (test.cpp:20)
97==20889==
98==20889==
99==20889== HEAP SUMMARY:
100==20889== in use at exit: 0 bytes in 0 blocks
101==20889== total heap usage: 17 allocs, 17 frees, 73,784 bytes allocated
102==20889==
103==20889== All heap blocks were freed -- no leaks are possible
104==20889==
105==20889== For counts of detected and suppressed errors, rerun with: -v
106==20889== ERROR SUMMARY: 4 errors from 4 contexts (suppressed: 0 from 0)
107