apr-2001 libstdc++ outstanding
Benjamin Kosnik
bkoz@redhat.com
Mon May 7 21:11:00 GMT 2001
Sorry I'm late on this stuff.... I guess I'll try to get it out the
first week of every month... sliding by this month...
- most major is the std::string memory leak and MT issues.
libstdc++/2517 gets most of the details, or run this and watch top:
#include <string>
int main()
{
std::string s1("robert ray, upper haight hippie");
std::string s2;
// Should not spike memory
for (long l = 0; l < 50000000; ++l)
s2 = s1 + " infinity vs. inevitable vs.";
return(0);
}
MT issues are referenced here:
There appears to be a race condition that will make this useless
on SMP computers in this combination:
_M_grab(const _Alloc& __alloc1, const _Alloc& __alloc2);
_M_refcopy() throw();
_M_leak();
There is no mutex in _M_grab so that after it has checked the
!_M_is_leaked(), but before _M_refcopy() is called another thread
might have executed _M_leak() on another processor.
Repeated calls to help to Nathan have been ignored. I'd appreciate it
if somebody could pick this stuff up, as I'm going to have my hands
full cleaning up the bugs in GNATS. Also, we need to figure out how to
add memory-regression tests like the first example to the test harness
(for string, it would be nice to regression-test all member functions)
- non-gcc patches referenced here:
http://gcc.gnu.org/ml/libstdc++/2001-04/msg00018.html
what is the status on this??
- issues WRT gcov, and general debugging issues
http://gcc.gnu.org/ml/libstdc++/2001-04/msg00037.html
http://gcc.gnu.org/ml/libstdc++/2001-04/msg00033.html
one of these days we'll have a debugger that works...
- concept checking tweaks to makefiles, instantiations
I still think this can be done with autoconf
lots of work done WRT doxygen, backward headers, C99, testing harness, etc.
Thanks everyone... the doxygen stuff in particular I find quite impressive.
mar outstanding
http://gcc.gnu.org/ml/libstdc++/2001-04/msg00023.html
More information about the Libstdc++
mailing list