|
Boost : |
From: Marc-Antoine Desroches (madesroc_at_[hidden])
Date: 2003-06-27 08:03:29
Thanks for your suggestion, now everything works. :-)
Following your advice I tried 1.30 and it would not link using bjam, so I
tried the dsw and it worked fine. I tried my test app and everything worked.
I tried compiling the 1.29 test lib using the dsw instead of bjam and
everything was fixed. I don't know what I did wrong using bjam but I guess
the dsws are there for a reason...
If you are curious here are the answers to your questions :
1. My test app :
#include "stdafx.h" // empty
#include "boost/test/unit_test.hpp"
using boost::unit_test_framework::test_suite;
void MyTest()
{
BOOST_CHECK( true );
}
test_suite*
init_unit_test_suite( int argc, char* argv[] ) {
test_suite* test= BOOST_TEST_SUITE( "vc6 + stlport + boost" );
test->add( BOOST_TEST_CASE( &MyTest ) );
return test;
}
> 2. Did you try to debug it? Where does it fail?
Yes. It failed at the end of the MyTest function. Here is the call stack.
NTDLL! 77f9180c()
NTDLL! 77fb168b()
NTDLL! 77fa60c0()
KERNEL32! 77e9f540()
_CrtIsValidHeapPointer(const void * 0x002f2e68) line 1697
_free_dbg_lk(void * 0x002f2e68, int 1) line 1044 + 9 bytes
_free_dbg(void * 0x002f2e68, int 1) line 1001 + 13 bytes
free(void * 0x002f2e68) line 956 + 11 bytes
operator delete(void * 0x002f2e68) line 7 + 9 bytes
_STL::__stl_delete(void * 0x002f2e68) line 99 + 33 bytes
_STL::__node_alloc<1,0>::deallocate(void * 0x002f2e68, unsigned int
4291875228) line 253 + 42 bytes
_STL::allocator<char>::deallocate(char * 0x002f2e68, unsigned int
4291875228) line 360 + 19 bytes
_STL::_STLP_alloc_proxy<char *,char,_STL::allocator<char> >::deallocate(char
* 0x002f2e68, unsigned int 4291875228) line 507
_STL::_String_base<char,_STL::allocator<char> >::_M_deallocate_block() line
124 + 58 bytes
_STL::_String_base<char,_STL::allocator<char>
>::~_String_base<char,_STL::allocator<char> >() line 135 + 65 bytes
_STL::basic_string<char,std::char_traits<char>,_STL::allocator<char>
>::~basic_string<char,std::char_traits<char>,_STL::allocator<char> >() line
302 + 96 bytes
boost::test_toolbox::detail::wrapstrstream::~wrapstrstream() + 68 bytes
MyTest() line 28
boost::unit_test_framework::function_test_case::do_run() line 135 + 37 bytes
boost::unit_test_framework::detail::unit_test_monitor::function() line 74
boost::detail::catch_signals(boost::execution_monitor & {...}, int 0) line
344
boost::execution_monitor::execute(int 0) line 152 + 13 bytes
boost::unit_test_framework::detail::unit_test_monitor::execute_and_translate
(int 0) line 41
boost::unit_test_framework::test_case::run() line 69 + 151 bytes
boost::unit_test_framework::test_suite::do_run() line 181
boost::unit_test_framework::detail::unit_test_monitor::function() line 74
boost::detail::catch_signals(boost::execution_monitor & {...}, int 0) line
344
boost::execution_monitor::execute(int 0) line 152 + 13 bytes
boost::unit_test_framework::detail::unit_test_monitor::execute_and_translate
(int 0) line 41
boost::unit_test_framework::test_case::run() line 69 + 151 bytes
main(int 1, char * * 0x002f5b48) line 87
mainCRTStartup() line 338 + 17 bytes
KERNEL32! 77ea847c()
> 3. Try to use Boost.Test that comes with boost 1.30.0. Does it help?
It helped!
I don't understand why compiling with bjam produced the wrong results, but
as long as it works, I'm happy.
If someone wishes to dig deeper I'll be happy to provide all the details of
my build environment.
Thanks!
-----Original Message-----
From: boost-bounces_at_[hidden]
[mailto:boost-bounces_at_[hidden]]On Behalf Of Rozental, Gennadiy
Sent: 26 juin, 2003 22:09
To: 'boost_at_[hidden] '
Subject: RE: [boost] vc6 + stlport + boost/unit_test.hpp
> Hello,
> I neep help integrating STLport 4.5.3 with Microsoft Visual C++6.0 SP5
> and the unit test framework from boost(1.29).
> Everything seems fine when I use vc6 with STLport alone but when I try
> to use it in a test environment I get memory corruption. (It compiles
> and links fine).
1. Could you provide a small example so I could replicate the issue here?
2. Did you try to debug it? Where does it fail?
3. Try to use Boost.Test that comes with boost 1.30.0. Does it help?
I was using sucessfully the Unit test Frameowrk in above confguration. I
need more hints to tackle the issue.
Gennadiy.
_______________________________________________
Unsubscribe & other changes:
http://lists.boost.org/mailman/listinfo.cgi/boost
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk