Hello all.
Now that I've finally managed to get the sanitizers all working properly
(correctly linking against the sanitized runtimes) I'd like to present a
summary of its output (which I hope doesn't wrap).
I would like to point out that the sanitizers may not be able to
completely determine whether the code is correct or not, perhaps merely
that they do not understand it (inline asm, etc.), and it also looks
like some of the errors are in libc++, not Boost.
If the code is determined to be correct, I could add entries to the
blacklist to make sure the sanitizers ignore the output, but I would
prefer not to. Perhaps a better approach would be to mark up the code
so that all users of sanitizers benefit, rather than just the test matrix.
Suggestions on how to reduce this output (I hope to publish summaries on
a regular basis) in the best possible way are welcomed.
I've ordered the output by the number of test failures that result from
a particular complaint as determined by the command below:
cat bjam.log | grep SUMMARY | sort | uniq -c | sort -n -r
Count Warning
89 SUMMARY: ThreadSanitizer: data race
/home/ben/development/boost/test/build/boost_root/status/../boost/smart_ptr/detail/shared_count.hpp:449:49
in boost::detail::shared_count::shared_count(boost::detail::shared_count
const&)
70 SUMMARY: ThreadSanitizer: data race
/home/ben/development/boost/test/build/boost_root/status/../boost/smart_ptr/shared_ptr.hpp:392:63
in
boost::shared_ptr<boost::detail::thread_data_base>::shared_ptr(boost::shared_ptr<boost::detail::thread_data_base>
const&)
69 SUMMARY: ThreadSanitizer: data race
/home/ben/development/boost/test/build/boost_root/status/../boost/smart_ptr/detail/sp_counted_base_clang.hpp:31:5
in boost::detail::atomic_increment(int _Atomic*)
44 SUMMARY: ThreadSanitizer: data race
/home/ben/development/boost/test/build/boost_root/status/../boost/smart_ptr/shared_ptr.hpp:392:57
in
boost::shared_ptr<boost::detail::thread_data_base>::shared_ptr(boost::shared_ptr<boost::detail::thread_data_base>
const&)
44 SUMMARY: ThreadSanitizer: data race
/home/ben/development/boost/test/build/boost_root/status/../boost/smart_ptr/detail/shared_count.hpp:449:43
in boost::detail::shared_count::shared_count(boost::detail::shared_count
const&)
33 SUMMARY: ThreadSanitizer: data race on vptr (ctor/dtor vs
virtual call)
/home/ben/development/boost/test/build/boost_root/status/../libs/thread/src/pthread/thread.cpp:168:21
in boost::(anonymous namespace)::thread_proxy(void*)
22 SUMMARY: ThreadSanitizer: data race
(/home/ben/development/llvm/trunk/build/release/projects/compiler-rt/lib/tsan/libcxx_tsan/lib/libc++.so.1+0x43962)
in std::__1::basic_string<char, std::__1::char_traits<char>,
std::__1::allocator<char> >::assign(char const*, unsigned long)
21 SUMMARY: ThreadSanitizer: data race
(/home/ben/development/llvm/trunk/build/release/projects/compiler-rt/lib/tsan/libcxx_tsan/lib/libc++.so.1+0x43991)
in std::__1::basic_string<char, std::__1::char_traits<char>,
std::__1::allocator<char> >::assign(char const*, unsigned long)
21 SUMMARY: ThreadSanitizer: data race
/home/ben/development/boost/test/build/boost_root/status/../boost/test/utils/basic_cstring/basic_cstring.hpp:384:13
in boost::unit_test::basic_cstring<char
const>::operator=(boost::unit_test::basic_cstring<char const> const&)
21 SUMMARY: ThreadSanitizer: data race
/home/ben/development/boost/test/build/boost_root/status/../boost/test/utils/basic_cstring/basic_cstring.hpp:383:13
in boost::unit_test::basic_cstring<char
const>::operator=(boost::unit_test::basic_cstring<char const> const&)
21 SUMMARY: ThreadSanitizer: data race
/home/ben/development/boost/test/build/boost_root/status/../boost/test/impl/unit_test_log.ipp:118:41
in boost::unit_test::(anonymous
namespace)::unit_test_log_impl::set_checkpoint(boost::unit_test::basic_cstring<char
const>, unsigned long, boost::unit_test::basic_cstring<char const>)
18 SUMMARY: ThreadSanitizer: data race
/usr/local/bin/../include/c++/v1/ios:499:12 in
std::__1::ios_base::width() const
15 SUMMARY: MemorySanitizer: use-of-uninitialized-value
/home/ben/development/boost/test/build/boost_root/status/../boost/multiprecision/gmp.hpp:331:10
in
boost::multiprecision::backends::detail::gmp_float_imp<50u>::~gmp_float_imp()
12 SUMMARY: ThreadSanitizer: heap-use-after-free
/home/ben/development/boost/test/build/boost_root/status/../boost/chrono/time_point.hpp:196:20
in boost::chrono::time_point<boost::chrono::steady_clock,
boost::chrono::duration<long, boost::ratio<1l, 1000000000l> >
>::time_since_epoch() const
11 SUMMARY: ThreadSanitizer: data race
/home/ben/development/boost/test/build/boost_root/status/../boost/thread/detail/invoke.hpp:134:14
in
_ZN5boost6detail6invokeIPFvNS_7promiseIRiEEEJS4_EEEDTclclsr5boostE7forwardIT_Efp_Espclsr5boostE7forwardIT0_Efp0_EEEOS7_DpOS8_
11 SUMMARY: ThreadSanitizer: data race
/home/ben/development/boost/test/build/boost_root/status/../boost/smart_ptr/shared_ptr.hpp:392:63
in boost::shared_ptr<boost::detail::shared_state<int&>
>::shared_ptr(boost::shared_ptr<boost::detail::shared_state<int&> > const&)
10 SUMMARY: MemorySanitizer: use-of-uninitialized-value
/usr/local/bin/../include/c++/v1/string:640:63 in
std::__1::char_traits<char>::length(char const*)
10 SUMMARY: AddressSanitizer: 4 byte(s) leaked in 1 allocation(s).
8 SUMMARY: AddressSanitizer: 552 byte(s) leaked in 23 allocation(s).
7 SUMMARY: ThreadSanitizer: data race
/usr/local/bin/../include/c++/v1/ios:742:54 in std::__1::basic_ios<char,
std::__1::char_traits<char> >::fill() const
6 SUMMARY: ThreadSanitizer: data race
/usr/local/bin/../include/c++/v1/ios:437:12 in
std::__1::ios_base::flags() const
6 SUMMARY: ThreadSanitizer: data race
/home/ben/development/boost/test/build/boost_root/status/../boost/thread/detail/invoke.hpp:134:14
in
_ZN5boost6detail6invokeIPFvNS_7promiseIiEEEJS3_EEEDTclclsr5boostE7forwardIT_Efp_Espclsr5boostE7forwardIT0_Efp0_EEEOS6_DpOS7_
6 SUMMARY: ThreadSanitizer: data race
/home/ben/development/boost/test/build/boost_root/status/../boost/smart_ptr/shared_ptr.hpp:392:63
in boost::shared_ptr<boost::detail::shared_state<int>
>::shared_ptr(boost::shared_ptr<boost::detail::shared_state<int> > const&)
5 SUMMARY: ThreadSanitizer: data race
/usr/local/bin/../include/c++/v1/map:1006:47 in std::__1::map<void
const*, boost::detail::tss_data_node, std::__1::less<void const*>,
std::__1::allocator<std::__1::pair<void const* const,
boost::detail::tss_data_node> > >::empty() const
5 SUMMARY: ThreadSanitizer: data race
/usr/local/bin/../include/c++/v1/ios:506:22 in
std::__1::ios_base::width(long)
5 SUMMARY: ThreadSanitizer: data race
/home/ben/development/boost/test/build/boost_root/status/../libs/thread/src/pthread/thread.cpp:85:78
in boost::detail::(anonymous namespace)::tls_destructor(void*)
5 SUMMARY: MemorySanitizer: use-of-uninitialized-value
/home/ben/development/boost/test/build/boost_root/status/../libs/serialization/test/test_shared_ptr.cpp:123:5
in void save_and_load<boost::shared_ptr<A> >(boost::shared_ptr<A>&)
5 SUMMARY: MemorySanitizer: use-of-uninitialized-value
/home/ben/development/boost/test/build/boost_root/status/../libs/serialization/test/test_shared_ptr_132.cpp:117:5
in void save_and_load<boost_132::shared_ptr<A>
>(boost_132::shared_ptr<A> const&)
5 SUMMARY: MemorySanitizer: use-of-uninitialized-value
/home/ben/development/boost/test/build/boost_root/status/../libs/serialization/src/basic_iarchive.cpp:443:16
in
boost::archive::detail::basic_iarchive_impl::load_pointer(boost::archive::detail::basic_iarchive&,
void*&, boost::archive::detail::basic_pointer_iserializer const*,
boost::archive::detail::basic_pointer_iserializer const*
(*)(boost::serialization::extended_type_info const&))
5 SUMMARY: MemorySanitizer: use-of-uninitialized-value
/home/ben/development/boost/test/build/boost_root/status/../boost/numeric/odeint/stepper/bulirsch_stoer.hpp:202:13
in boost::numeric::odeint::controlled_step_result
boost::numeric::odeint::bulirsch_stoer<std::__1::vector<double,
std::__1::allocator<double> >, double, std::__1::vector<double,
std::__1::allocator<double> >, double,
boost::numeric::odeint::range_algebra,
boost::numeric::odeint::default_operations,
boost::numeric::odeint::initially_resizer>::try_step<void
(*)(std::__1::vector<double, std::__1::allocator<double> > const&,
std::__1::vector<double, std::__1::allocator<double> >&, double),
std::__1::vector<double, std::__1::allocator<double> >,
std::__1::vector<double, std::__1::allocator<double> >,
std::__1::vector<double, std::__1::allocator<double> > >(void
(*)(std::__1::vector<double, std::__1::allocator<double> > const&,
std::__1::vector<double, std::__1::allocator<double> >&, double),
std::__1::vector<double, std::__1::allocator<double> > co
5 SUMMARY: AddressSanitizer: heap-use-after-free
/home/ben/development/llvm/trunk/llvm/projects/compiler-rt/lib/asan/asan_interceptors.cc:403:3
in __asan_memcpy
5 SUMMARY: AddressSanitizer: 936 byte(s) leaked in 6 allocation(s).
5 SUMMARY: AddressSanitizer: 768 byte(s) leaked in 4 allocation(s).
5 SUMMARY: AddressSanitizer: 64 byte(s) leaked in 2 allocation(s).
5 SUMMARY: AddressSanitizer: 576 byte(s) leaked in 4 allocation(s).
5 SUMMARY: AddressSanitizer: 552 byte(s) leaked in 2 allocation(s).
5 SUMMARY: AddressSanitizer: 480 byte(s) leaked in 8 allocation(s).
5 SUMMARY: AddressSanitizer: 368 byte(s) leaked in 4 allocation(s).
5 SUMMARY: AddressSanitizer: 32 byte(s) leaked in 4 allocation(s).
5 SUMMARY: AddressSanitizer: 240 byte(s) leaked in 4 allocation(s).
5 SUMMARY: AddressSanitizer: 1 byte(s) leaked in 1 allocation(s).
4 SUMMARY: ThreadSanitizer: thread leak
/home/ben/development/boost/test/build/boost_root/status/../libs/thread/src/pthread/thread.cpp:250:25
in boost::thread::start_thread_noexcept()
4 SUMMARY: ThreadSanitizer: data race
/home/ben/development/boost/test/build/boost_root/status/../boost/thread/pthread/pthread_mutex_scoped_lock.hpp:24:23
in
boost::pthread::pthread_mutex_scoped_lock::pthread_mutex_scoped_lock(pthread_mutex_t*)
4 SUMMARY: ThreadSanitizer: data race
/home/ben/development/boost/test/build/boost_root/status/../boost/thread/pthread/pthread_mutex_scoped_lock.hpp:24:17
in
boost::pthread::pthread_mutex_scoped_lock::pthread_mutex_scoped_lock(pthread_mutex_t*)
4 SUMMARY: ThreadSanitizer: data race
/home/ben/development/boost/test/build/boost_root/status/../boost/thread/pthread/once_atomic.hpp:128:25
in void boost::call_once<void (&)()>(boost::once_flag&, void (&)())
4 SUMMARY: ThreadSanitizer: data race
/home/ben/development/boost/test/build/boost_root/status/../boost/thread/detail/thread.hpp:116:17
in boost::detail::thread_data<void (*)()>::run()
4 SUMMARY: ThreadSanitizer: data race
/home/ben/development/boost/test/build/boost_root/status/../boost/atomic/detail/atomic_template.hpp:134:22
in boost::atomics::detail::base_atomic<unsigned int,
int>::compare_exchange_strong(unsigned int&, unsigned int,
boost::memory_order, boost::memory_order) volatile
4 SUMMARY: MemorySanitizer: use-of-uninitialized-value
/home/ben/development/boost/test/build/boost_root/status/../libs/serialization/test/test_shared_ptr_multi_base.cpp:185:5
in void shared_weak<boost::shared_ptr<Sub>, boost::weak_ptr<Base3>
>(boost::shared_ptr<Sub>&, boost::weak_ptr<Base3>&)
4 SUMMARY: MemorySanitizer: use-of-uninitialized-value
/home/ben/development/boost/test/build/boost_root/status/../boost/type_index/stl_type_index.hpp:141:40
in boost::typeindex::stl_type_index::pretty_name() const
3 SUMMARY: ThreadSanitizer: data race
/home/ben/development/boost/test/build/boost_root/status/../boost/thread/detail/invoke.hpp:134:14
in
_ZN5boost6detail6invokeIPFvNS_7promiseIvEEEJS3_EEEDTclclsr5boostE7forwardIT_Efp_Espclsr5boostE7forwardIT0_Efp0_EEEOS6_DpOS7_
3 SUMMARY: MemorySanitizer: use-of-uninitialized-value
/usr/local/bin/../include/c++/v1/string:3767:13 in bool
std::__1::operator==<std::__1::allocator<char>
>(std::__1::basic_string<char, std::__1::char_traits<char>,
std::__1::allocator<char> > const&, std::__1::basic_string<char,
std::__1::char_traits<char>, std::__1::allocator<char> > const&)
3 SUMMARY: MemorySanitizer: use-of-uninitialized-value
/home/ben/development/boost/test/build/boost_root/status/../boost/spirit/home/qi/numeric/detail/real_impl.hpp:295:22
in bool boost::spirit::qi::detail::real_impl<double,
boost::spirit::qi::real_policies<double> >::parse<char const*,
double>(char const*&, char const* const&, double&,
boost::spirit::qi::real_policies<double> const&)
3 SUMMARY: MemorySanitizer: use-of-uninitialized-value
/build/buildd/glibc-2.21/misc/tsearch.c:356 in tdelete
2 SUMMARY: ThreadSanitizer: data race
(/home/ben/development/llvm/trunk/build/release/projects/compiler-rt/lib/tsan/libcxx_tsan/lib/libc++.so.1+0x381e2)
in std::__1::__shared_weak_count::__release_shared()
2 SUMMARY: ThreadSanitizer: data race
/home/ben/development/boost/test/build/boost_root/status/../libs/thread/test/threads/thread/members/try_join_until_pass.cpp:55:12
in G::operator()()
2 SUMMARY: ThreadSanitizer: data race
/home/ben/development/boost/test/build/boost_root/status/../libs/thread/test/threads/thread/members/try_join_until_pass.cpp:54:5
in G::operator()()
2 SUMMARY: ThreadSanitizer: data race
/home/ben/development/boost/test/build/boost_root/status/../libs/thread/test/threads/thread/members/detach_pass.cpp:70:5
in main
2 SUMMARY: ThreadSanitizer: data race
/home/ben/development/boost/test/build/boost_root/status/../libs/thread/test/threads/thread/members/detach_pass.cpp:69:5
in main
2 SUMMARY: ThreadSanitizer: data race
/home/ben/development/boost/test/build/boost_root/status/../libs/thread/test/threads/thread/constr/move_pass.cpp:58:55
in G::operator()(int, double)
2 SUMMARY: ThreadSanitizer: data race
/home/ben/development/boost/test/build/boost_root/status/../libs/asio/test/strand.cpp:91:3
in sleep_increment(boost::asio::io_service*, int*)
2 SUMMARY: ThreadSanitizer: data race
/home/ben/development/boost/test/build/boost_root/status/../boost/thread/future.hpp:3377:50
in boost::packaged_task<double (int,
char)>::packaged_task(boost::packaged_task<double (int, char)>&&)
2 SUMMARY: ThreadSanitizer: data race
/home/ben/development/boost/test/build/boost_root/status/../boost/thread/future.hpp:3377:11
in boost::packaged_task<double (int,
char)>::packaged_task(boost::packaged_task<double (int, char)>&&)
2 SUMMARY: ThreadSanitizer: data race
/home/ben/development/boost/test/build/boost_root/status/../boost/thread/detail/invoke.hpp:134:14
in
_ZN5boost6detail6invokeIPFvNS_13packaged_taskIFdicEEEEJS4_EEEDTclclsr5boostE7forwardIT_Efp_Espclsr5boostE7forwardIT0_Efp0_EEEOS7_DpOS8_
2 SUMMARY: ThreadSanitizer: data race
/home/ben/development/boost/test/build/boost_root/status/../boost/smart_ptr/shared_ptr.hpp:392:63
in boost::shared_ptr<boost::detail::shared_state<void>
>::shared_ptr(boost::shared_ptr<boost::detail::shared_state<void> > const&)
2 SUMMARY: ThreadSanitizer: data race
/home/ben/development/boost/test/build/boost_root/status/../boost/smart_ptr/shared_ptr.hpp:334:35
in boost::shared_ptr<boost::detail::task_base_shared_state<double (int,
char)> >::shared_ptr()
2 SUMMARY: ThreadSanitizer: data race
/home/ben/development/boost/test/build/boost_root/status/../boost/smart_ptr/detail/shared_count.hpp:114:21
in boost::detail::shared_count::shared_count()
2 SUMMARY: ThreadSanitizer: data race
/home/ben/development/boost/test/build/boost_root/status/../boost/log/utility/once_block.hpp:91:24
in boost::log::v2_mt_posix::aux::once_block_sentry::executed() const
2 SUMMARY: MemorySanitizer: use-of-uninitialized-value
/home/ben/development/boost/test/build/boost_root/status/../boost/multiprecision/gmp.hpp:159:10
in
boost::multiprecision::backends::detail::gmp_float_imp<50u>::operator=(long)
2 SUMMARY: MemorySanitizer: use-of-uninitialized-value
/home/ben/development/boost/test/build/boost_root/status/../boost/geometry/strategies/cartesian/point_in_box.hpp:36:34
in bool boost::geometry::strategy::within::within_range::apply<double,
double>(double const&, double const&, double const&)
2 SUMMARY: MemorySanitizer: use-of-uninitialized-value
/home/ben/development/boost/test/build/boost_root/status/../boost/container/vector.hpp:2774:7
in
boost::container::container_detail::vec_iterator<boost::container::stable_vector_detail::node_base<void*>**,
false>
boost::container::vector<boost::container::stable_vector_detail::node_base<void*>*,
boost::container::allocator<boost::container::stable_vector_detail::node_base<void*>*,
2u, 0u>
>::priv_forward_range_insert<boost::container::container_detail::insert_value_initialized_n_proxy<boost::container::allocator<boost::container::stable_vector_detail::node_base<void*>*, 2u, 0u>, boost::container::stable_vector_detail::node_base<void*>**> >(boost::container::stable_vector_detail::node_base<void*>** const&, unsigned long, boost::container::container_detail::insert_value_initialized_n_proxy<boost::container::allocator<boost::container::stable_vector_detail::node_base<void*>*, 2u, 0u>, boost::container::stable_vector_detail::node_base<void*>**>)
2 SUMMARY: MemorySanitizer: use-of-uninitialized-value
/home/ben/development/boost/test/build/boost_root/status/../boost/container/vector.hpp:2604:11
in void boost::container::vector<MyInt,
boost::container::allocator<MyInt, 2u, 6u> >::priv_push_back<MyInt>(MyInt&&)
2 SUMMARY: MemorySanitizer: use-of-uninitialized-value
/build/buildd/glibc-2.21/misc/tsearch.c:320 in tfind
2 SUMMARY: AddressSanitizer: stack-buffer-overflow
/home/ben/development/boost/test/build/boost_root/status/../libs/spirit/classic/test/traverse_tests.cpp:379:44
in void
post_order_trace_test<boost::spirit::classic::sequence<boost::spirit::classic::chlit<char>,
boost::spirit::classic::chlit<char> >
>(boost::spirit::classic::sequence<boost::spirit::classic::chlit<char>,
boost::spirit::classic::chlit<char> > const&, char const**, unsigned long)
2 SUMMARY: AddressSanitizer: stack-buffer-overflow
/home/ben/development/boost/test/build/boost_root/status/../libs/local_function/test/return_derivative_seq.cpp:17:9
in derivative(boost::function<int (int)>&,
int)::boost_local_function_auxXfunctorX17X::operator()(int)
2 SUMMARY: AddressSanitizer: 576 byte(s) leaked in 12 allocation(s).
2 SUMMARY: AddressSanitizer: 288 byte(s) leaked in 6 allocation(s).
2 SUMMARY: AddressSanitizer: 16 byte(s) leaked in 1 allocation(s).
2 SUMMARY: AddressSanitizer: 14496 byte(s) leaked in 404
allocation(s).
2 SUMMARY: AddressSanitizer: 120 byte(s) leaked in 5 allocation(s).
1 SUMMARY: ThreadSanitizer: data race
/usr/local/bin/../include/c++/v1/ios:488:22 in
std::__1::ios_base::precision(long)
1 SUMMARY: ThreadSanitizer: data race
/usr/local/bin/../include/c++/v1/ios:444:20 in
std::__1::ios_base::flags(unsigned int)
1 SUMMARY: ThreadSanitizer: data race
/home/ben/development/boost/test/build/boost_root/status/../libs/thread/test/./util.inl:106:16
in (anonymous namespace)::execution_monitor::wait()
1 SUMMARY: ThreadSanitizer: data race
/home/ben/development/boost/test/build/boost_root/status/../libs/thread/test/threads/thread/members/try_join_for_pass.cpp:55:12
in G::operator()()
1 SUMMARY: ThreadSanitizer: data race
/home/ben/development/boost/test/build/boost_root/status/../libs/thread/test/threads/thread/members/try_join_for_pass.cpp:54:5
in G::operator()()
1 SUMMARY: ThreadSanitizer: data race
/home/ben/development/boost/test/build/boost_root/status/../libs/thread/test/threads/thread/members/join_pass.cpp:56:12
in G::operator()()
1 SUMMARY: ThreadSanitizer: data race
/home/ben/development/boost/test/build/boost_root/status/../libs/thread/test/threads/thread/members/join_pass.cpp:39:5
in G::G()
1 SUMMARY: ThreadSanitizer: data race
/home/ben/development/boost/test/build/boost_root/status/../libs/spirit/classic/test/owi_mt_tests.cpp:93:23
in test_task<boost::spirit::classic::impl::object_with_id<tag1, unsigned
long> >::increase_test_size(unsigned long)
1 SUMMARY: ThreadSanitizer: data race
/home/ben/development/boost/test/build/boost_root/status/../libs/log/test/run/util_once_block.cpp:64:25
in once_block_flag_thread(boost::barrier&)
1 SUMMARY: ThreadSanitizer: data race
/home/ben/development/boost/test/build/boost_root/status/../libs/log/test/run/util_once_block.cpp:112:25
in once_block_thread(boost::barrier&)
1 SUMMARY: ThreadSanitizer: data race
/home/ben/development/boost/test/build/boost_root/status/../libs/interprocess/test/condition_test_template.hpp:83:17
in void
boost::interprocess::test::condition_test_thread<boost::interprocess::interprocess_condition_any,
boost::interprocess::ipcdetail::spin_mutex>(boost::interprocess::test::condition_test_data<boost::interprocess::interprocess_condition_any,
boost::interprocess::ipcdetail::spin_mutex>*)
1 SUMMARY: ThreadSanitizer: data race
/home/ben/development/boost/test/build/boost_root/status/../libs/interprocess/test/condition_test_template.hpp:321:15
in void
boost::interprocess::test::do_test_condition_queue_notify_one<boost::interprocess::interprocess_condition_any,
boost::interprocess::ipcdetail::spin_mutex>()
1 SUMMARY: ThreadSanitizer: data race
/home/ben/development/boost/test/build/boost_root/status/../libs/interprocess/test/condition_test_template.hpp:282:10
in
boost::interprocess::test::condition_func<boost::interprocess::interprocess_condition_any,
boost::interprocess::ipcdetail::spin_mutex>::operator()()
1 SUMMARY: ThreadSanitizer: data race
/home/ben/development/boost/test/build/boost_root/status/../libs/interprocess/test/condition_test_template.hpp:277:10
in
boost::interprocess::test::condition_func<boost::interprocess::interprocess_condition_any,
boost::interprocess::ipcdetail::spin_mutex>::operator()()
1 SUMMARY: ThreadSanitizer: data race
/home/ben/development/boost/test/build/boost_root/status/../libs/atomic/test/ordering.cpp:200:40
in total_store_order_test<(boost::memory_order)0,
(boost::memory_order)0>::thread2fn()
1 SUMMARY: ThreadSanitizer: data race
/home/ben/development/boost/test/build/boost_root/status/../libs/atomic/test/atomicity.cpp:131:28
in racy_add(unsigned int volatile&, unsigned long)
1 SUMMARY: ThreadSanitizer: data race
/home/ben/development/boost/test/build/boost_root/status/../boost/thread/pthread/mutex.hpp:62:17
in boost::posix::pthread_mutex_lock(pthread_mutex_t*)
1 SUMMARY: ThreadSanitizer: data race
/home/ben/development/boost/test/build/boost_root/status/../boost/thread/future.hpp:2481:88
in boost::promise<void>::promise(boost::promise<void>&&)
1 SUMMARY: ThreadSanitizer: data race
/home/ben/development/boost/test/build/boost_root/status/../boost/thread/detail/invoke.hpp:134:14
in
_ZN5boost6detail6invokeIPFvvEJEEEDTclclsr5boostE7forwardIT_Efp_Espclsr5boostE7forwardIT0_Efp0_EEEOS4_DpOS5_
1 SUMMARY: ThreadSanitizer: data race
/home/ben/development/boost/test/build/boost_root/status/../boost/smart_ptr/shared_ptr.hpp:663:16
in boost::shared_ptr<boost::detail::shared_state<void> >::get() const
1 SUMMARY: MemorySanitizer: use-of-uninitialized-value
/usr/local/bin/../include/c++/v1/bitset:757:46 in
std::__1::bitset<8ul>::bitset<char, std::__1::char_traits<char>,
std::__1::allocator<char> >(std::__1::basic_string<char,
std::__1::char_traits<char>, std::__1::allocator<char> > const&,
std::__1::basic_string<char, std::__1::char_traits<char>,
std::__1::allocator<char> >::size_type, std::__1::basic_string<char,
std::__1::char_traits<char>, std::__1::allocator<char> >::size_type,
char, char)
1 SUMMARY: MemorySanitizer: use-of-uninitialized-value
/usr/local/bin/../include/c++/v1/algorithm:1193:13 in bool
std::__1::equal<boost::archive::iterators::mb_from_wchar<wchar_t
const*>, char const*, std::__1::__equal_to<wchar_t, char>
>(boost::archive::iterators::mb_from_wchar<wchar_t const*>,
boost::archive::iterators::mb_from_wchar<wchar_t const*>, char const*,
std::__1::__equal_to<wchar_t, char>)
1 SUMMARY: MemorySanitizer: use-of-uninitialized-value
(/home/ben/development/boost/test/build/results/boost/bin.v2/libs/multiprecision/test/test_rational_io_mpz.test/clang-linux-3.7~msan~c14_libc++/release/test_rational_io_mpz+0x76708)
in
boost::multiprecision::number<boost::multiprecision::backends::gmp_rational,
(boost::multiprecision::expression_template_option)1>
generate_random<boost::multiprecision::number<boost::multiprecision::backends::gmp_rational,
(boost::multiprecision::expression_template_option)1> >()
1 SUMMARY: MemorySanitizer: use-of-uninitialized-value
(/home/ben/development/boost/test/build/results/boost/bin.v2/libs/multiprecision/test/test_miller_rabin.test/clang-linux-3.7~msan~c14_libc++/release/test_miller_rabin+0x75bbf)
in void
test<boost::multiprecision::number<boost::multiprecision::backends::gmp_int,
(boost::multiprecision::expression_template_option)1> >()
1 SUMMARY: MemorySanitizer: use-of-uninitialized-value
(/home/ben/development/boost/test/build/results/boost/bin.v2/libs/multiprecision/test/test_int_io_mpz.test/clang-linux-3.7~msan~c14_libc++/release/test_int_io_mpz+0x7ca20)
in
boost::multiprecision::number<boost::multiprecision::backends::gmp_int,
(boost::multiprecision::expression_template_option)1>
generate_random<boost::multiprecision::number<boost::multiprecision::backends::gmp_int,
(boost::multiprecision::expression_template_option)1> >()
1 SUMMARY: MemorySanitizer: use-of-uninitialized-value
(/home/ben/development/boost/test/build/results/boost/bin.v2/libs/multiprecision/test/test_generic_conv.test/clang-linux-3.7~msan~c14_libc++/release/test_generic_conv+0x99138)
in void
boost::multiprecision::detail::generic_interconvert<boost::multiprecision::backends::gmp_int,
boost::multiprecision::backends::cpp_int_backend<0u, 0u,
(boost::multiprecision::cpp_integer_type)1,
(boost::multiprecision::cpp_int_check_type)0,
std::__1::allocator<unsigned long long> >
>(boost::multiprecision::backends::gmp_int&,
boost::multiprecision::backends::cpp_int_backend<0u, 0u,
(boost::multiprecision::cpp_integer_type)1,
(boost::multiprecision::cpp_int_check_type)0,
std::__1::allocator<unsigned long long> > const&, mpl_::int_<0> const&,
mpl_::int_<0> const&)
1 SUMMARY: MemorySanitizer: use-of-uninitialized-value
(/home/ben/development/boost/test/build/results/boost/bin.v2/libs/multiprecision/test/test_float_io_mpf.test/clang-linux-3.7~msan~c14_libc++/release/test_float_io_mpf+0x916e9)
in void
test<boost::multiprecision::number<boost::multiprecision::backends::gmp_float<50u>,
(boost::multiprecision::expression_template_option)1> >()
1 SUMMARY: MemorySanitizer: use-of-uninitialized-value
(/home/ben/development/boost/test/build/results/boost/bin.v2/libs/multiprecision/test/test_cpp_int_3.test/clang-linux-3.7~msan~c14_libc++/release/test_cpp_int_3+0x89656)
in
boost::multiprecision::number<boost::multiprecision::backends::gmp_int,
(boost::multiprecision::expression_template_option)1>
generate_random<boost::multiprecision::number<boost::multiprecision::backends::gmp_int,
(boost::multiprecision::expression_template_option)1> >(unsigned int)
1 SUMMARY: MemorySanitizer: use-of-uninitialized-value
(/home/ben/development/boost/test/build/results/boost/bin.v2/libs/multiprecision/test/test_cpp_int_2.test/clang-linux-3.7~msan~c14_libc++/release/test_cpp_int_2+0x89246)
in
boost::multiprecision::number<boost::multiprecision::backends::gmp_int,
(boost::multiprecision::expression_template_option)1>
generate_random<boost::multiprecision::number<boost::multiprecision::backends::gmp_int,
(boost::multiprecision::expression_template_option)1> >(unsigned int)
1 SUMMARY: MemorySanitizer: use-of-uninitialized-value
(/home/ben/development/boost/test/build/results/boost/bin.v2/libs/multiprecision/test/test_cpp_int_1.test/clang-linux-3.7~msan~c14_libc++/release/test_cpp_int_1+0x95d16)
in
boost::multiprecision::number<boost::multiprecision::backends::gmp_int,
(boost::multiprecision::expression_template_option)1>
generate_random<boost::multiprecision::number<boost::multiprecision::backends::gmp_int,
(boost::multiprecision::expression_template_option)1> >(unsigned int)
1 SUMMARY: MemorySanitizer: use-of-uninitialized-value
/home/ben/development/boost/test/build/boost_root/status/../libs/serialization/src/basic_xml_grammar.ipp:200:5
in
boost::archive::basic_xml_grammar<char>::my_parse(std::__1::basic_istream<char,
std::__1::char_traits<char> >&,
boost::spirit::classic::rule<boost::spirit::classic::scanner<std::__1::__wrap_iter<char*>,
boost::spirit::classic::scanner_policies<boost::spirit::classic::iteration_policy,
boost::spirit::classic::match_policy,
boost::spirit::classic::action_policy> >, boost::spirit::classic::nil_t,
boost::spirit::classic::nil_t> const&, char) const
1 SUMMARY: MemorySanitizer: use-of-uninitialized-value
/home/ben/development/boost/test/build/boost_root/status/../libs/graph/test/typestr.hpp:33:29
in std::__1::basic_string<char, std::__1::char_traits<char>,
std::__1::allocator<char> >
typestr<boost::undirected_graph<VertexBundle, EdgeBundle, GraphBundle> >()
1 SUMMARY: MemorySanitizer: use-of-uninitialized-value
/home/ben/development/boost/test/build/boost_root/status/../libs/container/test/alloc_full_test.cpp:126:10
in boost::container::test::test_allocation_shrink()
1 SUMMARY: MemorySanitizer: use-of-uninitialized-value
/home/ben/development/boost/test/build/boost_root/status/../libs/container/test/alloc_basic_test.cpp:24:7
in basic_test()
1 SUMMARY: MemorySanitizer: use-of-uninitialized-value
/home/ben/development/boost/test/build/boost_root/status/../libs/container/bench/bench_alloc.cpp:63:13
in void allocation_timing_test<char_holder<8u> >(unsigned int, unsigned int)
1 SUMMARY: MemorySanitizer: use-of-uninitialized-value
/home/ben/development/boost/test/build/boost_root/status/../libs/config/test/limits_test.cpp:97:8
in void print_hex_val<long double>(long double, char const*)
1 SUMMARY: MemorySanitizer: use-of-uninitialized-value
/home/ben/development/boost/test/build/boost_root/status/../boost/test/impl/test_tools.ipp:298:9
in
boost::test_tools::tt_detail::report_assertion(boost::test_tools::assertion_result
const&, boost::unit_test::lazy_ostream const&,
boost::unit_test::basic_cstring<char const>, unsigned long,
boost::test_tools::tt_detail::tool_level,
boost::test_tools::tt_detail::check_type, unsigned long, ...)
1 SUMMARY: MemorySanitizer: use-of-uninitialized-value
/home/ben/development/boost/test/build/boost_root/status/../boost/spirit/home/qi/numeric/detail/real_impl.hpp:295:22
in bool boost::spirit::qi::detail::real_impl<double,
boost::spirit::qi::ureal_policies<double> >::parse<char const*,
double>(char const*&, char const* const&, double&,
boost::spirit::qi::ureal_policies<double> const&)
1 SUMMARY: MemorySanitizer: use-of-uninitialized-value
/home/ben/development/boost/test/build/boost_root/status/../boost/spirit/home/qi/numeric/detail/real_impl.hpp:295:22
in bool boost::spirit::qi::detail::real_impl<double,
boost::spirit::qi::strict_real_policies<double> >::parse<char const*,
double>(char const*&, char const* const&, double&,
boost::spirit::qi::strict_real_policies<double> const&)
1 SUMMARY: MemorySanitizer: use-of-uninitialized-value
/home/ben/development/boost/test/build/boost_root/status/../boost/spirit/home/qi/numeric/detail/real_impl.hpp:295:22
in bool boost::spirit::qi::detail::real_impl<double,
boost::spirit::qi::real_policies<double>
>::parse<std::__1::__wrap_iter<char*>,
double>(std::__1::__wrap_iter<char*>&, std::__1::__wrap_iter<char*>
const&, double&, boost::spirit::qi::real_policies<double> const&)
1 SUMMARY: MemorySanitizer: use-of-uninitialized-value
/home/ben/development/boost/test/build/boost_root/status/../boost/numeric/odeint/stepper/bulirsch_stoer.hpp:202:13
in boost::numeric::odeint::controlled_step_result
boost::numeric::odeint::bulirsch_stoer<boost::array<double, 3ul>,
double, boost::array<double, 3ul>, double,
boost::numeric::odeint::array_algebra,
boost::numeric::odeint::default_operations,
boost::numeric::odeint::initially_resizer>::try_step<lorenz,
boost::array<double, 3ul>, boost::array<double, 3ul>,
boost::array<double, 3ul> >(lorenz, boost::array<double, 3ul> const&,
boost::array<double, 3ul> const&, double&, boost::array<double, 3ul>&,
double&)
1 SUMMARY: MemorySanitizer: use-of-uninitialized-value
/home/ben/development/boost/test/build/boost_root/status/../boost/numeric/odeint/iterator/impl/adaptive_iterator_impl.hpp:105:17
in
boost::numeric::odeint::adaptive_iterator_impl<boost::numeric::odeint::adaptive_iterator<boost::numeric::odeint::dummy_controlled_stepper,
empty_system, boost::array<double, 1ul>,
boost::numeric::odeint::controlled_stepper_tag>,
boost::numeric::odeint::dummy_controlled_stepper, empty_system,
boost::array<double, 1ul>,
boost::numeric::odeint::detail::ode_state_iterator_tag,
boost::numeric::odeint::controlled_stepper_tag>::increment()
1 SUMMARY: MemorySanitizer: use-of-uninitialized-value
/home/ben/development/boost/test/build/boost_root/status/../boost/multiprecision/gmp.hpp:368:7
in boost::multiprecision::backends::detail::gmp_float_imp<0u>::data() const
1 SUMMARY: MemorySanitizer: use-of-uninitialized-value
/home/ben/development/boost/test/build/boost_root/status/../boost/multiprecision/gmp.hpp:331:10
in
boost::multiprecision::backends::detail::gmp_float_imp<25u>::~gmp_float_imp()
1 SUMMARY: MemorySanitizer: use-of-uninitialized-value
/home/ben/development/boost/test/build/boost_root/status/../boost/multiprecision/gmp.hpp:331:10
in
boost::multiprecision::backends::detail::gmp_float_imp<100u>::~gmp_float_imp()
1 SUMMARY: MemorySanitizer: use-of-uninitialized-value
/home/ben/development/boost/test/build/boost_root/status/../boost/multiprecision/gmp.hpp:234:7
in boost::multiprecision::backends::detail::gmp_float_imp<0u>::str(long,
unsigned int) const
1 SUMMARY: MemorySanitizer: use-of-uninitialized-value
/home/ben/development/boost/test/build/boost_root/status/../boost/multiprecision/gmp.hpp:1932:7
in boost::multiprecision::backends::gmp_rational::str(long, unsigned
int) const
1 SUMMARY: MemorySanitizer: use-of-uninitialized-value
/home/ben/development/boost/test/build/boost_root/status/../boost/multiprecision/gmp.hpp:1827:10
in boost::multiprecision::backends::gmp_rational::operator=(unsigned long)
1 SUMMARY: MemorySanitizer: use-of-uninitialized-value
/home/ben/development/boost/test/build/boost_root/status/../boost/multiprecision/gmp.hpp:152:10
in
boost::multiprecision::backends::detail::gmp_float_imp<50u>::operator=(unsigned
long)
1 SUMMARY: MemorySanitizer: use-of-uninitialized-value
/home/ben/development/boost/test/build/boost_root/status/../boost/multiprecision/gmp.hpp:152:10
in
boost::multiprecision::backends::detail::gmp_float_imp<2000u>::operator=(unsigned
long)
1 SUMMARY: MemorySanitizer: use-of-uninitialized-value
/home/ben/development/boost/test/build/boost_root/status/../boost/multiprecision/gmp.hpp:152:10
in
boost::multiprecision::backends::detail::gmp_float_imp<0u>::operator=(unsigned
long)
1 SUMMARY: MemorySanitizer: use-of-uninitialized-value
/home/ben/development/boost/test/build/boost_root/status/../boost/multiprecision/gmp.hpp:1226:7
in boost::multiprecision::backends::gmp_int::str(long, unsigned int) const
1 SUMMARY: MemorySanitizer: use-of-uninitialized-value
/home/ben/development/boost/test/build/boost_root/status/../boost/multiprecision/gmp.hpp:1100:10
in boost::multiprecision::backends::gmp_int::operator=(long)
1 SUMMARY: MemorySanitizer: use-of-uninitialized-value
/home/ben/development/boost/test/build/boost_root/status/../boost/multiprecision/gmp.hpp:1093:10
in boost::multiprecision::backends::gmp_int::operator=(unsigned long)
1 SUMMARY: MemorySanitizer: use-of-uninitialized-value
/home/ben/development/boost/test/build/boost_root/status/../boost/graph/boykov_kolmogorov_max_flow.hpp:471:22
in boost::detail::bk_max_flow<boost::adjacency_list<boost::vecS,
boost::vecS, boost::directedS,
Node<boost::detail::edge_desc_impl<boost::directed_tag, unsigned long>
>, Link<boost::detail::edge_desc_impl<boost::directed_tag, unsigned
long> >, boost::no_property, boost::listS>,
boost::adj_list_edge_property_map<boost::directed_tag, long, long&,
unsigned long, Link<boost::detail::edge_desc_impl<boost::directed_tag,
unsigned long> >, long
Link<boost::detail::edge_desc_impl<boost::directed_tag, unsigned long>
>::*>, boost::adj_list_edge_property_map<boost::directed_tag, long,
long&, unsigned long,
Link<boost::detail::edge_desc_impl<boost::directed_tag, unsigned long>
>, long Link<boost::detail::edge_desc_impl<boost::directed_tag,
unsigned long> >::*>,
boost::adj_list_edge_property_map<boost::directed_tag,
boost::detail::edge_desc_impl<boost::directed_
1 SUMMARY: MemorySanitizer: use-of-uninitialized-value
/home/ben/development/boost/test/build/boost_root/status/../boost/gil/color_base_algorithm.hpp:237:60
in bool
boost::gil::detail::element_recursion<2>::static_equal<boost::gil::bit_aligned_pixel_reference<unsigned
char, boost::mpl::vector3_c<int, 1, 2, 1>,
boost::gil::layout<boost::mpl::vector3<boost::gil::red_t,
boost::gil::green_t, boost::gil::blue_t>, boost::mpl::vector3_c<int, 2,
1, 0> >, true>, boost::gil::bit_aligned_pixel_reference<unsigned char,
boost::mpl::vector3_c<int, 1, 2, 1>,
boost::gil::layout<boost::mpl::vector3<boost::gil::red_t,
boost::gil::green_t, boost::gil::blue_t>, boost::mpl::range_c<int, 0, 3>
>, true> >(boost::gil::bit_aligned_pixel_reference<unsigned char,
boost::mpl::vector3_c<int, 1, 2, 1>,
boost::gil::layout<boost::mpl::vector3<boost::gil::red_t,
boost::gil::green_t, boost::gil::blue_t>, boost::mpl::vector3_c<int, 2,
1, 0> >, true> const&, boost::gil::bit_aligned_pixel_reference<unsigned
char, boost::mpl::vector3_c<int, 1, 2,
1 SUMMARY: MemorySanitizer: use-of-uninitialized-value
/home/ben/development/boost/test/build/boost_root/status/../boost/context/execution_context.hpp:115:17
in boost::context::execution_context::activation_record::resume(bool)
1 SUMMARY: MemorySanitizer: use-of-uninitialized-value
/home/ben/development/boost/test/build/boost_root/status/../boost/container/vector.hpp:457:10
in
boost::container::container_detail::vector_alloc_holder<boost::container::allocator<int,
2u, 0u>, boost::move_detail::integral_constant<unsigned int, 2u>
>::~vector_alloc_holder()
1 SUMMARY: MemorySanitizer: use-of-uninitialized-value
/home/ben/development/boost/test/build/boost_root/status/../boost/container/vector.hpp:2774:7
in boost::container::container_detail::vec_iterator<int*, false>
boost::container::vector<int, boost::container::allocator<int, 2u, 0u>
>::priv_forward_range_insert<boost::container::container_detail::insert_move_proxy<boost::container::allocator<int, 2u, 0u>, int*> >(int* const&, unsigned long, boost::container::container_detail::insert_move_proxy<boost::container::allocator<int, 2u, 0u>, int*>)
1 SUMMARY: MemorySanitizer: use-of-uninitialized-value
/home/ben/development/boost/test/build/boost_root/status/../boost/container/vector.hpp:2774:7
in
boost::container::container_detail::vec_iterator<boost::container::container_detail::pair<int,
int>*, false>
boost::container::vector<boost::container::container_detail::pair<int,
int>,
boost::container::allocator<boost::container::container_detail::pair<int, int>,
2u, 0u>
>::priv_forward_range_insert<boost::container::container_detail::insert_move_proxy<boost::container::allocator<boost::container::container_detail::pair<int, int>, 2u, 0u>, boost::container::container_detail::pair<int, int>*> >(boost::container::container_detail::pair<int, int>* const&, unsigned long, boost::container::container_detail::insert_move_proxy<boost::container::allocator<boost::container::container_detail::pair<int, int>, 2u, 0u>, boost::container::container_detail::pair<int, int>*>)
1 SUMMARY: MemorySanitizer: use-of-uninitialized-value
/home/ben/development/boost/test/build/boost_root/status/../boost/container/vector.hpp:2675:10
in boost::container::vector<MyInt, boost::container::allocator<MyInt,
2u, 0u>
>::priv_shrink_to_fit(boost::move_detail::integral_constant<unsigned
int, 2u>)
1 SUMMARY: MemorySanitizer: use-of-uninitialized-value
/home/ben/development/boost/test/build/boost_root/status/../boost/container/vector.hpp:2604:11
in void boost::container::vector<int, boost::container::allocator<int,
2u, 0u> >::priv_push_back<int>(int&&)
1 SUMMARY: AddressSanitizer: stack-buffer-overflow
/home/ben/development/boost/test/build/boost_root/status/../libs/local_function/test/return_derivative.cpp:22:9
in derivative(boost::function<int (int)>&,
int)::boost_local_function_auxXfunctorX22X::operator()(int)
1 SUMMARY: AddressSanitizer: stack-buffer-overflow
/home/ben/development/boost/test/build/boost_root/status/../boost/intrusive/detail/size_holder.hpp:35:14
in boost::intrusive::detail::size_holder<true, unsigned long,
void>::get_size() const
1 SUMMARY: AddressSanitizer: global-buffer-overflow
/home/ben/development/boost/test/build/boost_root/status/../boost/numeric/odeint/iterator/impl/times_iterator_impl.hpp:86:42
in
boost::numeric::odeint::times_iterator_impl<boost::numeric::odeint::times_time_iterator<boost::numeric::odeint::dummy_stepper,
empty_system, boost::array<double, 1ul>, double*,
boost::numeric::odeint::stepper_tag>,
boost::numeric::odeint::dummy_stepper, empty_system,
boost::array<double, 1ul>, double*,
boost::numeric::odeint::detail::ode_state_time_iterator_tag,
boost::numeric::odeint::stepper_tag>::times_iterator_impl(boost::numeric::odeint::dummy_stepper,
empty_system, boost::array<double, 1ul>&, double*, double*, double)
1 SUMMARY: AddressSanitizer: global-buffer-overflow
/home/ben/development/boost/test/build/boost_root/status/../boost/numeric/odeint/iterator/impl/times_iterator_impl.hpp:86:42
in
boost::numeric::odeint::times_iterator_impl<boost::numeric::odeint::times_iterator<boost::numeric::odeint::dummy_stepper,
empty_system, boost::array<double, 1ul>, double*,
boost::numeric::odeint::stepper_tag>,
boost::numeric::odeint::dummy_stepper, empty_system,
boost::array<double, 1ul>, double*,
boost::numeric::odeint::detail::ode_state_iterator_tag,
boost::numeric::odeint::stepper_tag>::times_iterator_impl(boost::numeric::odeint::dummy_stepper,
empty_system, boost::array<double, 1ul>&, double*, double*, double)
1 SUMMARY: AddressSanitizer: container-overflow
/usr/local/bin/../include/c++/v1/string:1664:39 in
std::__1::basic_string<char, std::__1::char_traits<char>,
std::__1::allocator<char> >::__is_long() const
1 SUMMARY: AddressSanitizer: container-overflow
/home/ben/development/llvm/trunk/llvm/projects/compiler-rt/lib/asan/../sanitizer_common/sanitizer_common_interceptors.inc:188:3
in __interceptor_strcmp
1 SUMMARY: AddressSanitizer: 96 byte(s) leaked in 6 allocation(s).
1 SUMMARY: AddressSanitizer: 8 byte(s) leaked in 1 allocation(s).
1 SUMMARY: AddressSanitizer: 816 byte(s) leaked in 1 allocation(s).
1 SUMMARY: AddressSanitizer: 797943 byte(s) leaked in 357
allocation(s).
1 SUMMARY: AddressSanitizer: 796079 byte(s) leaked in 351
allocation(s).
1 SUMMARY: AddressSanitizer: 72000000 byte(s) leaked in 3000000
allocation(s).
1 SUMMARY: AddressSanitizer: 65536 byte(s) leaked in 1 allocation(s).
1 SUMMARY: AddressSanitizer: 56 byte(s) leaked in 4 allocation(s).
1 SUMMARY: AddressSanitizer: 324 byte(s) leaked in 3 allocation(s).
1 SUMMARY: AddressSanitizer: 24 byte(s) leaked in 2 allocation(s).
1 SUMMARY: AddressSanitizer: 20 byte(s) leaked in 2 allocation(s).
1 SUMMARY: AddressSanitizer: 1984 byte(s) leaked in 11 allocation(s).
1 SUMMARY: AddressSanitizer: 171 byte(s) leaked in 9 allocation(s).
1 SUMMARY: AddressSanitizer: 14256 byte(s) leaked in 99
allocation(s).
1 SUMMARY: AddressSanitizer: 12345 byte(s) leaked in 1 allocation(s).
1 SUMMARY: AddressSanitizer: 114688 byte(s) leaked in 7
allocation(s).
1 SUMMARY: AddressSanitizer: 104 byte(s) leaked in 2 allocation(s).
I'm happy to expand on any line that is less than useful.
For the sake of sanity, I think I will also add this to the command line
-Wno-unused-local-typedef, as the log contains 462603 matches, often
times the warnings push more interesting things off beyond the 64Kb limit.
Ben