This is the mail archive of the
mailing list for the GCC project.
[Bug libstdc++/29496] _M_invalidate function is not thread-safe in GLIBCXX_DEBUG mode
- From: "l_heldt at poczta dot onet dot pl" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 31 Oct 2006 13:42:07 -0000
- Subject: [Bug libstdc++/29496] _M_invalidate function is not thread-safe in GLIBCXX_DEBUG mode
- References: <firstname.lastname@example.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #15 from l_heldt at poczta dot onet dot pl 2006-10-31 13:42 -------
(In reply to comment #14)
> (In reply to comment #13)
> > We actually encountered this problem - this is not taken from code review only.
> Again, adding a mutex to that those *_base functions it's trivial. Now, please
> start preparing reduced testcases for such issues, because apprently you *know*
> how to do that. The approach "No test case - no bug" maybe can be considered
> "naive" as you say, on the other hand enforcing it eventually makes for sound
> software engineering, because would be even more naive to rely on submitter
> itself and no one else in the world to test a candidate fix, thus not being
> able to avoid regressions at a later stage within the project.
I tried to prepare a simple testcase but without any success. It seems to be
extremely hard to hit the moment when pointers are actually changed. Trivial
programs do not reveal the problem.