From: John Maddock (john_at_[hidden])
Date: 2006-08-08 08:36:47
Markus Schöpflin wrote:
> John Maddock wrote:
>> Markus Schöpflin wrote:
>>> For reference, see http://tinyurl.com/rm4dr and
>>> Interestingly enough, the test passes on Tru64/CXX. Compiled with
>>> 4.0.3 the test aborts with 'terminate called recursively', compiled
>>> with 3.4.4 it throws a SIGABRT.
>>> Is there anything I can do to help in debugging?
>> Thanks Marcus, I had spotted that failure, but didn't know what to
>> do about it. The fact that it's specific to gcc on that one
>> specific platform is particulary frustrating!
>> I have to be honest: I'm not even sure how to go about debugging
>> this: basically the test program spawns 10 threads each of which
>> then runs the regex test code. In other words it's a stress-test to
>> detect multi-threading issues. Are there any known problems with
>> gcc and threading on that platform?
> With gcc 4.1 and later multi threading is simply broken on Tru64. But
> it should work with earlier version. IIRC, 3.x uses DEC threads and
> 4.x uses POSIX threads. That might explain the different behaviors
> we're observing.
Oh, hold on: regex uses POSIX threads, come to that so does Boost.Threads
and the test driver program. However, the threads lib tests all pass so I
assumed it wasn't an issue as simple as this. So is this just a case of
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk