Dear Boost users, is the BGL leaky? For example the code added below produces memory leaks (as seen from also added valgrind output). When I comment out the line marked by /* THIS LINE DOES IT */, there are no leaks. I am running BGL 1.29 and gcc 3.2. Any ideas for a work-around? cheers Martin #include <iostream> // for std::cout #include <utility> // for std::pair #include <algorithm> // for std::for_each #include <boost/graph/graph_traits.hpp> #include <boost/graph/adjacency_list.hpp> #include <boost/graph/dijkstra_shortest_paths.hpp> using namespace boost; int main(int,char*[]) { // create a typedef for the Graph type typedef adjacency_list<vecS, vecS, bidirectionalS> Graph; // Make convenient labels for the vertices enum { A, B, C, D, E, N }; const int num_vertices = N; // writing out the edges in the graph typedef std::pair<int, int> Edge; Edge edge_array[] = { Edge(A,B), Edge(A,D), Edge(C,A), Edge(D,C), Edge(C,E), Edge(B,D), Edge(D,E), }; int num_edges = sizeof(edge_array)/sizeof(edge_array[0]); // declare a graph object Graph* g = new Graph(num_vertices); // add the edges to the graph object for (int i = 0; i < num_edges; ++i) add_edge(edge_array[i].first, edge_array[i].second, *g); /* THIS LINE DOES IT */ delete g; return 0; } okrslar@liebrich:~/molgen/domclust/src/test> valgrind --leak-check=yes --show-reachable=yes ./domclust ==23473== valgrind-1.0.4, a memory error detector for x86 GNU/Linux. ==23473== Copyright (C) 2000-2002, and GNU GPL'd, by Julian Seward. ==23473== Estimated CPU clock rate is 2412 MHz ==23473== For more details, rerun with: -v ==23473== ==23473== ==23473== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0) ==23473== malloc/free: in use at exit: 384 bytes in 1 blocks. ==23473== malloc/free: 3 allocs, 2 frees, 544 bytes allocated. ==23473== For counts of detected errors, rerun with: -v ==23473== searching for pointers to 1 not-freed blocks. ==23473== checked 6470036 bytes. ==23473== ==23473== definitely lost: 0 bytes in 0 blocks. ==23473== possibly lost: 0 bytes in 0 blocks. ==23473== still reachable: 384 bytes in 1 blocks. ==23473== ==23473== 384 bytes in 1 blocks are still reachable in loss record 1 of 1 ==23473== at 0x4004A3A8: __builtin_new (vg_clientfuncs.c:125) ==23473== by 0x4004A3F6: operator new(unsigned) (vg_clientfuncs.c:138) ==23473== by 0x4035E4F1: ??? (bits/stl_alloc.h:482) ==23473== by 0x4035E40D: ??? (bits/stl_alloc.h:532) ==23473== ==23473== LEAK SUMMARY: ==23473== definitely lost: 0 bytes in 0 blocks. ==23473== possibly lost: 0 bytes in 0 blocks. ==23473== still reachable: 384 bytes in 1 blocks. ==23473== -- ----------------------------------------------------------------------------- Martin Okrslar MPI for Molecular Genetics phone: ++ 49 + 30 / 8413-1166 Computational Molecular Biology Fax: ++ 49 + 30 / 8413-1152 Ihnestrasse 73 email: okrslar@molgen.mpg.de D-14195 Berlin URL: http://cmb.molgen.mpg.de -----------------------------------------------------------------------------