Uncaught exception in testfacet_dll

I'm getting a "stop the script" error when running the test for testfacet_dll (VC7.1) it pops up a requestor telling me the program terminated unexpectedly, and (unfortunately) waits for a human reply (which causes my scheduled run to stop after 4 hours (it starts at 0300 local)), so I'm not getting the rest of the tests run. I chased it down to a std:exception w/ what() == bad cast I'm refining where the error occurs. with the following patches to testfacet.cpp: RCS file: /cvsroot/boost/boost/libs/date_time/test/gregorian/testfacet.cpp,v retrieving revision 1.14 diff -w -r1.14 testfacet.cpp 11c11 < ---
#include <exception> 39a40,41 try { 264a267,268 try { 265a270,272 } catch(std::exception& e) {check(e.what(), false);} catch(...) {check("some unknown exception found", false);} 317d323 < 319d324 < 321c326,328 <
catch(std::exception& e) {check(e.what(), false);} catch(...) {check("some unknown exception found", false);} } ======================================================================== I get the following output when I run it from the command line
C:\Projects\boost\status>..\bin\boost\libs\date_time\test\testfacet_dll.test\vc7.1\debug\testfacet_dll Pass :: check german short month: Okt Pass :: check german short month: Okt Pass :: check ymd: 01.Okt.2002 Pass :: ostream low level check string:01.Okt.2002 global: C Pass :: no registered facet here Pass :: facet registered here Pass :: check string imbued ostream: 2002-Okt-01 Pass :: check string imbued ostream: +unbegrenztheit Pass :: check string imbued ostream: +unbegrenztheit Pass :: check string imbued ostream: NichtDatumzeit Pass :: check any old ostream: 2002-Oct-01 Pass :: check date order: 01.10.2002 Pass :: check date order: 2002 Okt 01 Pass :: check date order: Oktober 01 2002 Pass :: check date period: [Oktober 01 2002/Oktober 03 2002] Pass :: date_duration stream out Pass :: date_duration stream out Pass :: partial date stream out Pass :: nth kday of month Pass :: first kday of month Pass :: last kday of month Pass :: first kday after Pass :: first kday after 26 Jun second Fri of Sep first Sat of May last Mon of Aug Thu after Tue before FAIL :: bad cast FAIL :: Stream in month FAIL :: bad cast C:\Projects\boost\status> ================================================================================== the log appears to show that this test PASSED tho..... execute-test ..\bin\boost\libs\date_time\test\testfacet_dll.test\vc7.1\debug\testfacet_dll.run 1 file(s) copied. **passed** ..\bin\boost\libs\date_time\test\testfacet_dll.test\vc7.1\debug\testfacet_dll.test ================================================================================== I'm working on getting some better "catch unknown exception" code put together so it can be added readily to tests to keep this from happening in the future. Victor A. Wagner Jr. http://rudbek.com The five most dangerous words in the English language: "There oughta be a law"

On Sat, 17 Jul 2004 15:22:30 -0700, Victor A. Wagner Jr. wrote
I'm getting a "stop the script" error when running the test for testfacet_dll (VC7.1) it pops up a requestor telling me the program terminated unexpectedly, and (unfortunately) waits for a human reply (which causes my scheduled run to stop after 4 hours (it starts at 0300 local)), so I'm not getting the rest of the tests run. I chased it down to a std:exception w/ what() == bad cast I'm refining where the error occurs. with the following patches to testfacet.cpp:
Yike...
...patch snipped and test results... ================================================================================== the log appears to show that this test PASSED tho.....
execute-test
..\bin\boost\libs\date_time\test\testfacet_dll.test\vc7.1\debug\testfacet_dll.run
1 file(s) copied. **passed**
..\bin\boost\libs\date_time\test\testfacet_dll.test\vc7.1\debug\testfacet_dll.test That's wierd... Just so you know, we are trying fix this problem. Basically something seems to go wrong when we imbue a stream with the dll version. The identical code works perfectly when linked statically. Of course it works fine in a shared library on Linux, mingw, etc. So it's odd that the dll version is flakey.... If we don't find a solution shortly, we will patch the test so it shows the failure and doesn't halt things... ==================================================================================
I'm working on getting some better "catch unknown exception" code put together so it can be added readily to tests to keep this from happening in the future.
Where would this 'code go', in the script that runs things or patched as part of the test code? If it's in the test code, I wouldn't spend time on it as this will be resolved soon... Jeff

On Sat, 17 Jul 2004 16:20:20 -0700, Jeff Garland wrote
If we don't find a solution shortly, we will patch the test so it shows the failure and doesn't halt things... ...replies to self...
I've checked in a new version of the test/gregorian/testfacet.cpp that catches exceptions -- so a failure doesn't halt your tests. I added a few more blocks around other streaming code that uses facets. I'm starting to think we might not be able to work around this problem :-( Jeff

Ok, I'll release the "edit" I have on the file At Saturday 2004-07-17 16:46, you wrote:
On Sat, 17 Jul 2004 16:20:20 -0700, Jeff Garland wrote
If we don't find a solution shortly, we will patch the test so it shows the failure and doesn't halt things... ....replies to self...
I've checked in a new version of the test/gregorian/testfacet.cpp that catches exceptions -- so a failure doesn't halt your tests. I added a few more blocks around other streaming code that uses facets. I'm starting to think we might not be able to work around this problem :-(
Jeff _______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
Victor A. Wagner Jr. http://rudbek.com The five most dangerous words in the English language: "There oughta be a law"

At Saturday 2004-07-17 16:20, you wrote:
On Sat, 17 Jul 2004 15:22:30 -0700, Victor A. Wagner Jr. wrote
I'm getting a "stop the script" error when running the test for testfacet_dll (VC7.1) [deleted] I'm working on getting some better "catch unknown exception" code put together so it can be added readily to tests to keep this from happening in the future.
Where would this 'code go', in the script that runs things or patched as part of the test code? If it's in the test code, I wouldn't spend time on it as this will be resolved soon...
I'd planned on putting it in the test....I'll stop now
Jeff _______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
Victor A. Wagner Jr. http://rudbek.com The five most dangerous words in the English language: "There oughta be a law"
participants (2)
-
Jeff Garland
-
Victor A. Wagner Jr.