|
Boost : |
From: Raoul Gough (RaoulGough_at_[hidden])
Date: 2002-04-26 12:14:07
I've just managed to compile and link the release 1_27_0 boost threads
library with gcc -mno-cygwin option under cygwin (i.e. mingw32) but
test_thread crashes during exit from the function condition_test_thread. I
had to fiddle a bit to get the boost libraries to compile and link, so I
assume this is not a widely used platform (cygwin in mingw mode, boost
1_27_0 and STLport-4.5.3).
Examining the assembler dump in gdb, the test seems to be crashing in some
exception-handler-related code at the end of condition_test_thread:
----- Disassembly with added comments --------
<condition_test_thread(void *)+222>:
;; data->awoken++; (last line of function)
mov 0xfffffffc(%ebp),%eax
incl 0x28(%eax)
;; Some kind of exception handler context stuff (?)
lea 0x4(%ebx),%edx
mov (%edx),%eax
add $0x4,%eax
mov (%eax),%edx
mov (%edx),%ecx ;; <--- SEGV here, $edx is 0
mov %ecx,(%eax)
;; boost::mutex::scoped_lock destructor stuff
add $0xfffffff8,%esp
push $0x2
lea 0xffffffe0(%ebp),%eax
push %eax
call 0x40cde8 <_$_Q45boost6detail6threadt11scoped_lock1ZQ25boost5mutex>
add $0x10,%esp
;; function exit stuff
mov 0xffffffb8(%ebp),%ebx
mov %ebp,%esp
pop %ebp
ret
----- End disassembly --------
Before I spend too long chasing this, has anybody else seen anything similar
to this? Is anybody using the threads library with mingw and cygwin? I got
pretty much exactly the same crash in my own test code as well.
Regards,
Raoul Gough.
_________________________________________________________
Do You Yahoo!?
Get your free @yahoo.com address at http://mail.yahoo.com
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk