Was will mir valgrind alles sagen ?



  • Servus,

    ich nutzte valgrind zum ersten Mal und dachte bis jetzt mein Programm läuft halbwegs. Ich bekam nun folgende Antwort von valgrind und bedanke mich schon mal, falls mir einer sagt, auf welchen Teil der Antwort es besonders ankommt ... ich schaue derweil im Internet weiter, um weitere Interpretationen zu valgrind-Logs zu finden ... Danke vorab!

    Und hier die Konsolenausgabe:

    joba@joba-laptop:~/Desktop/h2r$ valgrind --leak-check=yes ./h2r --pathtomsa /home/joba/Desktop/h2r/alignments/1JGX_L.fas --msaname 1JGX_L --pathtodesktop /home/joba/Desktop/ --outputdirectory /home/joba/Desktop/h2r/results/
    ==22467== Memcheck, a memory error detector
    ==22467== Copyright (C) 2002-2009, and GNU GPL'd, by Julian Seward et al.
    ==22467== Using Valgrind-3.6.0.SVN-Debian and LibVEX; rerun with -h for copyright info
    ==22467== Command: ./h2r --pathtomsa /home/joba/Desktop/h2r/alignments/1JGX_L.fas --msaname 1JGX_L --pathtodesktop /home/joba/Desktop/ --outputdirectory /home/joba/Desktop/h2r/results/
    ==22467== 
     ------------------------------------------------------------------
    / *** Start CPP-Anwendung *** 
    | 
    | ***************************************
    | * H2r                                 *
    | *  Version 1.0             15.05.2011 *
    | ***************************************
    | 
    | Runtime-Flags: 
    | --pathtomsa /home/joba/Desktop/h2r/alignments/1JGX_L.fas --msaname 1JGX_L --pathtodesktop /home/joba/Desktop/ --outputdirectory /home/joba/Desktop/h2r/results/ 
    | ... Flags verarbeitet! 
    | *** START der Berechnung ...
    | ... MSA gebildet!
    | ... ... Laufzeit: 7.49 Sekunden;
    | ... -> MSA-Eigenschaften vor Filter (631 Sequenzen, 281 Spalten);
    | ... filtere MSA ... 
    | ... MSA gefiltert!
    | ... -> MSA-Eigenschaften nach Filter (121 Sequenzen, 281 Spalten);
    | ... ... Laufzeit: 90.36 Sekunden;
    | ... mische MSA und berechne Mixed-MSA ... 
    | ... MSA gemischt!
    | ... ... Laufzeit: 421.31 Sekunden;
    | ... gemischtes MSA berechnet!
    | ... ... Laufzeit: 1627.37 Sekunden;
    | ... ... Laufzeit (nach Sortiervorgang): 1629.55 Sekunden;
    | ... schreibe Ergebnisdatei: 'U-Wert-Cutoff;Sequenzahl;WichtigeSpalten;' in Datei;
    | *** *** >>> 99. Perzentil der U-Werte: 0.177891; Sequenzen: 121; Spalten: 281
    | --------------------------- 
    | *** ENDE CPP-Anwendung *** 
     \ ---------------------------------------------------------------
    ==22467== 
    ==22467== HEAP SUMMARY:
    ==22467==     in use at exit: 262,799 bytes in 1,018 blocks
    ==22467==   total heap usage: 6,366,477 allocs, 6,365,459 frees, 362,909,315 bytes allocated
    ==22467== 
    ==22467== 531 bytes in 2 blocks are definitely lost in loss record 1 of 2
    ==22467==    at 0x402569A: operator new(unsigned int) (vg_replace_malloc.c:255)
    ==22467==    by 0x806DF14: void seqan::allocate<seqan::String<char, seqan::Alloc<void> >, char, unsigned int, seqan::AllocateStorage_>(seqan::String<char, seqan::Alloc<void> >&, char*&, unsigned int, seqan::Tag<seqan::AllocateStorage_>) (basic_allocator_interface.h:199)
    ==22467==    by 0x806D62C: seqan::Value<seqan::String<char, seqan::Alloc<void> >, 0>::Type* seqan::_allocateStorage<char, void>(seqan::String<char, seqan::Alloc<void> >&, unsigned int) (string_alloc.h:340)
    ==22467==    by 0x806CE66: seqan::Value<seqan::String<char, seqan::Alloc<void> >, 0>::Type* seqan::_reallocateStorage<char, seqan::Alloc<void>, unsigned int>(seqan::String<char, seqan::Alloc<void> >&, unsigned int) (string_base.h:1430)
    ==22467==    by 0x806BC38: seqan::Value<seqan::String<char, seqan::Alloc<void> >, 0>::Type* seqan::_reallocateStorage<char, seqan::Alloc<void>, unsigned int>(seqan::String<char, seqan::Alloc<void> >&, unsigned int, seqan::Tag<seqan::TagGenerous_>) (string_base.h:1483)
    ==22467==    by 0x806C42C: seqan::Size<seqan::String<char, seqan::Alloc<void> > >::Type seqan::ClearSpaceExpandStringBase_<seqan::Tag<seqan::TagGenerous_> const>::_clearSpace_<seqan::String<char, seqan::Alloc<void> > >(seqan::String<char, seqan::Alloc<void> >&, seqan::Size<seqan::String<char, seqan::Alloc<void> > >::Type) (string_base.h:528)
    ==22467==    by 0x806AFFB: seqan::Size<seqan::String<char, seqan::Alloc<void> > >::Type seqan::_clearSpace<char, seqan::Alloc<void>, unsigned int, seqan::TagGenerous_>(seqan::String<char, seqan::Alloc<void> >&, unsigned int, seqan::Tag<seqan::TagGenerous_>) (string_base.h:726)
    ==22467==    by 0x80692DE: void seqan::AssignString_<seqan::Tag<seqan::TagGenerous_> const>::assign_<seqan::String<char, seqan::Alloc<void> >, seqan::String<char, seqan::Alloc<void> > const>(seqan::String<char, seqan::Alloc<void> >&, seqan::String<char, seqan::Alloc<void> > const&) (string_base.h:871)
    ==22467==    by 0x8065FAB: void seqan::assign<char, seqan::Alloc<void>, seqan::String<char, seqan::Alloc<void> >, seqan::TagGenerous_>(seqan::String<char, seqan::Alloc<void> >&, seqan::String<char, seqan::Alloc<void> > const&, seqan::Tag<seqan::TagGenerous_>) (string_base.h:920)
    ==22467==    by 0x8062FFB: void seqan::assign<char, seqan::Alloc<void>, seqan::String<char, seqan::Alloc<void> > >(seqan::String<char, seqan::Alloc<void> >&, seqan::String<char, seqan::Alloc<void> > const&) (string_base.h:852)
    ==22467==    by 0x8060304: seqan::String<char, seqan::Alloc<void> >::String(seqan::String<char, seqan::Alloc<void> > const&) (string_alloc.h:109)
    ==22467==    by 0x806C047: void seqan::ValueConstructor_::construct<seqan::Iter<seqan::String<seqan::String<char, seqan::Alloc<void> >, seqan::Alloc<void> >, seqan::AdaptorIterator<seqan::String<char, seqan::Alloc<void> >*, seqan::Tag<seqan::Default_> const> >, seqan::String<char, seqan::Alloc<void> > >(seqan::Iter<seqan::String<seqan::String<char, seqan::Alloc<void> >, seqan::Alloc<void> >, seqan::AdaptorIterator<seqan::String<char, seqan::Alloc<void> >*, seqan::Tag<seqan::Default_> const> >, seqan::String<char, seqan::Alloc<void> > const&) (basic_alphabet_interface.h:115)
    ==22467== 
    ==22467== 262,268 bytes in 1,016 blocks are definitely lost in loss record 2 of 2
    ==22467==    at 0x402569A: operator new(unsigned int) (vg_replace_malloc.c:255)
    ==22467==    by 0x806DF14: void seqan::allocate<seqan::String<char, seqan::Alloc<void> >, char, unsigned int, seqan::AllocateStorage_>(seqan::String<char, seqan::Alloc<void> >&, char*&, unsigned int, seqan::Tag<seqan::AllocateStorage_>) (basic_allocator_interface.h:199)
    ==22467==    by 0x806D62C: seqan::Value<seqan::String<char, seqan::Alloc<void> >, 0>::Type* seqan::_allocateStorage<char, void>(seqan::String<char, seqan::Alloc<void> >&, unsigned int) (string_alloc.h:340)
    ==22467==    by 0x806CE66: seqan::Value<seqan::String<char, seqan::Alloc<void> >, 0>::Type* seqan::_reallocateStorage<char, seqan::Alloc<void>, unsigned int>(seqan::String<char, seqan::Alloc<void> >&, unsigned int) (string_base.h:1430)
    ==22467==    by 0x806BC38: seqan::Value<seqan::String<char, seqan::Alloc<void> >, 0>::Type* seqan::_reallocateStorage<char, seqan::Alloc<void>, unsigned int>(seqan::String<char, seqan::Alloc<void> >&, unsigned int, seqan::Tag<seqan::TagGenerous_>) (string_base.h:1483)
    ==22467==    by 0x806C42C: seqan::Size<seqan::String<char, seqan::Alloc<void> > >::Type seqan::ClearSpaceExpandStringBase_<seqan::Tag<seqan::TagGenerous_> const>::_clearSpace_<seqan::String<char, seqan::Alloc<void> > >(seqan::String<char, seqan::Alloc<void> >&, seqan::Size<seqan::String<char, seqan::Alloc<void> > >::Type) (string_base.h:528)
    ==22467==    by 0x806AFFB: seqan::Size<seqan::String<char, seqan::Alloc<void> > >::Type seqan::_clearSpace<char, seqan::Alloc<void>, unsigned int, seqan::TagGenerous_>(seqan::String<char, seqan::Alloc<void> >&, unsigned int, seqan::Tag<seqan::TagGenerous_>) (string_base.h:726)
    ==22467==    by 0x80692DE: void seqan::AssignString_<seqan::Tag<seqan::TagGenerous_> const>::assign_<seqan::String<char, seqan::Alloc<void> >, seqan::String<char, seqan::Alloc<void> > const>(seqan::String<char, seqan::Alloc<void> >&, seqan::String<char, seqan::Alloc<void> > const&) (string_base.h:871)
    ==22467==    by 0x8065FAB: void seqan::assign<char, seqan::Alloc<void>, seqan::String<char, seqan::Alloc<void> >, seqan::TagGenerous_>(seqan::String<char, seqan::Alloc<void> >&, seqan::String<char, seqan::Alloc<void> > const&, seqan::Tag<seqan::TagGenerous_>) (string_base.h:920)
    ==22467==    by 0x8062FFB: void seqan::assign<char, seqan::Alloc<void>, seqan::String<char, seqan::Alloc<void> > >(seqan::String<char, seqan::Alloc<void> >&, seqan::String<char, seqan::Alloc<void> > const&) (string_base.h:852)
    ==22467==    by 0x8060304: seqan::String<char, seqan::Alloc<void> >::String(seqan::String<char, seqan::Alloc<void> > const&) (string_alloc.h:109)
    ==22467==    by 0x806C0AE: void seqan::ValueConstructor_::construct<seqan::String<char, seqan::Alloc<void> >*, seqan::String<char, seqan::Alloc<void> > >(seqan::String<char, seqan::Alloc<void> >*, seqan::String<char, seqan::Alloc<void> > const&) (basic_alphabet_interface.h:115)
    ==22467== 
    ==22467== LEAK SUMMARY:
    ==22467==    definitely lost: 262,799 bytes in 1,018 blocks
    ==22467==    indirectly lost: 0 bytes in 0 blocks
    ==22467==      possibly lost: 0 bytes in 0 blocks
    ==22467==    still reachable: 0 bytes in 0 blocks
    ==22467==         suppressed: 0 bytes in 0 blocks
    ==22467== 
    ==22467== For counts of detected and suppressed errors, rerun with: -v
    ==22467== ERROR SUMMARY: 2 errors from 2 contexts (suppressed: 18 from 7)
    

  • Mod

    Das heißt, die Klasse sequan hat ein Speicherloch. Beim Aufruf von seqan::ValueConstructor_::construct wird indirekt ein new aufgerufen (den genauen Callstack siehst du in der Ausgabe), zu dem niemals ein delete aufgerufen wird.

    Außerdem empfehle ich dir, noch mehr Checks zu aktivieren. valgrind kann so viel mehr als nur Speicherlöcher finden. Ich starte immer mit
    valgrind --tool=memcheck --leak-check=yes --show-reachable=yes --num-callers=20 --track-fds=yes ./meine_executable
    Und falls uninitialisierte Variablen gefunden werden, dann auch noch zusätzlich mit --track-origins=yes (aber nur dann, denn das wird damit doch arg langsam).



  • Okay danke SeppJ, habe das Programm direkt mal so aufgerufen wie von dir vorgeschlagen. Ich muss nun mal schauen, wie ich bei dieser Seqan-Sache vorgehen soll, denn die Klasse ist nicht von mir, soll aber eingesetzt werden - was würdet ihr da tun?

    BTW: hier ist einfach mal der Output was mir SeppJ's Aufrufvariante einbrachte, ich werde dann noch schauen, was ich selbst damit anfangen kann:

    joba@joba-laptop:~/Desktop/h2r$ valgrind --tool=memcheck --leak-check=yes --show-reachable=yes --num-callers=20 --track-fds=yes ./h2r --pathtomsa /home/joba/Desktop/h2r/alignments/1JGX_L.fas --msaname 1JGX_L --pathtodesktop /home/joba/Desktop/ --outputdirectory /home/joba/Desktop/h2r/results/
    ==22987== Memcheck, a memory error detector
    ==22987== Copyright (C) 2002-2009, and GNU GPL'd, by Julian Seward et al.
    ==22987== Using Valgrind-3.6.0.SVN-Debian and LibVEX; rerun with -h for copyright info
    ==22987== Command: ./h2r --pathtomsa /home/joba/Desktop/h2r/alignments/1JGX_L.fas --msaname 1JGX_L --pathtodesktop /home/joba/Desktop/ --outputdirectory /home/joba/Desktop/h2r/results/
    ==22987== 
     ------------------------------------------------------------------
    / *** Start CPP-Anwendung *** 
    | 
    | ***************************************
    | * H2r                                 *
    | *  Version 1.0             15.05.2011 *
    | ***************************************
    | 
    | Runtime-Flags: 
    | --pathtomsa /home/joba/Desktop/h2r/alignments/1JGX_L.fas --msaname 1JGX_L --pathtodesktop /home/joba/Desktop/ --outputdirectory /home/joba/Desktop/h2r/results/ 
    | ... Flags verarbeitet! 
    | *** START der Berechnung ...
    | ... MSA gebildet!
    | ... ... Laufzeit: 7.29 Sekunden;
    | ... -> MSA-Eigenschaften vor Filter (631 Sequenzen, 281 Spalten);
    | ... filtere MSA ... 
    | ... MSA gefiltert!
    | ... -> MSA-Eigenschaften nach Filter (121 Sequenzen, 281 Spalten);
    | ... ... Laufzeit: 83.75 Sekunden;
    | ... mische MSA und berechne Mixed-MSA ... 
    | ... MSA gemischt!
    | ... ... Laufzeit: 390.98 Sekunden;
    | ... gemischtes MSA berechnet!
    | ... ... Laufzeit: 1645.59 Sekunden;
    | ... ... Laufzeit (nach Sortiervorgang): 1648.05 Sekunden;
    | ... schreibe Ergebnisdatei: 'U-Wert-Cutoff;Sequenzahl;WichtigeSpalten;' in Datei;
    | *** *** >>> 99. Perzentil der U-Werte: 0.177495; Sequenzen: 121; Spalten: 281
    | --------------------------- 
    | *** ENDE CPP-Anwendung *** 
     \ ---------------------------------------------------------------
    ==22987== 
    ==22987== FILE DESCRIPTORS: 3 open at exit.
    ==22987== Open file descriptor 2: /dev/pts/3
    ==22987==    <inherited from parent>
    ==22987== 
    ==22987== Open file descriptor 1: /dev/pts/3
    ==22987==    <inherited from parent>
    ==22987== 
    ==22987== Open file descriptor 0: /dev/pts/3
    ==22987==    <inherited from parent>
    ==22987== 
    ==22987== 
    ==22987== HEAP SUMMARY:
    ==22987==     in use at exit: 262,799 bytes in 1,018 blocks
    ==22987==   total heap usage: 6,366,184 allocs, 6,365,166 frees, 362,902,283 bytes allocated
    ==22987== 
    ==22987== 109 bytes in 1 blocks are definitely lost in loss record 1 of 5
    ==22987==    at 0x402569A: operator new(unsigned int) (vg_replace_malloc.c:255)
    ==22987==    by 0x806DF14: void seqan::allocate<seqan::String<char, seqan::Alloc<void> >, char, unsigned int, seqan::AllocateStorage_>(seqan::String<char, seqan::Alloc<void> >&, char*&, unsigned int, seqan::Tag<seqan::AllocateStorage_>) (basic_allocator_interface.h:199)
    ==22987==    by 0x806D62C: seqan::Value<seqan::String<char, seqan::Alloc<void> >, 0>::Type* seqan::_allocateStorage<char, void>(seqan::String<char, seqan::Alloc<void> >&, unsigned int) (string_alloc.h:340)
    ==22987==    by 0x806CE66: seqan::Value<seqan::String<char, seqan::Alloc<void> >, 0>::Type* seqan::_reallocateStorage<char, seqan::Alloc<void>, unsigned int>(seqan::String<char, seqan::Alloc<void> >&, unsigned int) (string_base.h:1430)
    ==22987==    by 0x806BC38: seqan::Value<seqan::String<char, seqan::Alloc<void> >, 0>::Type* seqan::_reallocateStorage<char, seqan::Alloc<void>, unsigned int>(seqan::String<char, seqan::Alloc<void> >&, unsigned int, seqan::Tag<seqan::TagGenerous_>) (string_base.h:1483)
    ==22987==    by 0x806C42C: seqan::Size<seqan::String<char, seqan::Alloc<void> > >::Type seqan::ClearSpaceExpandStringBase_<seqan::Tag<seqan::TagGenerous_> const>::_clearSpace_<seqan::String<char, seqan::Alloc<void> > >(seqan::String<char, seqan::Alloc<void> >&, seqan::Size<seqan::String<char, seqan::Alloc<void> > >::Type) (string_base.h:528)
    ==22987==    by 0x806AFFB: seqan::Size<seqan::String<char, seqan::Alloc<void> > >::Type seqan::_clearSpace<char, seqan::Alloc<void>, unsigned int, seqan::TagGenerous_>(seqan::String<char, seqan::Alloc<void> >&, unsigned int, seqan::Tag<seqan::TagGenerous_>) (string_base.h:726)
    ==22987==    by 0x80692DE: void seqan::AssignString_<seqan::Tag<seqan::TagGenerous_> const>::assign_<seqan::String<char, seqan::Alloc<void> >, seqan::String<char, seqan::Alloc<void> > const>(seqan::String<char, seqan::Alloc<void> >&, seqan::String<char, seqan::Alloc<void> > const&) (string_base.h:871)
    ==22987==    by 0x8065FAB: void seqan::assign<char, seqan::Alloc<void>, seqan::String<char, seqan::Alloc<void> >, seqan::TagGenerous_>(seqan::String<char, seqan::Alloc<void> >&, seqan::String<char, seqan::Alloc<void> > const&, seqan::Tag<seqan::TagGenerous_>) (string_base.h:920)
    ==22987==    by 0x8062FFB: void seqan::assign<char, seqan::Alloc<void>, seqan::String<char, seqan::Alloc<void> > >(seqan::String<char, seqan::Alloc<void> >&, seqan::String<char, seqan::Alloc<void> > const&) (string_base.h:852)
    ==22987==    by 0x8060304: seqan::String<char, seqan::Alloc<void> >::String(seqan::String<char, seqan::Alloc<void> > const&) (string_alloc.h:109)
    ==22987==    by 0x806C047: void seqan::ValueConstructor_::construct<seqan::Iter<seqan::String<seqan::String<char, seqan::Alloc<void> >, seqan::Alloc<void> >, seqan::AdaptorIterator<seqan::String<char, seqan::Alloc<void> >*, seqan::Tag<seqan::Default_> const> >, seqan::String<char, seqan::Alloc<void> > >(seqan::Iter<seqan::String<seqan::String<char, seqan::Alloc<void> >, seqan::Alloc<void> >, seqan::AdaptorIterator<seqan::String<char, seqan::Alloc<void> >*, seqan::Tag<seqan::Default_> const> >, seqan::String<char, seqan::Alloc<void> > const&) (basic_alphabet_interface.h:115)
    ==22987==    by 0x806AD26: void seqan::valueConstruct<seqan::Iter<seqan::String<seqan::String<char, seqan::Alloc<void> >, seqan::Alloc<void> >, seqan::AdaptorIterator<seqan::String<char, seqan::Alloc<void> >*, seqan::Tag<seqan::Default_> const> >, seqan::String<char, seqan::Alloc<void> > >(seqan::Iter<seqan::String<seqan::String<char, seqan::Alloc<void> >, seqan::Alloc<void> >, seqan::AdaptorIterator<seqan::String<char, seqan::Alloc<void> >*, seqan::Tag<seqan::Default_> const> >, seqan::String<char, seqan::Alloc<void> > const&) (basic_alphabet_interface.h:204)
    ==22987==    by 0x8069004: void seqan::AppendValueToString_<seqan::Tag<seqan::TagGenerous_> const>::appendValue_<seqan::String<seqan::String<char, seqan::Alloc<void> >, seqan::Alloc<void> >, seqan::String<char, seqan::Alloc<void> > const>(seqan::String<seqan::String<char, seqan::Alloc<void> >, seqan::Alloc<void> >&, seqan::String<char, seqan::Alloc<void> > const&) (string_base.h:1216)
    ==22987==    by 0x8065DB1: void seqan::appendValue<seqan::String<char, seqan::Alloc<void> >, seqan::Alloc<void>, seqan::String<char, seqan::Alloc<void> >, seqan::TagGenerous_>(seqan::String<seqan::String<char, seqan::Alloc<void> >, seqan::Alloc<void> >&, seqan::String<char, seqan::Alloc<void> > const&, seqan::Tag<seqan::TagGenerous_>) (string_base.h:1236)
    ==22987==    by 0x8062C7D: void seqan::appendValue<seqan::String<char, seqan::Alloc<void> >, seqan::String<char, seqan::Alloc<void> >, seqan::TagGenerous_>(seqan::StringSet<seqan::String<char, seqan::Alloc<void> >, seqan::Owner<seqan::Tag<seqan::Default_> const> >&, seqan::String<char, seqan::Alloc<void> > const&, seqan::Tag<seqan::TagGenerous_> const&) (string_set_owner.h:132)
    ==22987==    by 0x805F9AF: void seqan::appendValue<seqan::StringSet<seqan::String<char, seqan::Alloc<void> >, seqan::Owner<seqan::Tag<seqan::Default_> const> >, seqan::String<char, seqan::Alloc<void> > >(seqan::StringSet<seqan::String<char, seqan::Alloc<void> >, seqan::Owner<seqan::Tag<seqan::Default_> const> >&, seqan::String<char, seqan::Alloc<void> > const&) (sequence_interface.h:1201)
    ==22987==    by 0x805C7F2: Msa::readMsaFromFile(std::string) (h2r.cpp:247)
    ==22987==    by 0x805C4F4: Msa::Msa(std::string, seqan::StringSet<seqan::String<char, seqan::Alloc<void> >, seqan::Owner<seqan::Tag<seqan::Default_> const> >&, seqan::StringSet<seqan::String<char, seqan::Alloc<void> >, seqan::Owner<seqan::Tag<seqan::Default_> const> >&, std::vector<std::string, std::allocator<std::string> >&, std::vector<std::string, std::allocator<std::string> >&, std::string) (h2r.cpp:203)
    ==22987==    by 0x805ADE5: main (h2r.cpp:3709)
    ==22987== 
    ==22987== 422 bytes in 1 blocks are definitely lost in loss record 2 of 5
    ==22987==    at 0x402569A: operator new(unsigned int) (vg_replace_malloc.c:255)
    ==22987==    by 0x806DF14: void seqan::allocate<seqan::String<char, seqan::Alloc<void> >, char, unsigned int, seqan::AllocateStorage_>(seqan::String<char, seqan::Alloc<void> >&, char*&, unsigned int, seqan::Tag<seqan::AllocateStorage_>) (basic_allocator_interface.h:199)
    ==22987==    by 0x806D62C: seqan::Value<seqan::String<char, seqan::Alloc<void> >, 0>::Type* seqan::_allocateStorage<char, void>(seqan::String<char, seqan::Alloc<void> >&, unsigned int) (string_alloc.h:340)
    ==22987==    by 0x806CE66: seqan::Value<seqan::String<char, seqan::Alloc<void> >, 0>::Type* seqan::_reallocateStorage<char, seqan::Alloc<void>, unsigned int>(seqan::String<char, seqan::Alloc<void> >&, unsigned int) (string_base.h:1430)
    ==22987==    by 0x806BC38: seqan::Value<seqan::String<char, seqan::Alloc<void> >, 0>::Type* seqan::_reallocateStorage<char, seqan::Alloc<void>, unsigned int>(seqan::String<char, seqan::Alloc<void> >&, unsigned int, seqan::Tag<seqan::TagGenerous_>) (string_base.h:1483)
    ==22987==    by 0x806C42C: seqan::Size<seqan::String<char, seqan::Alloc<void> > >::Type seqan::ClearSpaceExpandStringBase_<seqan::Tag<seqan::TagGenerous_> const>::_clearSpace_<seqan::String<char, seqan::Alloc<void> > >(seqan::String<char, seqan::Alloc<void> >&, seqan::Size<seqan::String<char, seqan::Alloc<void> > >::Type) (string_base.h:528)
    ==22987==    by 0x806AFFB: seqan::Size<seqan::String<char, seqan::Alloc<void> > >::Type seqan::_clearSpace<char, seqan::Alloc<void>, unsigned int, seqan::TagGenerous_>(seqan::String<char, seqan::Alloc<void> >&, unsigned int, seqan::Tag<seqan::TagGenerous_>) (string_base.h:726)
    ==22987==    by 0x80692DE: void seqan::AssignString_<seqan::Tag<seqan::TagGenerous_> const>::assign_<seqan::String<char, seqan::Alloc<void> >, seqan::String<char, seqan::Alloc<void> > const>(seqan::String<char, seqan::Alloc<void> >&, seqan::String<char, seqan::Alloc<void> > const&) (string_base.h:871)
    ==22987==    by 0x8065FAB: void seqan::assign<char, seqan::Alloc<void>, seqan::String<char, seqan::Alloc<void> >, seqan::TagGenerous_>(seqan::String<char, seqan::Alloc<void> >&, seqan::String<char, seqan::Alloc<void> > const&, seqan::Tag<seqan::TagGenerous_>) (string_base.h:920)
    ==22987==    by 0x8062FFB: void seqan::assign<char, seqan::Alloc<void>, seqan::String<char, seqan::Alloc<void> > >(seqan::String<char, seqan::Alloc<void> >&, seqan::String<char, seqan::Alloc<void> > const&) (string_base.h:852)
    ==22987==    by 0x8060304: seqan::String<char, seqan::Alloc<void> >::String(seqan::String<char, seqan::Alloc<void> > const&) (string_alloc.h:109)
    ==22987==    by 0x806C047: void seqan::ValueConstructor_::construct<seqan::Iter<seqan::String<seqan::String<char, seqan::Alloc<void> >, seqan::Alloc<void> >, seqan::AdaptorIterator<seqan::String<char, seqan::Alloc<void> >*, seqan::Tag<seqan::Default_> const> >, seqan::String<char, seqan::Alloc<void> > >(seqan::Iter<seqan::String<seqan::String<char, seqan::Alloc<void> >, seqan::Alloc<void> >, seqan::AdaptorIterator<seqan::String<char, seqan::Alloc<void> >*, seqan::Tag<seqan::Default_> const> >, seqan::String<char, seqan::Alloc<void> > const&) (basic_alphabet_interface.h:115)
    ==22987==    by 0x806AD26: void seqan::valueConstruct<seqan::Iter<seqan::String<seqan::String<char, seqan::Alloc<void> >, seqan::Alloc<void> >, seqan::AdaptorIterator<seqan::String<char, seqan::Alloc<void> >*, seqan::Tag<seqan::Default_> const> >, seqan::String<char, seqan::Alloc<void> > >(seqan::Iter<seqan::String<seqan::String<char, seqan::Alloc<void> >, seqan::Alloc<void> >, seqan::AdaptorIterator<seqan::String<char, seqan::Alloc<void> >*, seqan::Tag<seqan::Default_> const> >, seqan::String<char, seqan::Alloc<void> > const&) (basic_alphabet_interface.h:204)
    ==22987==    by 0x8069004: void seqan::AppendValueToString_<seqan::Tag<seqan::TagGenerous_> const>::appendValue_<seqan::String<seqan::String<char, seqan::Alloc<void> >, seqan::Alloc<void> >, seqan::String<char, seqan::Alloc<void> > const>(seqan::String<seqan::String<char, seqan::Alloc<void> >, seqan::Alloc<void> >&, seqan::String<char, seqan::Alloc<void> > const&) (string_base.h:1216)
    ==22987==    by 0x8065DB1: void seqan::appendValue<seqan::String<char, seqan::Alloc<void> >, seqan::Alloc<void>, seqan::String<char, seqan::Alloc<void> >, seqan::TagGenerous_>(seqan::String<seqan::String<char, seqan::Alloc<void> >, seqan::Alloc<void> >&, seqan::String<char, seqan::Alloc<void> > const&, seqan::Tag<seqan::TagGenerous_>) (string_base.h:1236)
    ==22987==    by 0x8062C7D: void seqan::appendValue<seqan::String<char, seqan::Alloc<void> >, seqan::String<char, seqan::Alloc<void> >, seqan::TagGenerous_>(seqan::StringSet<seqan::String<char, seqan::Alloc<void> >, seqan::Owner<seqan::Tag<seqan::Default_> const> >&, seqan::String<char, seqan::Alloc<void> > const&, seqan::Tag<seqan::TagGenerous_> const&) (string_set_owner.h:132)
    ==22987==    by 0x805F9AF: void seqan::appendValue<seqan::StringSet<seqan::String<char, seqan::Alloc<void> >, seqan::Owner<seqan::Tag<seqan::Default_> const> >, seqan::String<char, seqan::Alloc<void> > >(seqan::StringSet<seqan::String<char, seqan::Alloc<void> >, seqan::Owner<seqan::Tag<seqan::Default_> const> >&, seqan::String<char, seqan::Alloc<void> > const&) (sequence_interface.h:1201)
    ==22987==    by 0x805C828: Msa::readMsaFromFile(std::string) (h2r.cpp:249)
    ==22987==    by 0x805C4F4: Msa::Msa(std::string, seqan::StringSet<seqan::String<char, seqan::Alloc<void> >, seqan::Owner<seqan::Tag<seqan::Default_> const> >&, seqan::StringSet<seqan::String<char, seqan::Alloc<void> >, seqan::Owner<seqan::Tag<seqan::Default_> const> >&, std::vector<std::string, std::allocator<std::string> >&, std::vector<std::string, std::allocator<std::string> >&, std::string) (h2r.cpp:203)
    ==22987==    by 0x805ADE5: main (h2r.cpp:3709)
    ==22987== 
    ==22987== 3,502 bytes in 37 blocks are definitely lost in loss record 3 of 5
    ==22987==    at 0x402569A: operator new(unsigned int) (vg_replace_malloc.c:255)
    ==22987==    by 0x806DF14: void seqan::allocate<seqan::String<char, seqan::Alloc<void> >, char, unsigned int, seqan::AllocateStorage_>(seqan::String<char, seqan::Alloc<void> >&, char*&, unsigned int, seqan::Tag<seqan::AllocateStorage_>) (basic_allocator_interface.h:199)
    ==22987==    by 0x806D62C: seqan::Value<seqan::String<char, seqan::Alloc<void> >, 0>::Type* seqan::_allocateStorage<char, void>(seqan::String<char, seqan::Alloc<void> >&, unsigned int) (string_alloc.h:340)
    ==22987==    by 0x806CE66: seqan::Value<seqan::String<char, seqan::Alloc<void> >, 0>::Type* seqan::_reallocateStorage<char, seqan::Alloc<void>, unsigned int>(seqan::String<char, seqan::Alloc<void> >&, unsigned int) (string_base.h:1430)
    ==22987==    by 0x806BC38: seqan::Value<seqan::String<char, seqan::Alloc<void> >, 0>::Type* seqan::_reallocateStorage<char, seqan::Alloc<void>, unsigned int>(seqan::String<char, seqan::Alloc<void> >&, unsigned int, seqan::Tag<seqan::TagGenerous_>) (string_base.h:1483)
    ==22987==    by 0x806C42C: seqan::Size<seqan::String<char, seqan::Alloc<void> > >::Type seqan::ClearSpaceExpandStringBase_<seqan::Tag<seqan::TagGenerous_> const>::_clearSpace_<seqan::String<char, seqan::Alloc<void> > >(seqan::String<char, seqan::Alloc<void> >&, seqan::Size<seqan::String<char, seqan::Alloc<void> > >::Type) (string_base.h:528)
    ==22987==    by 0x806AFFB: seqan::Size<seqan::String<char, seqan::Alloc<void> > >::Type seqan::_clearSpace<char, seqan::Alloc<void>, unsigned int, seqan::TagGenerous_>(seqan::String<char, seqan::Alloc<void> >&, unsigned int, seqan::Tag<seqan::TagGenerous_>) (string_base.h:726)
    ==22987==    by 0x80692DE: void seqan::AssignString_<seqan::Tag<seqan::TagGenerous_> const>::assign_<seqan::String<char, seqan::Alloc<void> >, seqan::String<char, seqan::Alloc<void> > const>(seqan::String<char, seqan::Alloc<void> >&, seqan::String<char, seqan::Alloc<void> > const&) (string_base.h:871)
    ==22987==    by 0x8065FAB: void seqan::assign<char, seqan::Alloc<void>, seqan::String<char, seqan::Alloc<void> >, seqan::TagGenerous_>(seqan::String<char, seqan::Alloc<void> >&, seqan::String<char, seqan::Alloc<void> > const&, seqan::Tag<seqan::TagGenerous_>) (string_base.h:920)
    ==22987==    by 0x8062FFB: void seqan::assign<char, seqan::Alloc<void>, seqan::String<char, seqan::Alloc<void> > >(seqan::String<char, seqan::Alloc<void> >&, seqan::String<char, seqan::Alloc<void> > const&) (string_base.h:852)
    ==22987==    by 0x8060304: seqan::String<char, seqan::Alloc<void> >::String(seqan::String<char, seqan::Alloc<void> > const&) (string_alloc.h:109)
    ==22987==    by 0x806C0AE: void seqan::ValueConstructor_::construct<seqan::String<char, seqan::Alloc<void> >*, seqan::String<char, seqan::Alloc<void> > >(seqan::String<char, seqan::Alloc<void> >*, seqan::String<char, seqan::Alloc<void> > const&) (basic_alphabet_interface.h:115)
    ==22987==    by 0x806AD6B: void seqan::valueConstruct<seqan::String<char, seqan::Alloc<void> >*, seqan::String<char, seqan::Alloc<void> > >(seqan::String<char, seqan::Alloc<void> >*, seqan::String<char, seqan::Alloc<void> > const&) (basic_alphabet_interface.h:204)
    ==22987==    by 0x806909D: void seqan::AppendValueToString_<seqan::Tag<seqan::TagGenerous_> const>::appendValue_<seqan::String<seqan::String<char, seqan::Alloc<void> >, seqan::Alloc<void> >, seqan::String<char, seqan::Alloc<void> > const>(seqan::String<seqan::String<char, seqan::Alloc<void> >, seqan::Alloc<void> >&, seqan::String<char, seqan::Alloc<void> > const&) (string_base.h:1221)
    ==22987==    by 0x8065DB1: void seqan::appendValue<seqan::String<char, seqan::Alloc<void> >, seqan::Alloc<void>, seqan::String<char, seqan::Alloc<void> >, seqan::TagGenerous_>(seqan::String<seqan::String<char, seqan::Alloc<void> >, seqan::Alloc<void> >&, seqan::String<char, seqan::Alloc<void> > const&, seqan::Tag<seqan::TagGenerous_>) (string_base.h:1236)
    ==22987==    by 0x8062C7D: void seqan::appendValue<seqan::String<char, seqan::Alloc<void> >, seqan::String<char, seqan::Alloc<void> >, seqan::TagGenerous_>(seqan::StringSet<seqan::String<char, seqan::Alloc<void> >, seqan::Owner<seqan::Tag<seqan::Default_> const> >&, seqan::String<char, seqan::Alloc<void> > const&, seqan::Tag<seqan::TagGenerous_> const&) (string_set_owner.h:132)
    ==22987==    by 0x805F9AF: void seqan::appendValue<seqan::StringSet<seqan::String<char, seqan::Alloc<void> >, seqan::Owner<seqan::Tag<seqan::Default_> const> >, seqan::String<char, seqan::Alloc<void> > >(seqan::StringSet<seqan::String<char, seqan::Alloc<void> >, seqan::Owner<seqan::Tag<seqan::Default_> const> >&, seqan::String<char, seqan::Alloc<void> > const&) (sequence_interface.h:1201)
    ==22987==    by 0x805C7F2: Msa::readMsaFromFile(std::string) (h2r.cpp:247)
    ==22987==    by 0x805C4F4: Msa::Msa(std::string, seqan::StringSet<seqan::String<char, seqan::Alloc<void> >, seqan::Owner<seqan::Tag<seqan::Default_> const> >&, seqan::StringSet<seqan::String<char, seqan::Alloc<void> >, seqan::Owner<seqan::Tag<seqan::Default_> const> >&, std::vector<std::string, std::allocator<std::string> >&, std::vector<std::string, std::allocator<std::string> >&, std::string) (h2r.cpp:203)
    ==22987==    by 0x805ADE5: main (h2r.cpp:3709)
    ==22987== 
    ==22987== 15,614 bytes in 37 blocks are definitely lost in loss record 4 of 5
    ==22987==    at 0x402569A: operator new(unsigned int) (vg_replace_malloc.c:255)
    ==22987==    by 0x806DF14: void seqan::allocate<seqan::String<char, seqan::Alloc<void> >, char, unsigned int, seqan::AllocateStorage_>(seqan::String<char, seqan::Alloc<void> >&, char*&, unsigned int, seqan::Tag<seqan::AllocateStorage_>) (basic_allocator_interface.h:199)
    ==22987==    by 0x806D62C: seqan::Value<seqan::String<char, seqan::Alloc<void> >, 0>::Type* seqan::_allocateStorage<char, void>(seqan::String<char, seqan::Alloc<void> >&, unsigned int) (string_alloc.h:340)
    ==22987==    by 0x806CE66: seqan::Value<seqan::String<char, seqan::Alloc<void> >, 0>::Type* seqan::_reallocateStorage<char, seqan::Alloc<void>, unsigned int>(seqan::String<char, seqan::Alloc<void> >&, unsigned int) (string_base.h:1430)
    ==22987==    by 0x806BC38: seqan::Value<seqan::String<char, seqan::Alloc<void> >, 0>::Type* seqan::_reallocateStorage<char, seqan::Alloc<void>, unsigned int>(seqan::String<char, seqan::Alloc<void> >&, unsigned int, seqan::Tag<seqan::TagGenerous_>) (string_base.h:1483)
    ==22987==    by 0x806C42C: seqan::Size<seqan::String<char, seqan::Alloc<void> > >::Type seqan::ClearSpaceExpandStringBase_<seqan::Tag<seqan::TagGenerous_> const>::_clearSpace_<seqan::String<char, seqan::Alloc<void> > >(seqan::String<char, seqan::Alloc<void> >&, seqan::Size<seqan::String<char, seqan::Alloc<void> > >::Type) (string_base.h:528)
    ==22987==    by 0x806AFFB: seqan::Size<seqan::String<char, seqan::Alloc<void> > >::Type seqan::_clearSpace<char, seqan::Alloc<void>, unsigned int, seqan::TagGenerous_>(seqan::String<char, seqan::Alloc<void> >&, unsigned int, seqan::Tag<seqan::TagGenerous_>) (string_base.h:726)
    ==22987==    by 0x80692DE: void seqan::AssignString_<seqan::Tag<seqan::TagGenerous_> const>::assign_<seqan::String<char, seqan::Alloc<void> >, seqan::String<char, seqan::Alloc<void> > const>(seqan::String<char, seqan::Alloc<void> >&, seqan::String<char, seqan::Alloc<void> > const&) (string_base.h:871)
    ==22987==    by 0x8065FAB: void seqan::assign<char, seqan::Alloc<void>, seqan::String<char, seqan::Alloc<void> >, seqan::TagGenerous_>(seqan::String<char, seqan::Alloc<void> >&, seqan::String<char, seqan::Alloc<void> > const&, seqan::Tag<seqan::TagGenerous_>) (string_base.h:920)
    ==22987==    by 0x8062FFB: void seqan::assign<char, seqan::Alloc<void>, seqan::String<char, seqan::Alloc<void> > >(seqan::String<char, seqan::Alloc<void> >&, seqan::String<char, seqan::Alloc<void> > const&) (string_base.h:852)
    ==22987==    by 0x8060304: seqan::String<char, seqan::Alloc<void> >::String(seqan::String<char, seqan::Alloc<void> > const&) (string_alloc.h:109)
    ==22987==    by 0x806C0AE: void seqan::ValueConstructor_::construct<seqan::String<char, seqan::Alloc<void> >*, seqan::String<char, seqan::Alloc<void> > >(seqan::String<char, seqan::Alloc<void> >*, seqan::String<char, seqan::Alloc<void> > const&) (basic_alphabet_interface.h:115)
    ==22987==    by 0x806AD6B: void seqan::valueConstruct<seqan::String<char, seqan::Alloc<void> >*, seqan::String<char, seqan::Alloc<void> > >(seqan::String<char, seqan::Alloc<void> >*, seqan::String<char, seqan::Alloc<void> > const&) (basic_alphabet_interface.h:204)
    ==22987==    by 0x806909D: void seqan::AppendValueToString_<seqan::Tag<seqan::TagGenerous_> const>::appendValue_<seqan::String<seqan::String<char, seqan::Alloc<void> >, seqan::Alloc<void> >, seqan::String<char, seqan::Alloc<void> > const>(seqan::String<seqan::String<char, seqan::Alloc<void> >, seqan::Alloc<void> >&, seqan::String<char, seqan::Alloc<void> > const&) (string_base.h:1221)
    ==22987==    by 0x8065DB1: void seqan::appendValue<seqan::String<char, seqan::Alloc<void> >, seqan::Alloc<void>, seqan::String<char, seqan::Alloc<void> >, seqan::TagGenerous_>(seqan::String<seqan::String<char, seqan::Alloc<void> >, seqan::Alloc<void> >&, seqan::String<char, seqan::Alloc<void> > const&, seqan::Tag<seqan::TagGenerous_>) (string_base.h:1236)
    ==22987==    by 0x8062C7D: void seqan::appendValue<seqan::String<char, seqan::Alloc<void> >, seqan::String<char, seqan::Alloc<void> >, seqan::TagGenerous_>(seqan::StringSet<seqan::String<char, seqan::Alloc<void> >, seqan::Owner<seqan::Tag<seqan::Default_> const> >&, seqan::String<char, seqan::Alloc<void> > const&, seqan::Tag<seqan::TagGenerous_> const&) (string_set_owner.h:132)
    ==22987==    by 0x805F9AF: void seqan::appendValue<seqan::StringSet<seqan::String<char, seqan::Alloc<void> >, seqan::Owner<seqan::Tag<seqan::Default_> const> >, seqan::String<char, seqan::Alloc<void> > >(seqan::StringSet<seqan::String<char, seqan::Alloc<void> >, seqan::Owner<seqan::Tag<seqan::Default_> const> >&, seqan::String<char, seqan::Alloc<void> > const&) (sequence_interface.h:1201)
    ==22987==    by 0x805C828: Msa::readMsaFromFile(std::string) (h2r.cpp:249)
    ==22987==    by 0x805C4F4: Msa::Msa(std::string, seqan::StringSet<seqan::String<char, seqan::Alloc<void> >, seqan::Owner<seqan::Tag<seqan::Default_> const> >&, seqan::StringSet<seqan::String<char, seqan::Alloc<void> >, seqan::Owner<seqan::Tag<seqan::Default_> const> >&, std::vector<std::string, std::allocator<std::string> >&, std::vector<std::string, std::allocator<std::string> >&, std::string) (h2r.cpp:203)
    ==22987==    by 0x805ADE5: main (h2r.cpp:3709)
    ==22987== 
    ==22987== 243,152 bytes in 942 blocks are definitely lost in loss record 5 of 5
    ==22987==    at 0x402569A: operator new(unsigned int) (vg_replace_malloc.c:255)
    ==22987==    by 0x806DF14: void seqan::allocate<seqan::String<char, seqan::Alloc<void> >, char, unsigned int, seqan::AllocateStorage_>(seqan::String<char, seqan::Alloc<void> >&, char*&, unsigned int, seqan::Tag<seqan::AllocateStorage_>) (basic_allocator_interface.h:199)
    ==22987==    by 0x806D62C: seqan::Value<seqan::String<char, seqan::Alloc<void> >, 0>::Type* seqan::_allocateStorage<char, void>(seqan::String<char, seqan::Alloc<void> >&, unsigned int) (string_alloc.h:340)
    ==22987==    by 0x806CE66: seqan::Value<seqan::String<char, seqan::Alloc<void> >, 0>::Type* seqan::_reallocateStorage<char, seqan::Alloc<void>, unsigned int>(seqan::String<char, seqan::Alloc<void> >&, unsigned int) (string_base.h:1430)
    ==22987==    by 0x806BC38: seqan::Value<seqan::String<char, seqan::Alloc<void> >, 0>::Type* seqan::_reallocateStorage<char, seqan::Alloc<void>, unsigned int>(seqan::String<char, seqan::Alloc<void> >&, unsigned int, seqan::Tag<seqan::TagGenerous_>) (string_base.h:1483)
    ==22987==    by 0x806C42C: seqan::Size<seqan::String<char, seqan::Alloc<void> > >::Type seqan::ClearSpaceExpandStringBase_<seqan::Tag<seqan::TagGenerous_> const>::_clearSpace_<seqan::String<char, seqan::Alloc<void> > >(seqan::String<char, seqan::Alloc<void> >&, seqan::Size<seqan::String<char, seqan::Alloc<void> > >::Type) (string_base.h:528)
    ==22987==    by 0x806AFFB: seqan::Size<seqan::String<char, seqan::Alloc<void> > >::Type seqan::_clearSpace<char, seqan::Alloc<void>, unsigned int, seqan::TagGenerous_>(seqan::String<char, seqan::Alloc<void> >&, unsigned int, seqan::Tag<seqan::TagGenerous_>) (string_base.h:726)
    ==22987==    by 0x80692DE: void seqan::AssignString_<seqan::Tag<seqan::TagGenerous_> const>::assign_<seqan::String<char, seqan::Alloc<void> >, seqan::String<char, seqan::Alloc<void> > const>(seqan::String<char, seqan::Alloc<void> >&, seqan::String<char, seqan::Alloc<void> > const&) (string_base.h:871)
    ==22987==    by 0x8065FAB: void seqan::assign<char, seqan::Alloc<void>, seqan::String<char, seqan::Alloc<void> >, seqan::TagGenerous_>(seqan::String<char, seqan::Alloc<void> >&, seqan::String<char, seqan::Alloc<void> > const&, seqan::Tag<seqan::TagGenerous_>) (string_base.h:920)
    ==22987==    by 0x8062FFB: void seqan::assign<char, seqan::Alloc<void>, seqan::String<char, seqan::Alloc<void> > >(seqan::String<char, seqan::Alloc<void> >&, seqan::String<char, seqan::Alloc<void> > const&) (string_base.h:852)
    ==22987==    by 0x8060304: seqan::String<char, seqan::Alloc<void> >::String(seqan::String<char, seqan::Alloc<void> > const&) (string_alloc.h:109)
    ==22987==    by 0x806C0AE: void seqan::ValueConstructor_::construct<seqan::String<char, seqan::Alloc<void> >*, seqan::String<char, seqan::Alloc<void> > >(seqan::String<char, seqan::Alloc<void> >*, seqan::String<char, seqan::Alloc<void> > const&) (basic_alphabet_interface.h:115)
    ==22987==    by 0x806AD6B: void seqan::valueConstruct<seqan::String<char, seqan::Alloc<void> >*, seqan::String<char, seqan::Alloc<void> > >(seqan::String<char, seqan::Alloc<void> >*, seqan::String<char, seqan::Alloc<void> > const&) (basic_alphabet_interface.h:204)
    ==22987==    by 0x806CF6C: void seqan::_arrayConstructCopyDefault<seqan::String<char, seqan::Alloc<void> >*, seqan::String<char, seqan::Alloc<void> >*, seqan::String<char, seqan::Alloc<void> >*>(seqan::String<char, seqan::Alloc<void> >*, seqan::String<char, seqan::Alloc<void> >*, seqan::String<char, seqan::Alloc<void> >*) (basic_alphabet_interface.h:383)
    ==22987==    by 0x806BDDE: void seqan::_arrayConstructCopyPointer<seqan::String<char, seqan::Alloc<void> >, seqan::String<char, seqan::Alloc<void> > >(seqan::String<char, seqan::Alloc<void> >*, seqan::String<char, seqan::Alloc<void> >*, seqan::String<char, seqan::Alloc<void> >*, seqan::False) (basic_alphabet_trait_basic.h:135)
    ==22987==    by 0x806A81C: void seqan::arrayConstructCopy<seqan::String<char, seqan::Alloc<void> >, seqan::String<char, seqan::Alloc<void> > >(seqan::String<char, seqan::Alloc<void> >*, seqan::String<char, seqan::Alloc<void> >*, seqan::String<char, seqan::Alloc<void> >*) (basic_alphabet_trait_basic.h:144)
    ==22987==    by 0x806C579: void seqan::_reserveStorage<seqan::String<char, seqan::Alloc<void> >, seqan::Alloc<void>, unsigned int, seqan::TagGenerous_>(seqan::String<seqan::String<char, seqan::Alloc<void> >, seqan::Alloc<void> >&, unsigned int, seqan::Tag<seqan::TagGenerous_>) (string_base.h:1592)
    ==22987==    by 0x806B15C: seqan::Size<seqan::String<seqan::String<char, seqan::Alloc<void> >, seqan::Alloc<void> > >::Type seqan::reserve<seqan::String<char, seqan::Alloc<void> >, seqan::Alloc<void>, unsigned int, seqan::TagGenerous_>(seqan::String<seqan::String<char, seqan::Alloc<void> >, seqan::Alloc<void> >&, unsigned int, seqan::Tag<seqan::TagGenerous_>) (string_base.h:1611)
    ==22987==    by 0x80695F6: seqan::Size<seqan::String<seqan::String<char, seqan::Alloc<void> >, seqan::Alloc<void> > >::Type seqan::_Resize_String<seqan::Tag<seqan::TagGenerous_> const>::resize_<seqan::String<seqan::String<char, seqan::Alloc<void> >, seqan::Alloc<void> > >(seqan::String<seqan::String<char, seqan::Alloc<void> >, seqan::Alloc<void> >&, seqan::Size<seqan::String<seqan::String<char, seqan::Alloc<void> >, seqan::Alloc<void> > >::Type) (string_base.h:1640)
    ==22987==    by 0x806AC58: seqan::Size<seqan::String<seqan::String<char, seqan::Alloc<void> >, seqan::Alloc<void> > >::Type seqan::resize<seqan::String<char, seqan::Alloc<void> >, seqan::Alloc<void>, unsigned int, seqan::TagGenerous_>(seqan::String<seqan::String<char, seqan::Alloc<void> >, seqan::Alloc<void> >&, unsigned int, seqan::Tag<seqan::TagGenerous_>) (string_base.h:1705)
    ==22987== 
    ==22987== LEAK SUMMARY:
    ==22987==    definitely lost: 262,799 bytes in 1,018 blocks
    ==22987==    indirectly lost: 0 bytes in 0 blocks
    ==22987==      possibly lost: 0 bytes in 0 blocks
    ==22987==    still reachable: 0 bytes in 0 blocks
    ==22987==         suppressed: 0 bytes in 0 blocks
    ==22987== 
    ==22987== For counts of detected and suppressed errors, rerun with: -v
    ==22987== ERROR SUMMARY: 5 errors from 5 contexts (suppressed: 18 from 7)
    joba@joba-laptop:~/Desktop/h2r$
    

Log in to reply