librascal
librascal copied to clipboard
Memory errors related to exceptions with macOS/clang
In contrast with #205 and #137 which also happen with gcc on linux, these errors only occurs on macOS/clang, and all seems to be related to exceptions.
They might not really be errors, since I am running valgrind on macOS Mojave, where is it not officially supported.
test_atomic_structure
:
==47340== 16 bytes in 1 blocks are still reachable in loss record 4 of 60
==47340== at 0x100106130: calloc (in /usr/local/Cellar/valgrind/HEAD-60ab74a/lib/valgrind/vgpreload_memcheck-amd64-darwin.so)
==47340== by 0x10030D076: __cxxabiv1::__calloc_with_fallback(unsigned long, unsigned long) (in /usr/lib/libc++abi.dylib)
==47340== by 0x10030CFBA: __cxa_get_globals (in /usr/lib/libc++abi.dylib)
==47340== by 0x10030CF40: __cxa_throw (in /usr/lib/libc++abi.dylib)
==47340== by 0x10001619D: rascal::AtomicStructure<3>::set_structure(Eigen::Ref<Eigen::Matrix<double, -1, -1, 0, -1, -1> const, 0, Eigen::Stride<-1, -1> > const&, Eigen::Ref<Eigen::Matrix<int, -1, 1, 0, -1, 1> const, 0, Eigen::InnerStride<1> > const&, Eigen::Ref<Eigen::Matrix<double, -1, -1, 0, -1, -1> const, 0, Eigen::OuterStride<-1> >, Eigen::Ref<Eigen::Matrix<int, -1, 1, 0, -1, 1> const, 0, Eigen::InnerStride<1> > const&, Eigen::Array<bool, -1, 1, 0, -1, 1> const&) (in /Users/guillaume/code/librascal/build/clang/tests/test_atomic_structure)
==47340== by 0x100016CCA: rascal::AtomicStructure<3>::set_structure(Eigen::Ref<Eigen::Matrix<double, -1, -1, 0, -1, -1> const, 0, Eigen::Stride<-1, -1> > const&, Eigen::Ref<Eigen::Matrix<int, -1, 1, 0, -1, 1> const, 0, Eigen::InnerStride<1> > const&, Eigen::Ref<Eigen::Matrix<double, -1, -1, 0, -1, -1> const, 0, Eigen::OuterStride<-1> >, Eigen::Ref<Eigen::Matrix<int, -1, 1, 0, -1, 1> const, 0, Eigen::InnerStride<1> > const&) (in /Users/guillaume/code/librascal/build/clang/tests/test_atomic_structure)
==47340== by 0x100015831: void rascal::from_json<3>(nlohmann::basic_json<std::__1::map, std::__1::vector, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, bool, long long, unsigned long long, double, std::__1::allocator, nlohmann::adl_serializer> const&, rascal::AtomicStructure<3>&) (in /Users/guillaume/code/librascal/build/clang/tests/test_atomic_structure)
==47340== by 0x1000087E9: rascal::AtomicStructure<3>::set_structure(nlohmann::basic_json<std::__1::map, std::__1::vector, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, bool, long long, unsigned long long, double, std::__1::allocator, nlohmann::adl_serializer> const&) (in /Users/guillaume/code/librascal/build/clang/tests/test_atomic_structure)
==47340== by 0x100003832: rascal::AtomicStructure<3>::set_structure(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) (in /Users/guillaume/code/librascal/build/clang/tests/test_atomic_structure)
==47340== by 0x100006CA6: rascal::AtomicStructureTests::empty_unit_cell_test::test_method() (in /Users/guillaume/code/librascal/build/clang/tests/test_atomic_structure)
==47340== by 0x1000065E5: rascal::AtomicStructureTests::empty_unit_cell_test_invoker() (in /Users/guillaume/code/librascal/build/clang/tests/test_atomic_structure)
==47340== by 0x10011D5CE: boost::detail::function::function_obj_invoker0<boost::detail::forward, int>::invoke(boost::detail::function::function_buffer&) (in /usr/local/Cellar/boost/1.71.0/lib/libboost_unit_test_framework.dylib)
==47340==
==47340== 272 bytes in 1 blocks are still reachable in loss record 48 of 60
==47340== at 0x100105AD5: malloc (in /usr/local/Cellar/valgrind/HEAD-60ab74a/lib/valgrind/vgpreload_memcheck-amd64-darwin.so)
==47340== by 0x10049E850: getPerThreadBufferFor_dlerror(unsigned long) (in /usr/lib/system/libdyld.dylib)
==47340== by 0x100042168: dlerrorSet(char const*) (in /usr/lib/dyld)
==47340== by 0x1000424CA: dlopen_internal (in /usr/lib/dyld)
==47340== by 0x10048AD42: dlopen (in /usr/lib/system/libdyld.dylib)
==47340== by 0x10030DAA2: std::runtime_error::~runtime_error() (in /usr/lib/libc++abi.dylib)
==47340== by 0x10030CE8A: __cxa_decrement_exception_refcount (in /usr/lib/libc++abi.dylib)
==47340== by 0x100007252: rascal::AtomicStructureTests::empty_unit_cell_test::test_method() (in /Users/guillaume/code/librascal/build/clang/tests/test_atomic_structure)
==47340== by 0x1000065E5: rascal::AtomicStructureTests::empty_unit_cell_test_invoker() (in /Users/guillaume/code/librascal/build/clang/tests/test_atomic_structure)
==47340== by 0x10011D5CE: boost::detail::function::function_obj_invoker0<boost::detail::forward, int>::invoke(boost::detail::function::function_buffer&) (in /usr/local/Cellar/boost/1.71.0/lib/libboost_unit_test_framework.dylib)
==47340== by 0x10011A1C5: boost::execution_monitor::catch_signals(boost::function<int ()> const&) (in /usr/local/Cellar/boost/1.71.0/lib/libboost_unit_test_framework.dylib)
==47340== by 0x10011A33B: boost::execution_monitor::execute(boost::function<int ()> const&) (in /usr/local/Cellar/boost/1.71.0/lib/libboost_unit_test_framework.dylib)
test_kernels
:
==47449== 16 bytes in 1 blocks are still reachable in loss record 4 of 60
==47449== at 0x1001C9130: calloc (in /usr/local/Cellar/valgrind/HEAD-60ab74a/lib/valgrind/vgpreload_memcheck-amd64-darwin.so)
==47449== by 0x1003D0076: __cxxabiv1::__calloc_with_fallback(unsigned long, unsigned long) (in /usr/lib/libc++abi.dylib)
==47449== by 0x1003CFFBA: __cxa_get_globals (in /usr/lib/libc++abi.dylib)
==47449== by 0x1003CFF40: __cxa_throw (in /usr/lib/libc++abi.dylib)
==47449== by 0x100090B8B: rascal::Kernel::Kernel(nlohmann::basic_json<std::__1::map, std::__1::vector, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, bool, long long, unsigned long long, double, std::__1::allocator, nlohmann::adl_serializer> const&) (in /Users/guillaume/code/librascal/build/clang/tests/test_kernels)
==47449== by 0x1000040C3: rascal::kernels_test::kernel_target_type_test::test_method() (in /Users/guillaume/code/librascal/build/clang/tests/test_kernels)
==47449== by 0x10000372D: rascal::kernels_test::kernel_target_type_test_invoker() (in /Users/guillaume/code/librascal/build/clang/tests/test_kernels)
==47449== by 0x1001E05CE: boost::detail::function::function_obj_invoker0<boost::detail::forward, int>::invoke(boost::detail::function::function_buffer&) (in /usr/local/Cellar/boost/1.71.0/lib/libboost_unit_test_framework.dylib)
==47449== by 0x1001DD1C5: boost::execution_monitor::catch_signals(boost::function<int ()> const&) (in /usr/local/Cellar/boost/1.71.0/lib/libboost_unit_test_framework.dylib)
==47449== by 0x1001DD33B: boost::execution_monitor::execute(boost::function<int ()> const&) (in /usr/local/Cellar/boost/1.71.0/lib/libboost_unit_test_framework.dylib)
==47449== by 0x1001DDF1A: boost::execution_monitor::vexecute(boost::function<void ()> const&) (in /usr/local/Cellar/boost/1.71.0/lib/libboost_unit_test_framework.dylib)
==47449== by 0x10020909B: boost::unit_test::unit_test_monitor_t::execute_and_translate(boost::function<void ()> const&, unsigned long) (in /usr/local/Cellar/boost/1.71.0/lib/libboost_unit_test_framework.dylib)
==47449==
==47449== 272 bytes in 1 blocks are still reachable in loss record 48 of 60
==47449== at 0x1001C8AD5: malloc (in /usr/local/Cellar/valgrind/HEAD-60ab74a/lib/valgrind/vgpreload_memcheck-amd64-darwin.so)
==47449== by 0x100561850: getPerThreadBufferFor_dlerror(unsigned long) (in /usr/lib/system/libdyld.dylib)
==47449== by 0x100105168: dlerrorSet(char const*) (in /usr/lib/dyld)
==47449== by 0x1001054CA: dlopen_internal (in /usr/lib/dyld)
==47449== by 0x10054DD42: dlopen (in /usr/lib/system/libdyld.dylib)
==47449== by 0x1003D0AA2: std::runtime_error::~runtime_error() (in /usr/lib/libc++abi.dylib)
==47449== by 0x1003CFE8A: __cxa_decrement_exception_refcount (in /usr/lib/libc++abi.dylib)
==47449== by 0x100004CD9: rascal::kernels_test::kernel_target_type_test::test_method() (in /Users/guillaume/code/librascal/build/clang/tests/test_kernels)
==47449== by 0x10000372D: rascal::kernels_test::kernel_target_type_test_invoker() (in /Users/guillaume/code/librascal/build/clang/tests/test_kernels)
==47449== by 0x1001E05CE: boost::detail::function::function_obj_invoker0<boost::detail::forward, int>::invoke(boost::detail::function::function_buffer&) (in /usr/local/Cellar/boost/1.71.0/lib/libboost_unit_test_framework.dylib)
==47449== by 0x1001DD1C5: boost::execution_monitor::catch_signals(boost::function<int ()> const&) (in /usr/local/Cellar/boost/1.71.0/lib/libboost_unit_test_framework.dylib)
==47449== by 0x1001DD33B: boost::execution_monitor::execute(boost::function<int ()> const&) (in /usr/local/Cellar/boost/1.71.0/lib/libboost_unit_test_framework.dylib)
test_properties
:
==47460== 16 bytes in 1 blocks are still reachable in loss record 4 of 60
==47460== at 0x100352130: calloc (in /usr/local/Cellar/valgrind/HEAD-60ab74a/lib/valgrind/vgpreload_memcheck-amd64-darwin.so)
==47460== by 0x100559076: __cxxabiv1::__calloc_with_fallback(unsigned long, unsigned long) (in /usr/lib/libc++abi.dylib)
==47460== by 0x100558FBA: __cxa_get_globals (in /usr/lib/libc++abi.dylib)
==47460== by 0x100558F40: __cxa_throw (in /usr/lib/libc++abi.dylib)
==47460== by 0x1000F6D45: rascal::Property<double, 1ul, 0ul, rascal::StructureManager<rascal::AdaptorNeighbourList<rascal::StructureManagerCenters> >, 3, 1>::check_compatibility(rascal::PropertyBase&) (in /Users/guillaume/code/librascal/build/clang/tests/test_properties)
==47460== by 0x1000F4CAC: rascal::Property_tests::fill_test_complex<rascal::PairPropertyFixture<rascal::AdaptorNeighbourListStackFixture<rascal::StructureManagerCentersStackFixture, false> > >::test_method() (in /Users/guillaume/code/librascal/build/clang/tests/test_properties)
==47460== by 0x1000F43B6: void rascal::Property_tests::fill_test_complex_invoker::run<rascal::PairPropertyFixture<rascal::AdaptorNeighbourListStackFixture<rascal::StructureManagerCentersStackFixture, false> > >(boost::type<rascal::PairPropertyFixture<rascal::AdaptorNeighbourListStackFixture<rascal::StructureManagerCentersStackFixture, false> > >*) (in /Users/guillaume/code/librascal/build/clang/tests/test_properties)
==47460== by 0x1003695CE: boost::detail::function::function_obj_invoker0<boost::detail::forward, int>::invoke(boost::detail::function::function_buffer&) (in /usr/local/Cellar/boost/1.71.0/lib/libboost_unit_test_framework.dylib)
==47460== by 0x1003661C5: boost::execution_monitor::catch_signals(boost::function<int ()> const&) (in /usr/local/Cellar/boost/1.71.0/lib/libboost_unit_test_framework.dylib)
==47460== by 0x10036633B: boost::execution_monitor::execute(boost::function<int ()> const&) (in /usr/local/Cellar/boost/1.71.0/lib/libboost_unit_test_framework.dylib)
==47460== by 0x100366F1A: boost::execution_monitor::vexecute(boost::function<void ()> const&) (in /usr/local/Cellar/boost/1.71.0/lib/libboost_unit_test_framework.dylib)
==47460== by 0x10039209B: boost::unit_test::unit_test_monitor_t::execute_and_translate(boost::function<void ()> const&, unsigned long) (in /usr/local/Cellar/boost/1.71.0/lib/libboost_unit_test_framework.dylib)
==47460==
==47460== 272 bytes in 1 blocks are still reachable in loss record 48 of 60
==47460== at 0x100351AD5: malloc (in /usr/local/Cellar/valgrind/HEAD-60ab74a/lib/valgrind/vgpreload_memcheck-amd64-darwin.so)
==47460== by 0x1006EA850: getPerThreadBufferFor_dlerror(unsigned long) (in /usr/lib/system/libdyld.dylib)
==47460== by 0x10028E168: dlerrorSet(char const*) (in /usr/lib/dyld)
==47460== by 0x10028E4CA: dlopen_internal (in /usr/lib/dyld)
==47460== by 0x1006D6D42: dlopen (in /usr/lib/system/libdyld.dylib)
==47460== by 0x100559AA2: std::runtime_error::~runtime_error() (in /usr/lib/libc++abi.dylib)
==47460== by 0x100558E8A: __cxa_decrement_exception_refcount (in /usr/lib/libc++abi.dylib)
==47460== by 0x1000F6A11: rascal::Property_tests::fill_test_complex<rascal::PairPropertyFixture<rascal::AdaptorNeighbourListStackFixture<rascal::StructureManagerCentersStackFixture, false> > >::test_method() (in /Users/guillaume/code/librascal/build/clang/tests/test_properties)
==47460== by 0x1000F43B6: void rascal::Property_tests::fill_test_complex_invoker::run<rascal::PairPropertyFixture<rascal::AdaptorNeighbourListStackFixture<rascal::StructureManagerCentersStackFixture, false> > >(boost::type<rascal::PairPropertyFixture<rascal::AdaptorNeighbourListStackFixture<rascal::StructureManagerCentersStackFixture, false> > >*) (in /Users/guillaume/code/librascal/build/clang/tests/test_properties)
==47460== by 0x1003695CE: boost::detail::function::function_obj_invoker0<boost::detail::forward, int>::invoke(boost::detail::function::function_buffer&) (in /usr/local/Cellar/boost/1.71.0/lib/libboost_unit_test_framework.dylib)
==47460== by 0x1003661C5: boost::execution_monitor::catch_signals(boost::function<int ()> const&) (in /usr/local/Cellar/boost/1.71.0/lib/libboost_unit_test_framework.dylib)
==47460== by 0x10036633B: boost::execution_monitor::execute(boost::function<int ()> const&) (in /usr/local/Cellar/boost/1.71.0/lib/libboost_unit_test_framework.dylib)
test_structure_manager_centers
:
==47462== 16 bytes in 1 blocks are still reachable in loss record 4 of 60
==47462== at 0x10010D130: calloc (in /usr/local/Cellar/valgrind/HEAD-60ab74a/lib/valgrind/vgpreload_memcheck-amd64-darwin.so)
==47462== by 0x100314076: __cxxabiv1::__calloc_with_fallback(unsigned long, unsigned long) (in /usr/lib/libc++abi.dylib)
==47462== by 0x100313FBA: __cxa_get_globals (in /usr/lib/libc++abi.dylib)
==47462== by 0x100313F40: __cxa_throw (in /usr/lib/libc++abi.dylib)
==47462== by 0x100239D46: rascal::StructureManagerCenters::build() (in /Users/guillaume/code/librascal/build/clang/src/librascal.dylib)
==47462== by 0x100005D43: rascal::ManagerCentersTests::atom_bound_test::test_method() (in /Users/guillaume/code/librascal/build/clang/tests/test_structure_manager_centers)
==47462== by 0x1000054FC: rascal::ManagerCentersTests::atom_bound_test_invoker() (in /Users/guillaume/code/librascal/build/clang/tests/test_structure_manager_centers)
==47462== by 0x1001245CE: boost::detail::function::function_obj_invoker0<boost::detail::forward, int>::invoke(boost::detail::function::function_buffer&) (in /usr/local/Cellar/boost/1.71.0/lib/libboost_unit_test_framework.dylib)
==47462== by 0x1001211C5: boost::execution_monitor::catch_signals(boost::function<int ()> const&) (in /usr/local/Cellar/boost/1.71.0/lib/libboost_unit_test_framework.dylib)
==47462== by 0x10012133B: boost::execution_monitor::execute(boost::function<int ()> const&) (in /usr/local/Cellar/boost/1.71.0/lib/libboost_unit_test_framework.dylib)
==47462== by 0x100121F1A: boost::execution_monitor::vexecute(boost::function<void ()> const&) (in /usr/local/Cellar/boost/1.71.0/lib/libboost_unit_test_framework.dylib)
==47462== by 0x10014D09B: boost::unit_test::unit_test_monitor_t::execute_and_translate(boost::function<void ()> const&, unsigned long) (in /usr/local/Cellar/boost/1.71.0/lib/libboost_unit_test_framework.dylib)
==47462==
==47462== 272 bytes in 1 blocks are still reachable in loss record 48 of 60
==47462== at 0x10010CAD5: malloc (in /usr/local/Cellar/valgrind/HEAD-60ab74a/lib/valgrind/vgpreload_memcheck-amd64-darwin.so)
==47462== by 0x1004A5850: getPerThreadBufferFor_dlerror(unsigned long) (in /usr/lib/system/libdyld.dylib)
==47462== by 0x100049168: dlerrorSet(char const*) (in /usr/lib/dyld)
==47462== by 0x1000494CA: dlopen_internal (in /usr/lib/dyld)
==47462== by 0x100491D42: dlopen (in /usr/lib/system/libdyld.dylib)
==47462== by 0x100314AA2: std::runtime_error::~runtime_error() (in /usr/lib/libc++abi.dylib)
==47462== by 0x100313E8A: __cxa_decrement_exception_refcount (in /usr/lib/libc++abi.dylib)
==47462== by 0x100005CB7: rascal::ManagerCentersTests::atom_bound_test::test_method() (in /Users/guillaume/code/librascal/build/clang/tests/test_structure_manager_centers)
==47462== by 0x1000054FC: rascal::ManagerCentersTests::atom_bound_test_invoker() (in /Users/guillaume/code/librascal/build/clang/tests/test_structure_manager_centers)
==47462== by 0x1001245CE: boost::detail::function::function_obj_invoker0<boost::detail::forward, int>::invoke(boost::detail::function::function_buffer&) (in /usr/local/Cellar/boost/1.71.0/lib/libboost_unit_test_framework.dylib)
==47462== by 0x1001211C5: boost::execution_monitor::catch_signals(boost::function<int ()> const&) (in /usr/local/Cellar/boost/1.71.0/lib/libboost_unit_test_framework.dylib)
==47462== by 0x10012133B: boost::execution_monitor::execute(boost::function<int ()> const&) (in /usr/local/Cellar/boost/1.71.0/lib/libboost_unit_test_framework.dylib)