Opened 12 years ago
Closed 10 years ago
#4768 closed Bugs (fixed)
MinGW: SIGSEGV in refcount_ptr (exception.hpp:38)
Reported by: | Owned by: | Emil Dotchevski | |
---|---|---|---|
Milestone: | To Be Determined | Component: | exception |
Version: | Boost 1.44.0 | Severity: | Problem |
Keywords: | mingw SIGSEGV clone | Cc: |
Description
copy_exception_test fails (see here, current as of 2010/10/21):
Run [2010-10-21 22:46:51 UTC]: fail pure virtual method called This application has requested the Runtime to terminate it in an unusual way. Please contact the application's support team for more information. terminate called after throwing an instance of 'boost::exception_detail::clone_impl<err>' what(): std::exception EXIT STATUS: 3
gdb shows me this:
Program received signal SIGSEGV, Segmentation fault. [Switching to thread 4076.0x1278] 0x00415975 in refcount_ptr (this=0x38184, x=@0x4ca534) at ../boost/exception/exception.hpp:38 38 px_(x.px_) (gdb)bt [backtrace] #0 0x00415975 in refcount_ptr (this=0x38184, x=@0x4ca534) at ../boost/exception/exception.hpp:38 #1 0x00421cdb in exception (this=0x38180) at ../boost/exception/exception.hpp:199 #2 0x00413183 in clone_impl (this=0x38178) at ../boost/exception/exception.hpp:405 #3 0x004252c0 in boost::exception_detail::clone_impl<err>::clone ( this=0x3c200) at ../boost/exception/exception.hpp:424 #4 0x00417226 in boost::exception_detail::current_exception_impl () at ../boost/exception/detail/exception_ptr.hpp:302 #5 0x0041c521 in boost::current_exception () at ../boost/exception/detail/exception_ptr.hpp:403 #6 0x00411f54 in boost::copy_exception<err> (e=@0x2acfeb0) at ../boost/exception/detail/exception_ptr.hpp:48 #7 0x00401411 in producer (f=@0x16cfed8) at ..\libs\exception\test\copy_exception_test.cpp:81 #8 0x0041d523 in boost::_bi::list1<boost::reference_wrapper<future> >::operator ()<void (*)(future&), boost::_bi::list0> (this=0x253244, f=@0x253240, a=@0x2acff27) at ../boost/bind/bind.hpp:253 #9 0x0041d57e in boost::_bi::bind_t<void, void (*)(future&), boost::_bi::list1< boost::reference_wrapper<future> > >::operator() (this=0x253240) at ../boost/bind/bind_template.hpp:20 #10 0x0041d920 in boost::detail::thread_data<boost::_bi::bind_t<void, void (*)(f uture&), boost::_bi::list1<boost::reference_wrapper<future> > > >::run ( this=0x253220) at ../boost/thread/detail/thread.hpp:61 #11 0x00401c25 in thread_start_function (param=0x253220) at ..\libs\thread\src\win32\thread.cpp:168 #12 0x77c3a3b0 in msvcrt!_endthreadex () from C:\WINDOWS\system32\msvcrt.dll #13 0x7c80b729 in KERNEL32!GetModuleFileNameA () from C:\WINDOWS\system32\kernel32.dll #14 0x00000000 in ?? ()
Change History (3)
comment:1 by , 12 years ago
comment:2 by , 12 years ago
Milestone: | Boost-1.45.0 → To Be Determined |
---|---|
Severity: | Showstopper → Problem |
Jim, it looks like we don't have a repro of this bug on the release branch. We're not testing that platform/compiler combination there. Can you see if you can reproduce the issue on release? As it stands, I can't justify holding up 1.45 for this issue, so I'm knocking it's severity down to "Problem" and changing the milestone to "TBD".
comment:3 by , 10 years ago
Resolution: | → fixed |
---|---|
Status: | new → closed |
Just tested on MinGW, gcc 4.6.1, all tests pass. Marking this bug as resolved, please reopen if the crash reoccurs (if I have to speculate it was a compiler bug.)
Looking at the test matrix; this is passing for mingw-gcc 4.4.3, failing on 4.4.5, and passing on 4.5.1.
[ The 4.4.3 and 4.4.5 tests are both run by the same tester, btw ]