------- Comment #5 from paolo dot carlini at oracle dot com 2009-05-21 09:15 ------- So, you should compare it to the previous delete, which normally should be the *only* one involving basic_string.
To be clear, the expected sequence is the following, as you can check on any other linux target: operator new is called operator new is called operator delete is called 1 allocations to be released operator delete is called All memory released that is, the additional delete / new pair that you are seeing at the end is completely bogus. Of course, I would suggest also checking what happens vs optimization level (also for the *.so, thus rebuilding the library CXXFLAGS="-OX -g"). -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40094