==3099378== Memcheck, a memory error detector
==3099378== Copyright (C) 2002-2017, and GNU GPL'd, by Julian Seward et al.
==3099378== Using Valgrind-3.18.1 and LibVEX; rerun with -h for copyright info
==3099378== Command: /home/github/actions-runner/_work/Chaste/Chaste/Chaste/chaste-build-dir/mesh/test/TestEdge -malloc_debug -malloc_dump -memory_info
==3099378== Parent PID: 3098918
==3099378== 
==3099378== WARNING: pwritev(vector[...]) is an obsolete suppression line not supported in valgrind 3.15 or later.
==3099378== You should replace [...] by a specific index such as [0] or [1] or [2] or similar
==3099378== 
==3099378== Syscall param socketcall.getsockopt(optlen) points to uninitialised byte(s)
==3099378==    at 0x7E7079E: getsockopt_syscall (getsockopt.c:29)
==3099378==    by 0x7E7079E: getsockopt (getsockopt.c:94)
==3099378==    by 0x107C4157: pmix_ptl_base_set_timeout (in /usr/lib/x86_64-linux-gnu/pmix2/lib/libpmix.so.2.5.2)
==3099378==    by 0x107CBA1A: pmix_ptl_base_make_connection (in /usr/lib/x86_64-linux-gnu/pmix2/lib/libpmix.so.2.5.2)
==3099378==    by 0x107D2DF3: ??? (in /usr/lib/x86_64-linux-gnu/pmix2/lib/libpmix.so.2.5.2)
==3099378==    by 0x106D23C1: PMIx_Init (in /usr/lib/x86_64-linux-gnu/pmix2/lib/libpmix.so.2.5.2)
==3099378==    by 0x1064BE4A: ext3x_client_init (in /usr/lib/x86_64-linux-gnu/openmpi/lib/openmpi3/mca_pmix_ext3x.so)
==3099378==    by 0xFE0AE6D: ??? (in /usr/lib/x86_64-linux-gnu/openmpi/lib/openmpi3/mca_ess_singleton.so)
==3099378==    by 0xB74E4CB: orte_init (in /usr/lib/x86_64-linux-gnu/libopen-rte.so.40.30.2)
==3099378==    by 0x776A418: ompi_mpi_init (in /usr/lib/x86_64-linux-gnu/libmpi.so.40.30.2)
==3099378==    by 0x7703D7A: PMPI_Init_thread (in /usr/lib/x86_64-linux-gnu/libmpi.so.40.30.2)
==3099378==    by 0x63FAD38: PetscInitialize (pinit.c:924)
==3099378==    by 0x626A58B: PetscSetupUtils::InitialisePetsc() (PetscSetupUtils.cpp:80)
==3099378==    by 0x626A5D9: PetscSetupUtils::CommonSetup() (PetscSetupUtils.cpp:88)
==3099378==    by 0x171B4D: PetscSetup::setUpWorld() (FakePetscSetup.hpp:70)
==3099378==    by 0x16A863: CxxTest::RealWorldDescription::setUp() (RealDescriptions.cpp:266)
==3099378==    by 0x16DD4A: CxxTest::TestRunner::runWorld() (TestRunner.h:43)
==3099378==    by 0x16DBEA: CxxTest::TestRunner::runAllTests(CxxTest::TestListener&) (TestRunner.h:23)
==3099378==    by 0x16E281: CxxTest::ErrorFormatter::run() (ErrorFormatter.h:47)
==3099378==    by 0x168B50: main (TestEdge.cpp:19)
==3099378==  Address 0x1ffeffdfbc is on thread 1's stack
==3099378==  in frame #2, created by pmix_ptl_base_make_connection (???:)
==3099378== 
{
   <insert_a_suppression_name_here>
   Memcheck:Param
   socketcall.getsockopt(optlen)
   fun:getsockopt_syscall
   fun:getsockopt
   fun:pmix_ptl_base_set_timeout
   fun:pmix_ptl_base_make_connection
   obj:/usr/lib/x86_64-linux-gnu/pmix2/lib/libpmix.so.2.5.2
   fun:PMIx_Init
   fun:ext3x_client_init
   obj:/usr/lib/x86_64-linux-gnu/openmpi/lib/openmpi3/mca_ess_singleton.so
   fun:orte_init
   fun:ompi_mpi_init
   fun:PMPI_Init_thread
   fun:PetscInitialize
   fun:_ZN15PetscSetupUtils15InitialisePetscEv
   fun:_ZN15PetscSetupUtils11CommonSetupEv
   fun:_ZN10PetscSetup10setUpWorldEv
   fun:_ZN7CxxTest20RealWorldDescription5setUpEv
   fun:_ZN7CxxTest10TestRunner8runWorldEv
   fun:_ZN7CxxTest10TestRunner11runAllTestsERNS_12TestListenerE
   fun:_ZN7CxxTest14ErrorFormatter3runEv
   fun:main
}
==3099378== Syscall param socketcall.getsockopt(optlen_out) points to uninitialised byte(s)
==3099378==    at 0x7E7079E: getsockopt_syscall (getsockopt.c:29)
==3099378==    by 0x7E7079E: getsockopt (getsockopt.c:94)
==3099378==    by 0x107C4157: pmix_ptl_base_set_timeout (in /usr/lib/x86_64-linux-gnu/pmix2/lib/libpmix.so.2.5.2)
==3099378==    by 0x107CBA1A: pmix_ptl_base_make_connection (in /usr/lib/x86_64-linux-gnu/pmix2/lib/libpmix.so.2.5.2)
==3099378==    by 0x107D2DF3: ??? (in /usr/lib/x86_64-linux-gnu/pmix2/lib/libpmix.so.2.5.2)
==3099378==    by 0x106D23C1: PMIx_Init (in /usr/lib/x86_64-linux-gnu/pmix2/lib/libpmix.so.2.5.2)
==3099378==    by 0x1064BE4A: ext3x_client_init (in /usr/lib/x86_64-linux-gnu/openmpi/lib/openmpi3/mca_pmix_ext3x.so)
==3099378==    by 0xFE0AE6D: ??? (in /usr/lib/x86_64-linux-gnu/openmpi/lib/openmpi3/mca_ess_singleton.so)
==3099378==    by 0xB74E4CB: orte_init (in /usr/lib/x86_64-linux-gnu/libopen-rte.so.40.30.2)
==3099378==    by 0x776A418: ompi_mpi_init (in /usr/lib/x86_64-linux-gnu/libmpi.so.40.30.2)
==3099378==    by 0x7703D7A: PMPI_Init_thread (in /usr/lib/x86_64-linux-gnu/libmpi.so.40.30.2)
==3099378==    by 0x63FAD38: PetscInitialize (pinit.c:924)
==3099378==    by 0x626A58B: PetscSetupUtils::InitialisePetsc() (PetscSetupUtils.cpp:80)
==3099378==    by 0x626A5D9: PetscSetupUtils::CommonSetup() (PetscSetupUtils.cpp:88)
==3099378==    by 0x171B4D: PetscSetup::setUpWorld() (FakePetscSetup.hpp:70)
==3099378==    by 0x16A863: CxxTest::RealWorldDescription::setUp() (RealDescriptions.cpp:266)
==3099378==    by 0x16DD4A: CxxTest::TestRunner::runWorld() (TestRunner.h:43)
==3099378==    by 0x16DBEA: CxxTest::TestRunner::runAllTests(CxxTest::TestListener&) (TestRunner.h:23)
==3099378==    by 0x16E281: CxxTest::ErrorFormatter::run() (ErrorFormatter.h:47)
==3099378==    by 0x168B50: main (TestEdge.cpp:19)
==3099378==  Address 0x1ffeffdfbc is on thread 1's stack
==3099378==  in frame #2, created by pmix_ptl_base_make_connection (???:)
==3099378== 
{
   <insert_a_suppression_name_here>
   Memcheck:Param
   socketcall.getsockopt(optlen_out)
   fun:getsockopt_syscall
   fun:getsockopt
   fun:pmix_ptl_base_set_timeout
   fun:pmix_ptl_base_make_connection
   obj:/usr/lib/x86_64-linux-gnu/pmix2/lib/libpmix.so.2.5.2
   fun:PMIx_Init
   fun:ext3x_client_init
   obj:/usr/lib/x86_64-linux-gnu/openmpi/lib/openmpi3/mca_ess_singleton.so
   fun:orte_init
   fun:ompi_mpi_init
   fun:PMPI_Init_thread
   fun:PetscInitialize
   fun:_ZN15PetscSetupUtils15InitialisePetscEv
   fun:_ZN15PetscSetupUtils11CommonSetupEv
   fun:_ZN10PetscSetup10setUpWorldEv
   fun:_ZN7CxxTest20RealWorldDescription5setUpEv
   fun:_ZN7CxxTest10TestRunner8runWorldEv
   fun:_ZN7CxxTest10TestRunner11runAllTestsERNS_12TestListenerE
   fun:_ZN7CxxTest14ErrorFormatter3runEv
   fun:main
}
==3099378== Syscall param setsockopt(optlen) contains uninitialised byte(s)
==3099378==    at 0x7E70C7E: setsockopt_syscall (setsockopt.c:29)
==3099378==    by 0x7E70C7E: setsockopt (setsockopt.c:95)
==3099378==    by 0x107CBBA9: pmix_ptl_base_make_connection (in /usr/lib/x86_64-linux-gnu/pmix2/lib/libpmix.so.2.5.2)
==3099378==    by 0x107D2DF3: ??? (in /usr/lib/x86_64-linux-gnu/pmix2/lib/libpmix.so.2.5.2)
==3099378==    by 0x106D23C1: PMIx_Init (in /usr/lib/x86_64-linux-gnu/pmix2/lib/libpmix.so.2.5.2)
==3099378==    by 0x1064BE4A: ext3x_client_init (in /usr/lib/x86_64-linux-gnu/openmpi/lib/openmpi3/mca_pmix_ext3x.so)
==3099378==    by 0xFE0AE6D: ??? (in /usr/lib/x86_64-linux-gnu/openmpi/lib/openmpi3/mca_ess_singleton.so)
==3099378==    by 0xB74E4CB: orte_init (in /usr/lib/x86_64-linux-gnu/libopen-rte.so.40.30.2)
==3099378==    by 0x776A418: ompi_mpi_init (in /usr/lib/x86_64-linux-gnu/libmpi.so.40.30.2)
==3099378==    by 0x7703D7A: PMPI_Init_thread (in /usr/lib/x86_64-linux-gnu/libmpi.so.40.30.2)
==3099378==    by 0x63FAD38: PetscInitialize (pinit.c:924)
==3099378==    by 0x626A58B: PetscSetupUtils::InitialisePetsc() (PetscSetupUtils.cpp:80)
==3099378==    by 0x626A5D9: PetscSetupUtils::CommonSetup() (PetscSetupUtils.cpp:88)
==3099378==    by 0x171B4D: PetscSetup::setUpWorld() (FakePetscSetup.hpp:70)
==3099378==    by 0x16A863: CxxTest::RealWorldDescription::setUp() (RealDescriptions.cpp:266)
==3099378==    by 0x16DD4A: CxxTest::TestRunner::runWorld() (TestRunner.h:43)
==3099378==    by 0x16DBEA: CxxTest::TestRunner::runAllTests(CxxTest::TestListener&) (TestRunner.h:23)
==3099378==    by 0x16E281: CxxTest::ErrorFormatter::run() (ErrorFormatter.h:47)
==3099378==    by 0x168B50: main (TestEdge.cpp:19)
==3099378== 
{
   <insert_a_suppression_name_here>
   Memcheck:Param
   setsockopt(optlen)
   fun:setsockopt_syscall
   fun:setsockopt
   fun:pmix_ptl_base_make_connection
   obj:/usr/lib/x86_64-linux-gnu/pmix2/lib/libpmix.so.2.5.2
   fun:PMIx_Init
   fun:ext3x_client_init
   obj:/usr/lib/x86_64-linux-gnu/openmpi/lib/openmpi3/mca_ess_singleton.so
   fun:orte_init
   fun:ompi_mpi_init
   fun:PMPI_Init_thread
   fun:PetscInitialize
   fun:_ZN15PetscSetupUtils15InitialisePetscEv
   fun:_ZN15PetscSetupUtils11CommonSetupEv
   fun:_ZN10PetscSetup10setUpWorldEv
   fun:_ZN7CxxTest20RealWorldDescription5setUpEv
   fun:_ZN7CxxTest10TestRunner8runWorldEv
   fun:_ZN7CxxTest10TestRunner11runAllTestsERNS_12TestListenerE
   fun:_ZN7CxxTest14ErrorFormatter3runEv
   fun:main
}
==3099378== 
==3099378== FILE DESCRIPTORS: 9 open (3 std) at exit.
==3099378== Open file descriptor 12:
==3099378==    at 0x7E5E22D: pipe (pipe.c:29)
==3099378==    by 0xFE0B07D: ???
==3099378==    by 0xB74E4CB: orte_init (in /usr/lib/x86_64-linux-gnu/libopen-rte.so.40.30.2)
==3099378==    by 0x776A418: ompi_mpi_init (in /usr/lib/x86_64-linux-gnu/libmpi.so.40.30.2)
==3099378==    by 0x7703D7A: PMPI_Init_thread (in /usr/lib/x86_64-linux-gnu/libmpi.so.40.30.2)
==3099378==    by 0x63FAD38: PetscInitialize (pinit.c:924)
==3099378==    by 0x626A58B: PetscSetupUtils::InitialisePetsc() (PetscSetupUtils.cpp:80)
==3099378==    by 0x626A5D9: PetscSetupUtils::CommonSetup() (PetscSetupUtils.cpp:88)
==3099378==    by 0x171B4D: PetscSetup::setUpWorld() (FakePetscSetup.hpp:70)
==3099378==    by 0x16A863: CxxTest::RealWorldDescription::setUp() (RealDescriptions.cpp:266)
==3099378==    by 0x16DD4A: CxxTest::TestRunner::runWorld() (TestRunner.h:43)
==3099378==    by 0x16DBEA: CxxTest::TestRunner::runAllTests(CxxTest::TestListener&) (TestRunner.h:23)
==3099378==    by 0x16E281: CxxTest::ErrorFormatter::run() (ErrorFormatter.h:47)
==3099378==    by 0x168B50: main (TestEdge.cpp:19)
==3099378== 
==3099378== Open file descriptor 8: /dev/shm/open_mpi.0000
==3099378==    at 0x7E62BCC: __open_nocancel (open64_nocancel.c:39)
==3099378==    by 0x7DE6C4F: shm_open@@GLIBC_2.34 (shm_open.c:40)
==3099378==    by 0x62A2822: ???
==3099378==    by 0x62A296F: ???
==3099378==    by 0xB7F36DC: ??? (in /usr/lib/x86_64-linux-gnu/libopen-pal.so.40.30.2)
==3099378==    by 0xB7F3938: opal_shmem_base_select (in /usr/lib/x86_64-linux-gnu/libopen-pal.so.40.30.2)
==3099378==    by 0xB7A9922: opal_init (in /usr/lib/x86_64-linux-gnu/libopen-pal.so.40.30.2)
==3099378==    by 0xB74E2DB: orte_init (in /usr/lib/x86_64-linux-gnu/libopen-rte.so.40.30.2)
==3099378==    by 0x776A418: ompi_mpi_init (in /usr/lib/x86_64-linux-gnu/libmpi.so.40.30.2)
==3099378==    by 0x7703D7A: PMPI_Init_thread (in /usr/lib/x86_64-linux-gnu/libmpi.so.40.30.2)
==3099378==    by 0x63FAD38: PetscInitialize (pinit.c:924)
==3099378==    by 0x626A58B: PetscSetupUtils::InitialisePetsc() (PetscSetupUtils.cpp:80)
==3099378==    by 0x626A5D9: PetscSetupUtils::CommonSetup() (PetscSetupUtils.cpp:88)
==3099378==    by 0x171B4D: PetscSetup::setUpWorld() (FakePetscSetup.hpp:70)
==3099378==    by 0x16A863: CxxTest::RealWorldDescription::setUp() (RealDescriptions.cpp:266)
==3099378==    by 0x16DD4A: CxxTest::TestRunner::runWorld() (TestRunner.h:43)
==3099378==    by 0x16DBEA: CxxTest::TestRunner::runAllTests(CxxTest::TestListener&) (TestRunner.h:23)
==3099378==    by 0x16E281: CxxTest::ErrorFormatter::run() (ErrorFormatter.h:47)
==3099378==    by 0x168B50: main (TestEdge.cpp:19)
==3099378== 
==3099378== Open file descriptor 117:
==3099378==    <inherited from parent>
==3099378== 
==3099378== Open file descriptor 110:
==3099378==    <inherited from parent>
==3099378== 
==3099378== Open file descriptor 4: /home/github/actions-runner/_work/Chaste/Chaste/Chaste/chaste-build-dir/memtest/TestEdge_valgrind.txt
==3099378==    <inherited from parent>
==3099378== 
==3099378== Open file descriptor 3: /home/github/actions-runner/_work/Chaste/Chaste/Chaste/chaste-build-dir/Testing/Temporary/LastTest.log.tmp
==3099378==    <inherited from parent>
==3099378== 
==3099378== 
==3099378== HEAP SUMMARY:
==3099378==     in use at exit: 708,343 bytes in 9,478 blocks
==3099378==   total heap usage: 50,184 allocs, 40,706 frees, 1,353,475,989 bytes allocated
==3099378== 
==3099378== 96 (80 direct, 16 indirect) bytes in 1 blocks are definitely lost in loss record 50 of 116
==3099378==    at 0x4849013: operator new(unsigned long) (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so)
==3099378==    by 0x171DB1: TestEdge::TestEdgeInitialisation() (TestEdge.hpp:66)
==3099378==    by 0x17B9FC: TestDescription_TestEdge_TestEdgeInitialisation::runTest() (TestEdge.cpp:31)
==3099378==    by 0x169E5E: CxxTest::RealTestDescription::run() (RealDescriptions.cpp:96)
==3099378==    by 0x16DFF8: CxxTest::TestRunner::runTest(CxxTest::TestDescription&) (TestRunner.h:74)
==3099378==    by 0x16DEDD: CxxTest::TestRunner::runSuite(CxxTest::SuiteDescription&) (TestRunner.h:61)
==3099378==    by 0x16DD83: CxxTest::TestRunner::runWorld() (TestRunner.h:46)
==3099378==    by 0x16DBEA: CxxTest::TestRunner::runAllTests(CxxTest::TestListener&) (TestRunner.h:23)
==3099378==    by 0x16E281: CxxTest::ErrorFormatter::run() (ErrorFormatter.h:47)
==3099378==    by 0x168B50: main (TestEdge.cpp:19)
==3099378== 
{
   <insert_a_suppression_name_here>
   Memcheck:Leak
   match-leak-kinds: definite
   fun:_Znwm
   fun:_ZN8TestEdge22TestEdgeInitialisationEv
   fun:_ZN47TestDescription_TestEdge_TestEdgeInitialisation7runTestEv
   fun:_ZN7CxxTest19RealTestDescription3runEv
   fun:_ZN7CxxTest10TestRunner7runTestERNS_15TestDescriptionE
   fun:_ZN7CxxTest10TestRunner8runSuiteERNS_16SuiteDescriptionE
   fun:_ZN7CxxTest10TestRunner8runWorldEv
   fun:_ZN7CxxTest10TestRunner11runAllTestsERNS_12TestListenerE
   fun:_ZN7CxxTest14ErrorFormatter3runEv
   fun:main
}
==3099378== 96 (80 direct, 16 indirect) bytes in 1 blocks are definitely lost in loss record 51 of 116
==3099378==    at 0x4849013: operator new(unsigned long) (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so)
==3099378==    by 0x174CFB: TestEdge::TestEdgeProperties() (TestEdge.hpp:153)
==3099378==    by 0x17BA66: TestDescription_TestEdge_TestEdgeProperties::runTest() (TestEdge.cpp:37)
==3099378==    by 0x169E5E: CxxTest::RealTestDescription::run() (RealDescriptions.cpp:96)
==3099378==    by 0x16DFF8: CxxTest::TestRunner::runTest(CxxTest::TestDescription&) (TestRunner.h:74)
==3099378==    by 0x16DEDD: CxxTest::TestRunner::runSuite(CxxTest::SuiteDescription&) (TestRunner.h:61)
==3099378==    by 0x16DD83: CxxTest::TestRunner::runWorld() (TestRunner.h:46)
==3099378==    by 0x16DBEA: CxxTest::TestRunner::runAllTests(CxxTest::TestListener&) (TestRunner.h:23)
==3099378==    by 0x16E281: CxxTest::ErrorFormatter::run() (ErrorFormatter.h:47)
==3099378==    by 0x168B50: main (TestEdge.cpp:19)
==3099378== 
{
   <insert_a_suppression_name_here>
   Memcheck:Leak
   match-leak-kinds: definite
   fun:_Znwm
   fun:_ZN8TestEdge18TestEdgePropertiesEv
   fun:_ZN43TestDescription_TestEdge_TestEdgeProperties7runTestEv
   fun:_ZN7CxxTest19RealTestDescription3runEv
   fun:_ZN7CxxTest10TestRunner7runTestERNS_15TestDescriptionE
   fun:_ZN7CxxTest10TestRunner8runSuiteERNS_16SuiteDescriptionE
   fun:_ZN7CxxTest10TestRunner8runWorldEv
   fun:_ZN7CxxTest10TestRunner11runAllTestsERNS_12TestListenerE
   fun:_ZN7CxxTest14ErrorFormatter3runEv
   fun:main
}
==3099378== 192 bytes in 1 blocks are definitely lost in loss record 74 of 116
==3099378==    at 0x4849013: operator new(unsigned long) (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so)
==3099378==    by 0x1A9089: boost::archive::detail::heap_allocation<Node<2u> >::doesnt_have_new_operator::invoke_new() (iserializer.hpp:241)
==3099378==    by 0x1A8CBE: boost::archive::detail::heap_allocation<Node<2u> >::invoke_new() (iserializer.hpp:255)
==3099378==    by 0x1A8392: boost::archive::detail::heap_allocation<Node<2u> >::heap_allocation() (iserializer.hpp:268)
==3099378==    by 0x1A6D17: boost::archive::detail::pointer_iserializer<boost::archive::text_iarchive, Node<2u> >::heap_allocation() const (iserializer.hpp:293)
==3099378==    by 0x62DE830: ??? (in /usr/lib/x86_64-linux-gnu/libboost_serialization.so.1.74.0)
==3099378==    by 0x18DBCB: void boost::archive::detail::load_pointer_type<boost::archive::text_iarchive>::invoke<Node<2u>*>(boost::archive::text_iarchive&, Node<2u>*&) (iserializer.hpp:541)
==3099378==    by 0x18D5BC: void boost::archive::load<boost::archive::text_iarchive, Node<2u>*>(boost::archive::text_iarchive&, Node<2u>*&) (iserializer.hpp:624)
==3099378==    by 0x18D125: void boost::archive::detail::common_iarchive<boost::archive::text_iarchive>::load_override<Node<2u>*>(Node<2u>*&) (common_iarchive.hpp:67)
==3099378==    by 0x18CBF2: void boost::archive::basic_text_iarchive<boost::archive::text_iarchive>::load_override<Node<2u>*>(Node<2u>*&) (basic_text_iarchive.hpp:70)
==3099378==    by 0x18C612: void boost::archive::text_iarchive_impl<boost::archive::text_iarchive>::load_override<Node<2u>*>(Node<2u>*&) (text_iarchive.hpp:82)
==3099378==    by 0x18C025: boost::archive::text_iarchive& boost::archive::detail::interface_iarchive<boost::archive::text_iarchive>::operator>><Node<2u>*>(Node<2u>*&) (interface_iarchive.hpp:68)
==3099378==    by 0x18B957: boost::archive::text_iarchive& boost::archive::detail::interface_iarchive<boost::archive::text_iarchive>::operator&<Node<2u>*>(Node<2u>*&) (interface_iarchive.hpp:75)
==3099378==    by 0x18B263: void boost::serialization::load_construct_data<boost::archive::text_iarchive, 2u>(boost::archive::text_iarchive&, Edge<2u>*, unsigned int) (Edge.hpp:268)
==3099378==    by 0x18A955: void boost::serialization::load_construct_data_adl<boost::archive::text_iarchive, Edge<2u> >(boost::archive::text_iarchive&, Edge<2u>*, unsigned int) (serialization.hpp:140)
==3099378==    by 0x189F55: boost::archive::detail::pointer_iserializer<boost::archive::text_iarchive, Edge<2u> >::load_object_ptr(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:340)
==3099378==    by 0x62DE9F4: ??? (in /usr/lib/x86_64-linux-gnu/libboost_serialization.so.1.74.0)
==3099378==    by 0x1875F4: void boost::archive::detail::load_pointer_type<boost::archive::text_iarchive>::invoke<Edge<2u>*>(boost::archive::text_iarchive&, Edge<2u>*&) (iserializer.hpp:541)
==3099378==    by 0x18650A: void boost::archive::load<boost::archive::text_iarchive, Edge<2u>*>(boost::archive::text_iarchive&, Edge<2u>*&) (iserializer.hpp:624)
==3099378==    by 0x184D77: void boost::archive::detail::common_iarchive<boost::archive::text_iarchive>::load_override<Edge<2u>*>(Edge<2u>*&) (common_iarchive.hpp:67)
==3099378==    by 0x182EFC: void boost::archive::basic_text_iarchive<boost::archive::text_iarchive>::load_override<Edge<2u>*>(Edge<2u>*&) (basic_text_iarchive.hpp:70)
==3099378==    by 0x1803E8: void boost::archive::text_iarchive_impl<boost::archive::text_iarchive>::load_override<Edge<2u>*>(Edge<2u>*&) (text_iarchive.hpp:82)
==3099378==    by 0x17D5F7: boost::archive::text_iarchive& boost::archive::detail::interface_iarchive<boost::archive::text_iarchive>::operator>><Edge<2u>*>(Edge<2u>*&) (interface_iarchive.hpp:68)
==3099378==    by 0x1771AE: TestEdge::TestArchiveEdge() (TestEdge.hpp:242)
==3099378==    by 0x17BAD0: TestDescription_TestEdge_TestArchiveEdge::runTest() (TestEdge.cpp:43)
==3099378==    by 0x169E5E: CxxTest::RealTestDescription::run() (RealDescriptions.cpp:96)
==3099378==    by 0x16DFF8: CxxTest::TestRunner::runTest(CxxTest::TestDescription&) (TestRunner.h:74)
==3099378==    by 0x16DEDD: CxxTest::TestRunner::runSuite(CxxTest::SuiteDescription&) (TestRunner.h:61)
==3099378==    by 0x16DD83: CxxTest::TestRunner::runWorld() (TestRunner.h:46)
==3099378==    by 0x16DBEA: CxxTest::TestRunner::runAllTests(CxxTest::TestListener&) (TestRunner.h:23)
==3099378==    by 0x16E281: CxxTest::ErrorFormatter::run() (ErrorFormatter.h:47)
==3099378==    by 0x168B50: main (TestEdge.cpp:19)
==3099378== 
{
   <insert_a_suppression_name_here>
   Memcheck:Leak
   match-leak-kinds: definite
   fun:_Znwm
   fun:_ZN5boost7archive6detail15heap_allocationI4NodeILj2EEE24doesnt_have_new_operator10invoke_newEv
   fun:_ZN5boost7archive6detail15heap_allocationI4NodeILj2EEE10invoke_newEv
   fun:_ZN5boost7archive6detail15heap_allocationI4NodeILj2EEEC1Ev
   fun:_ZNK5boost7archive6detail19pointer_iserializerINS0_13text_iarchiveE4NodeILj2EEE15heap_allocationEv
   obj:/usr/lib/x86_64-linux-gnu/libboost_serialization.so.1.74.0
   fun:_ZN5boost7archive6detail17load_pointer_typeINS0_13text_iarchiveEE6invokeIP4NodeILj2EEEEvRS3_RT_
   fun:_ZN5boost7archive4loadINS0_13text_iarchiveEP4NodeILj2EEEEvRT_RT0_
   fun:_ZN5boost7archive6detail15common_iarchiveINS0_13text_iarchiveEE13load_overrideIP4NodeILj2EEEEvRT_
   fun:_ZN5boost7archive19basic_text_iarchiveINS0_13text_iarchiveEE13load_overrideIP4NodeILj2EEEEvRT_
   fun:_ZN5boost7archive18text_iarchive_implINS0_13text_iarchiveEE13load_overrideIP4NodeILj2EEEEvRT_
   fun:_ZN5boost7archive6detail18interface_iarchiveINS0_13text_iarchiveEErsIP4NodeILj2EEEERS3_RT_
   fun:_ZN5boost7archive6detail18interface_iarchiveINS0_13text_iarchiveEEanIP4NodeILj2EEEERS3_RT_
   fun:_ZN5boost13serialization19load_construct_dataINS_7archive13text_iarchiveELj2EEEvRT_P4EdgeIXT0_EEj
   fun:_ZN5boost13serialization23load_construct_data_adlINS_7archive13text_iarchiveE4EdgeILj2EEEEvRT_PT0_j
   fun:_ZNK5boost7archive6detail19pointer_iserializerINS0_13text_iarchiveE4EdgeILj2EEE15load_object_ptrERNS1_14basic_iarchiveEPvj
   obj:/usr/lib/x86_64-linux-gnu/libboost_serialization.so.1.74.0
   fun:_ZN5boost7archive6detail17load_pointer_typeINS0_13text_iarchiveEE6invokeIP4EdgeILj2EEEEvRS3_RT_
   fun:_ZN5boost7archive4loadINS0_13text_iarchiveEP4EdgeILj2EEEEvRT_RT0_
   fun:_ZN5boost7archive6detail15common_iarchiveINS0_13text_iarchiveEE13load_overrideIP4EdgeILj2EEEEvRT_
   fun:_ZN5boost7archive19basic_text_iarchiveINS0_13text_iarchiveEE13load_overrideIP4EdgeILj2EEEEvRT_
   fun:_ZN5boost7archive18text_iarchive_implINS0_13text_iarchiveEE13load_overrideIP4EdgeILj2EEEEvRT_
   fun:_ZN5boost7archive6detail18interface_iarchiveINS0_13text_iarchiveEErsIP4EdgeILj2EEEERS3_RT_
   fun:_ZN8TestEdge15TestArchiveEdgeEv
   fun:_ZN40TestDescription_TestEdge_TestArchiveEdge7runTestEv
   fun:_ZN7CxxTest19RealTestDescription3runEv
   fun:_ZN7CxxTest10TestRunner7runTestERNS_15TestDescriptionE
   fun:_ZN7CxxTest10TestRunner8runSuiteERNS_16SuiteDescriptionE
   fun:_ZN7CxxTest10TestRunner8runWorldEv
   fun:_ZN7CxxTest10TestRunner11runAllTestsERNS_12TestListenerE
   fun:_ZN7CxxTest14ErrorFormatter3runEv
   fun:main
}
==3099378== 192 bytes in 1 blocks are definitely lost in loss record 75 of 116
==3099378==    at 0x4849013: operator new(unsigned long) (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so)
==3099378==    by 0x1A9089: boost::archive::detail::heap_allocation<Node<2u> >::doesnt_have_new_operator::invoke_new() (iserializer.hpp:241)
==3099378==    by 0x1A8CBE: boost::archive::detail::heap_allocation<Node<2u> >::invoke_new() (iserializer.hpp:255)
==3099378==    by 0x1A8392: boost::archive::detail::heap_allocation<Node<2u> >::heap_allocation() (iserializer.hpp:268)
==3099378==    by 0x1A6D17: boost::archive::detail::pointer_iserializer<boost::archive::text_iarchive, Node<2u> >::heap_allocation() const (iserializer.hpp:293)
==3099378==    by 0x62DE830: ??? (in /usr/lib/x86_64-linux-gnu/libboost_serialization.so.1.74.0)
==3099378==    by 0x18DBCB: void boost::archive::detail::load_pointer_type<boost::archive::text_iarchive>::invoke<Node<2u>*>(boost::archive::text_iarchive&, Node<2u>*&) (iserializer.hpp:541)
==3099378==    by 0x18D5BC: void boost::archive::load<boost::archive::text_iarchive, Node<2u>*>(boost::archive::text_iarchive&, Node<2u>*&) (iserializer.hpp:624)
==3099378==    by 0x18D125: void boost::archive::detail::common_iarchive<boost::archive::text_iarchive>::load_override<Node<2u>*>(Node<2u>*&) (common_iarchive.hpp:67)
==3099378==    by 0x18CBF2: void boost::archive::basic_text_iarchive<boost::archive::text_iarchive>::load_override<Node<2u>*>(Node<2u>*&) (basic_text_iarchive.hpp:70)
==3099378==    by 0x18C612: void boost::archive::text_iarchive_impl<boost::archive::text_iarchive>::load_override<Node<2u>*>(Node<2u>*&) (text_iarchive.hpp:82)
==3099378==    by 0x18C025: boost::archive::text_iarchive& boost::archive::detail::interface_iarchive<boost::archive::text_iarchive>::operator>><Node<2u>*>(Node<2u>*&) (interface_iarchive.hpp:68)
==3099378==    by 0x18B957: boost::archive::text_iarchive& boost::archive::detail::interface_iarchive<boost::archive::text_iarchive>::operator&<Node<2u>*>(Node<2u>*&) (interface_iarchive.hpp:75)
==3099378==    by 0x18B276: void boost::serialization::load_construct_data<boost::archive::text_iarchive, 2u>(boost::archive::text_iarchive&, Edge<2u>*, unsigned int) (Edge.hpp:270)
==3099378==    by 0x18A955: void boost::serialization::load_construct_data_adl<boost::archive::text_iarchive, Edge<2u> >(boost::archive::text_iarchive&, Edge<2u>*, unsigned int) (serialization.hpp:140)
==3099378==    by 0x189F55: boost::archive::detail::pointer_iserializer<boost::archive::text_iarchive, Edge<2u> >::load_object_ptr(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:340)
==3099378==    by 0x62DE9F4: ??? (in /usr/lib/x86_64-linux-gnu/libboost_serialization.so.1.74.0)
==3099378==    by 0x1875F4: void boost::archive::detail::load_pointer_type<boost::archive::text_iarchive>::invoke<Edge<2u>*>(boost::archive::text_iarchive&, Edge<2u>*&) (iserializer.hpp:541)
==3099378==    by 0x18650A: void boost::archive::load<boost::archive::text_iarchive, Edge<2u>*>(boost::archive::text_iarchive&, Edge<2u>*&) (iserializer.hpp:624)
==3099378==    by 0x184D77: void boost::archive::detail::common_iarchive<boost::archive::text_iarchive>::load_override<Edge<2u>*>(Edge<2u>*&) (common_iarchive.hpp:67)
==3099378==    by 0x182EFC: void boost::archive::basic_text_iarchive<boost::archive::text_iarchive>::load_override<Edge<2u>*>(Edge<2u>*&) (basic_text_iarchive.hpp:70)
==3099378==    by 0x1803E8: void boost::archive::text_iarchive_impl<boost::archive::text_iarchive>::load_override<Edge<2u>*>(Edge<2u>*&) (text_iarchive.hpp:82)
==3099378==    by 0x17D5F7: boost::archive::text_iarchive& boost::archive::detail::interface_iarchive<boost::archive::text_iarchive>::operator>><Edge<2u>*>(Edge<2u>*&) (interface_iarchive.hpp:68)
==3099378==    by 0x1771AE: TestEdge::TestArchiveEdge() (TestEdge.hpp:242)
==3099378==    by 0x17BAD0: TestDescription_TestEdge_TestArchiveEdge::runTest() (TestEdge.cpp:43)
==3099378==    by 0x169E5E: CxxTest::RealTestDescription::run() (RealDescriptions.cpp:96)
==3099378==    by 0x16DFF8: CxxTest::TestRunner::runTest(CxxTest::TestDescription&) (TestRunner.h:74)
==3099378==    by 0x16DEDD: CxxTest::TestRunner::runSuite(CxxTest::SuiteDescription&) (TestRunner.h:61)
==3099378==    by 0x16DD83: CxxTest::TestRunner::runWorld() (TestRunner.h:46)
==3099378==    by 0x16DBEA: CxxTest::TestRunner::runAllTests(CxxTest::TestListener&) (TestRunner.h:23)
==3099378==    by 0x16E281: CxxTest::ErrorFormatter::run() (ErrorFormatter.h:47)
==3099378==    by 0x168B50: main (TestEdge.cpp:19)
==3099378== 
{
   <insert_a_suppression_name_here>
   Memcheck:Leak
   match-leak-kinds: definite
   fun:_Znwm
   fun:_ZN5boost7archive6detail15heap_allocationI4NodeILj2EEE24doesnt_have_new_operator10invoke_newEv
   fun:_ZN5boost7archive6detail15heap_allocationI4NodeILj2EEE10invoke_newEv
   fun:_ZN5boost7archive6detail15heap_allocationI4NodeILj2EEEC1Ev
   fun:_ZNK5boost7archive6detail19pointer_iserializerINS0_13text_iarchiveE4NodeILj2EEE15heap_allocationEv
   obj:/usr/lib/x86_64-linux-gnu/libboost_serialization.so.1.74.0
   fun:_ZN5boost7archive6detail17load_pointer_typeINS0_13text_iarchiveEE6invokeIP4NodeILj2EEEEvRS3_RT_
   fun:_ZN5boost7archive4loadINS0_13text_iarchiveEP4NodeILj2EEEEvRT_RT0_
   fun:_ZN5boost7archive6detail15common_iarchiveINS0_13text_iarchiveEE13load_overrideIP4NodeILj2EEEEvRT_
   fun:_ZN5boost7archive19basic_text_iarchiveINS0_13text_iarchiveEE13load_overrideIP4NodeILj2EEEEvRT_
   fun:_ZN5boost7archive18text_iarchive_implINS0_13text_iarchiveEE13load_overrideIP4NodeILj2EEEEvRT_
   fun:_ZN5boost7archive6detail18interface_iarchiveINS0_13text_iarchiveEErsIP4NodeILj2EEEERS3_RT_
   fun:_ZN5boost7archive6detail18interface_iarchiveINS0_13text_iarchiveEEanIP4NodeILj2EEEERS3_RT_
   fun:_ZN5boost13serialization19load_construct_dataINS_7archive13text_iarchiveELj2EEEvRT_P4EdgeIXT0_EEj
   fun:_ZN5boost13serialization23load_construct_data_adlINS_7archive13text_iarchiveE4EdgeILj2EEEEvRT_PT0_j
   fun:_ZNK5boost7archive6detail19pointer_iserializerINS0_13text_iarchiveE4EdgeILj2EEE15load_object_ptrERNS1_14basic_iarchiveEPvj
   obj:/usr/lib/x86_64-linux-gnu/libboost_serialization.so.1.74.0
   fun:_ZN5boost7archive6detail17load_pointer_typeINS0_13text_iarchiveEE6invokeIP4EdgeILj2EEEEvRS3_RT_
   fun:_ZN5boost7archive4loadINS0_13text_iarchiveEP4EdgeILj2EEEEvRT_RT0_
   fun:_ZN5boost7archive6detail15common_iarchiveINS0_13text_iarchiveEE13load_overrideIP4EdgeILj2EEEEvRT_
   fun:_ZN5boost7archive19basic_text_iarchiveINS0_13text_iarchiveEE13load_overrideIP4EdgeILj2EEEEvRT_
   fun:_ZN5boost7archive18text_iarchive_implINS0_13text_iarchiveEE13load_overrideIP4EdgeILj2EEEEvRT_
   fun:_ZN5boost7archive6detail18interface_iarchiveINS0_13text_iarchiveEErsIP4EdgeILj2EEEERS3_RT_
   fun:_ZN8TestEdge15TestArchiveEdgeEv
   fun:_ZN40TestDescription_TestEdge_TestArchiveEdge7runTestEv
   fun:_ZN7CxxTest19RealTestDescription3runEv
   fun:_ZN7CxxTest10TestRunner7runTestERNS_15TestDescriptionE
   fun:_ZN7CxxTest10TestRunner8runSuiteERNS_16SuiteDescriptionE
   fun:_ZN7CxxTest10TestRunner8runWorldEv
   fun:_ZN7CxxTest10TestRunner11runAllTestsERNS_12TestListenerE
   fun:_ZN7CxxTest14ErrorFormatter3runEv
   fun:main
}
==3099378== 552 bytes in 1 blocks are definitely lost in loss record 86 of 116
==3099378==    at 0x484DA83: calloc (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so)
==3099378==    by 0x106D9C13: ???
==3099378==    by 0x106DA22C: ???
==3099378==    by 0x1064D4B7: ???
==3099378==    by 0x76D015A: ompi_proc_complete_init (in /usr/lib/x86_64-linux-gnu/libmpi.so.40.30.2)
==3099378==    by 0x776AA97: ompi_mpi_init (in /usr/lib/x86_64-linux-gnu/libmpi.so.40.30.2)
==3099378==    by 0x7703D7A: PMPI_Init_thread (in /usr/lib/x86_64-linux-gnu/libmpi.so.40.30.2)
==3099378==    by 0x63FAD38: PetscInitialize (pinit.c:924)
==3099378==    by 0x626A58B: PetscSetupUtils::InitialisePetsc() (PetscSetupUtils.cpp:80)
==3099378==    by 0x626A5D9: PetscSetupUtils::CommonSetup() (PetscSetupUtils.cpp:88)
==3099378==    by 0x171B4D: PetscSetup::setUpWorld() (FakePetscSetup.hpp:70)
==3099378==    by 0x16A863: CxxTest::RealWorldDescription::setUp() (RealDescriptions.cpp:266)
==3099378==    by 0x16DD4A: CxxTest::TestRunner::runWorld() (TestRunner.h:43)
==3099378==    by 0x16DBEA: CxxTest::TestRunner::runAllTests(CxxTest::TestListener&) (TestRunner.h:23)
==3099378==    by 0x16E281: CxxTest::ErrorFormatter::run() (ErrorFormatter.h:47)
==3099378==    by 0x168B50: main (TestEdge.cpp:19)
==3099378== 
{
   <insert_a_suppression_name_here>
   Memcheck:Leak
   match-leak-kinds: definite
   fun:calloc
   obj:*
   obj:*
   obj:*
   fun:ompi_proc_complete_init
   fun:ompi_mpi_init
   fun:PMPI_Init_thread
   fun:PetscInitialize
   fun:_ZN15PetscSetupUtils15InitialisePetscEv
   fun:_ZN15PetscSetupUtils11CommonSetupEv
   fun:_ZN10PetscSetup10setUpWorldEv
   fun:_ZN7CxxTest20RealWorldDescription5setUpEv
   fun:_ZN7CxxTest10TestRunner8runWorldEv
   fun:_ZN7CxxTest10TestRunner11runAllTestsERNS_12TestListenerE
   fun:_ZN7CxxTest14ErrorFormatter3runEv
   fun:main
}
==3099378== 784 (304 direct, 480 indirect) bytes in 1 blocks are definitely lost in loss record 102 of 116
==3099378==    at 0x4849013: operator new(unsigned long) (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so)
==3099378==    by 0x172593: TestEdge::TestEdgeInitialisation() (TestEdge.hpp:103)
==3099378==    by 0x17B9FC: TestDescription_TestEdge_TestEdgeInitialisation::runTest() (TestEdge.cpp:31)
==3099378==    by 0x169E5E: CxxTest::RealTestDescription::run() (RealDescriptions.cpp:96)
==3099378==    by 0x16DFF8: CxxTest::TestRunner::runTest(CxxTest::TestDescription&) (TestRunner.h:74)
==3099378==    by 0x16DEDD: CxxTest::TestRunner::runSuite(CxxTest::SuiteDescription&) (TestRunner.h:61)
==3099378==    by 0x16DD83: CxxTest::TestRunner::runWorld() (TestRunner.h:46)
==3099378==    by 0x16DBEA: CxxTest::TestRunner::runAllTests(CxxTest::TestListener&) (TestRunner.h:23)
==3099378==    by 0x16E281: CxxTest::ErrorFormatter::run() (ErrorFormatter.h:47)
==3099378==    by 0x168B50: main (TestEdge.cpp:19)
==3099378== 
{
   <insert_a_suppression_name_here>
   Memcheck:Leak
   match-leak-kinds: definite
   fun:_Znwm
   fun:_ZN8TestEdge22TestEdgeInitialisationEv
   fun:_ZN47TestDescription_TestEdge_TestEdgeInitialisation7runTestEv
   fun:_ZN7CxxTest19RealTestDescription3runEv
   fun:_ZN7CxxTest10TestRunner7runTestERNS_15TestDescriptionE
   fun:_ZN7CxxTest10TestRunner8runSuiteERNS_16SuiteDescriptionE
   fun:_ZN7CxxTest10TestRunner8runWorldEv
   fun:_ZN7CxxTest10TestRunner11runAllTestsERNS_12TestListenerE
   fun:_ZN7CxxTest14ErrorFormatter3runEv
   fun:main
}
==3099378== 2,672 (48 direct, 2,624 indirect) bytes in 1 blocks are definitely lost in loss record 108 of 116
==3099378==    at 0x4849013: operator new(unsigned long) (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so)
==3099378==    by 0x57277E4: __gnu_cxx::new_allocator<std::_Rb_tree_node<std::pair<std::pair<unsigned int, unsigned int> const, Edge<2u>*> > >::allocate(unsigned long, void const*) (new_allocator.h:127)
==3099378==    by 0x572754F: std::allocator_traits<std::allocator<std::_Rb_tree_node<std::pair<std::pair<unsigned int, unsigned int> const, Edge<2u>*> > > >::allocate(std::allocator<std::_Rb_tree_node<std::pair<std::pair<unsigned int, unsigned int> const, Edge<2u>*> > >&, unsigned long) (alloc_traits.h:464)
==3099378==    by 0x57271AE: std::_Rb_tree<std::pair<unsigned int, unsigned int>, std::pair<std::pair<unsigned int, unsigned int> const, Edge<2u>*>, std::_Select1st<std::pair<std::pair<unsigned int, unsigned int> const, Edge<2u>*> >, std::less<std::pair<unsigned int, unsigned int> >, std::allocator<std::pair<std::pair<unsigned int, unsigned int> const, Edge<2u>*> > >::_M_get_node() (stl_tree.h:561)
==3099378==    by 0x5826726: std::_Rb_tree_node<std::pair<std::pair<unsigned int, unsigned int> const, Edge<2u>*> >* std::_Rb_tree<std::pair<unsigned int, unsigned int>, std::pair<std::pair<unsigned int, unsigned int> const, Edge<2u>*>, std::_Select1st<std::pair<std::pair<unsigned int, unsigned int> const, Edge<2u>*> >, std::less<std::pair<unsigned int, unsigned int> >, std::allocator<std::pair<std::pair<unsigned int, unsigned int> const, Edge<2u>*> > >::_M_create_node<std::piecewise_construct_t const&, std::tuple<std::pair<unsigned int, unsigned int> const&>, std::tuple<> >(std::piecewise_construct_t const&, std::tuple<std::pair<unsigned int, unsigned int> const&>&&, std::tuple<>&&) (stl_tree.h:611)
==3099378==    by 0x5824694: std::_Rb_tree_iterator<std::pair<std::pair<unsigned int, unsigned int> const, Edge<2u>*> > std::_Rb_tree<std::pair<unsigned int, unsigned int>, std::pair<std::pair<unsigned int, unsigned int> const, Edge<2u>*>, std::_Select1st<std::pair<std::pair<unsigned int, unsigned int> const, Edge<2u>*> >, std::less<std::pair<unsigned int, unsigned int> >, std::allocator<std::pair<std::pair<unsigned int, unsigned int> const, Edge<2u>*> > >::_M_emplace_hint_unique<std::piecewise_construct_t const&, std::tuple<std::pair<unsigned int, unsigned int> const&>, std::tuple<> >(std::_Rb_tree_const_iterator<std::pair<std::pair<unsigned int, unsigned int> const, Edge<2u>*> >, std::piecewise_construct_t const&, std::tuple<std::pair<unsigned int, unsigned int> const&>&&, std::tuple<>&&) (stl_tree.h:2431)
==3099378==    by 0x5822937: std::map<std::pair<unsigned int, unsigned int>, Edge<2u>*, std::less<std::pair<unsigned int, unsigned int> >, std::allocator<std::pair<std::pair<unsigned int, unsigned int> const, Edge<2u>*> > >::operator[](std::pair<unsigned int, unsigned int> const&) (stl_map.h:501)
==3099378==    by 0x5820E5B: EdgeHelper<2u>::GetEdgeFromNodes(Node<2u>*, Node<2u>*) (EdgeHelper.cpp:80)
==3099378==    by 0x5820F17: EdgeHelper<2u>::GetEdgeFromNodes(unsigned int, Node<2u>*, Node<2u>*) (EdgeHelper.cpp:96)
==3099378==    by 0x5860BAF: MutableElement<2u, 2u>::BuildEdges() (MutableElement.cpp:299)
==3099378==    by 0x5BC866E: VertexMesh<2u, 2u>::GenerateEdgesFromElements(std::vector<VertexElement<2u, 2u>*, std::allocator<VertexElement<2u, 2u>*> >&) (VertexMesh.cpp:506)
==3099378==    by 0x5BC968D: VertexMesh<2u, 2u>::VertexMesh(std::vector<Node<2u>*, std::allocator<Node<2u>*> >, std::vector<VertexElement<2u, 2u>*, std::allocator<VertexElement<2u, 2u>*> >) (VertexMesh.cpp:101)
==3099378==    by 0x172943: TestEdge::TestEdgeInitialisation() (TestEdge.hpp:129)
==3099378==    by 0x17B9FC: TestDescription_TestEdge_TestEdgeInitialisation::runTest() (TestEdge.cpp:31)
==3099378==    by 0x169E5E: CxxTest::RealTestDescription::run() (RealDescriptions.cpp:96)
==3099378==    by 0x16DFF8: CxxTest::TestRunner::runTest(CxxTest::TestDescription&) (TestRunner.h:74)
==3099378==    by 0x16DEDD: CxxTest::TestRunner::runSuite(CxxTest::SuiteDescription&) (TestRunner.h:61)
==3099378==    by 0x16DD83: CxxTest::TestRunner::runWorld() (TestRunner.h:46)
==3099378==    by 0x16DBEA: CxxTest::TestRunner::runAllTests(CxxTest::TestListener&) (TestRunner.h:23)
==3099378==    by 0x16E281: CxxTest::ErrorFormatter::run() (ErrorFormatter.h:47)
==3099378==    by 0x168B50: main (TestEdge.cpp:19)
==3099378== 
{
   <insert_a_suppression_name_here>
   Memcheck:Leak
   match-leak-kinds: definite
   fun:_Znwm
   fun:_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKS2_IjjEP4EdgeILj2EEEEE8allocateEmPKv
   fun:_ZNSt16allocator_traitsISaISt13_Rb_tree_nodeISt4pairIKS1_IjjEP4EdgeILj2EEEEEE8allocateERS9_m
   fun:_ZNSt8_Rb_treeISt4pairIjjES0_IKS1_P4EdgeILj2EEESt10_Select1stIS6_ESt4lessIS1_ESaIS6_EE11_M_get_nodeEv
   fun:_ZNSt8_Rb_treeISt4pairIjjES0_IKS1_P4EdgeILj2EEESt10_Select1stIS6_ESt4lessIS1_ESaIS6_EE14_M_create_nodeIJRKSt21piecewise_construct_tSt5tupleIJRS2_EESH_IJEEEEEPSt13_Rb_tree_nodeIS6_EDpOT_
   fun:_ZNSt8_Rb_treeISt4pairIjjES0_IKS1_P4EdgeILj2EEESt10_Select1stIS6_ESt4lessIS1_ESaIS6_EE22_M_emplace_hint_uniqueIJRKSt21piecewise_construct_tSt5tupleIJRS2_EESH_IJEEEEESt17_Rb_tree_iteratorIS6_ESt23_Rb_tree_const_iteratorIS6_EDpOT_
   fun:_ZNSt3mapISt4pairIjjEP4EdgeILj2EESt4lessIS1_ESaIS0_IKS1_S4_EEEixERS7_
   fun:_ZN10EdgeHelperILj2EE16GetEdgeFromNodesEP4NodeILj2EES3_
   fun:_ZN10EdgeHelperILj2EE16GetEdgeFromNodesEjP4NodeILj2EES3_
   fun:_ZN14MutableElementILj2ELj2EE10BuildEdgesEv
   fun:_ZN10VertexMeshILj2ELj2EE25GenerateEdgesFromElementsERSt6vectorIP13VertexElementILj2ELj2EESaIS4_EE
   fun:_ZN10VertexMeshILj2ELj2EEC1ESt6vectorIP4NodeILj2EESaIS4_EES1_IP13VertexElementILj2ELj2EESaIS9_EE
   fun:_ZN8TestEdge22TestEdgeInitialisationEv
   fun:_ZN47TestDescription_TestEdge_TestEdgeInitialisation7runTestEv
   fun:_ZN7CxxTest19RealTestDescription3runEv
   fun:_ZN7CxxTest10TestRunner7runTestERNS_15TestDescriptionE
   fun:_ZN7CxxTest10TestRunner8runSuiteERNS_16SuiteDescriptionE
   fun:_ZN7CxxTest10TestRunner8runWorldEv
   fun:_ZN7CxxTest10TestRunner11runAllTestsERNS_12TestListenerE
   fun:_ZN7CxxTest14ErrorFormatter3runEv
   fun:main
}
==3099378== 3,664 (144 direct, 3,520 indirect) bytes in 1 blocks are definitely lost in loss record 109 of 116
==3099378==    at 0x4849013: operator new(unsigned long) (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so)
==3099378==    by 0x17548E: TestEdge::TestEdgeProperties() (TestEdge.hpp:196)
==3099378==    by 0x17BA66: TestDescription_TestEdge_TestEdgeProperties::runTest() (TestEdge.cpp:37)
==3099378==    by 0x169E5E: CxxTest::RealTestDescription::run() (RealDescriptions.cpp:96)
==3099378==    by 0x16DFF8: CxxTest::TestRunner::runTest(CxxTest::TestDescription&) (TestRunner.h:74)
==3099378==    by 0x16DEDD: CxxTest::TestRunner::runSuite(CxxTest::SuiteDescription&) (TestRunner.h:61)
==3099378==    by 0x16DD83: CxxTest::TestRunner::runWorld() (TestRunner.h:46)
==3099378==    by 0x16DBEA: CxxTest::TestRunner::runAllTests(CxxTest::TestListener&) (TestRunner.h:23)
==3099378==    by 0x16E281: CxxTest::ErrorFormatter::run() (ErrorFormatter.h:47)
==3099378==    by 0x168B50: main (TestEdge.cpp:19)
==3099378== 
{
   <insert_a_suppression_name_here>
   Memcheck:Leak
   match-leak-kinds: definite
   fun:_Znwm
   fun:_ZN8TestEdge18TestEdgePropertiesEv
   fun:_ZN43TestDescription_TestEdge_TestEdgeProperties7runTestEv
   fun:_ZN7CxxTest19RealTestDescription3runEv
   fun:_ZN7CxxTest10TestRunner7runTestERNS_15TestDescriptionE
   fun:_ZN7CxxTest10TestRunner8runSuiteERNS_16SuiteDescriptionE
   fun:_ZN7CxxTest10TestRunner8runWorldEv
   fun:_ZN7CxxTest10TestRunner11runAllTestsERNS_12TestListenerE
   fun:_ZN7CxxTest14ErrorFormatter3runEv
   fun:main
}
==3099378== 84,459 (136 direct, 84,323 indirect) bytes in 1 blocks are definitely lost in loss record 113 of 116
==3099378==    at 0x484DA83: calloc (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so)
==3099378==    by 0x1184C74E: ???
==3099378==    by 0x1184CE0B: ???
==3099378==    by 0x1184FF56: ???
==3099378==    by 0x1184565D: ???
==3099378==    by 0x11845FA3: ???
==3099378==    by 0xB85FF05: ??? (in /usr/lib/x86_64-linux-gnu/libhwloc.so.15.5.2)
==3099378==    by 0xB83BAE8: hwloc_topology_load (in /usr/lib/x86_64-linux-gnu/libhwloc.so.15.5.2)
==3099378==    by 0xB7ECCB5: opal_hwloc_base_get_topology (in /usr/lib/x86_64-linux-gnu/libopen-pal.so.40.30.2)
==3099378==    by 0xB719EF6: orte_ess_base_proc_binding (in /usr/lib/x86_64-linux-gnu/libopen-rte.so.40.30.2)
==3099378==    by 0xFE0BF03: ???
==3099378==    by 0xB74E4CB: orte_init (in /usr/lib/x86_64-linux-gnu/libopen-rte.so.40.30.2)
==3099378==    by 0x776A418: ompi_mpi_init (in /usr/lib/x86_64-linux-gnu/libmpi.so.40.30.2)
==3099378==    by 0x7703D7A: PMPI_Init_thread (in /usr/lib/x86_64-linux-gnu/libmpi.so.40.30.2)
==3099378==    by 0x63FAD38: PetscInitialize (pinit.c:924)
==3099378==    by 0x626A58B: PetscSetupUtils::InitialisePetsc() (PetscSetupUtils.cpp:80)
==3099378==    by 0x626A5D9: PetscSetupUtils::CommonSetup() (PetscSetupUtils.cpp:88)
==3099378==    by 0x171B4D: PetscSetup::setUpWorld() (FakePetscSetup.hpp:70)
==3099378==    by 0x16A863: CxxTest::RealWorldDescription::setUp() (RealDescriptions.cpp:266)
==3099378==    by 0x16DD4A: CxxTest::TestRunner::runWorld() (TestRunner.h:43)
==3099378==    by 0x16DBEA: CxxTest::TestRunner::runAllTests(CxxTest::TestListener&) (TestRunner.h:23)
==3099378==    by 0x16E281: CxxTest::ErrorFormatter::run() (ErrorFormatter.h:47)
==3099378==    by 0x168B50: main (TestEdge.cpp:19)
==3099378== 
{
   <insert_a_suppression_name_here>
   Memcheck:Leak
   match-leak-kinds: definite
   fun:calloc
   obj:*
   obj:*
   obj:*
   obj:*
   obj:*
   obj:/usr/lib/x86_64-linux-gnu/libhwloc.so.15.5.2
   fun:hwloc_topology_load
   fun:opal_hwloc_base_get_topology
   fun:orte_ess_base_proc_binding
   obj:*
   fun:orte_init
   fun:ompi_mpi_init
   fun:PMPI_Init_thread
   fun:PetscInitialize
   fun:_ZN15PetscSetupUtils15InitialisePetscEv
   fun:_ZN15PetscSetupUtils11CommonSetupEv
   fun:_ZN10PetscSetup10setUpWorldEv
   fun:_ZN7CxxTest20RealWorldDescription5setUpEv
   fun:_ZN7CxxTest10TestRunner8runWorldEv
   fun:_ZN7CxxTest10TestRunner11runAllTestsERNS_12TestListenerE
   fun:_ZN7CxxTest14ErrorFormatter3runEv
   fun:main
}
==3099378== LEAK SUMMARY:
==3099378==    definitely lost: 1,728 bytes in 9 blocks
==3099378==    indirectly lost: 8,416 bytes in 110 blocks
==3099378==      possibly lost: 0 bytes in 0 blocks
==3099378==    still reachable: 1,531 bytes in 6 blocks
==3099378==         suppressed: 696,668 bytes in 9,353 blocks
==3099378== Reachable blocks (those to which a pointer was found) are not shown.
==3099378== To see them, rerun with: --leak-check=full --show-leak-kinds=all
==3099378== 
==3099378== Use --track-origins=yes to see where uninitialised values come from
==3099378== For lists of detected and suppressed errors, rerun with: -s
==3099378== ERROR SUMMARY: 12 errors from 12 contexts (suppressed: 32 from 32)
