Boost logo

Boost :

From: AlisdairM (alisdair.meredith_at_[hidden])
Date: 2005-07-08 15:56:59


Robert Ramey wrote:

> Borland C++ 5.6 for Win32 Copyright (c) 1993, 2002 Borland
>
> c:\BoostMainCVS\libs\serialization\test\test_shared_ptr_132.cpp:
>
> Error E2238
> C:\BoostMainCVS\boost/serialization/detail/shared_count_132.hpp 75:
> Multiple declaration for 'bad_weak_ptr'
>
> Error E2344 C:\BoostMainCVS\boost/detail/bad_weak_ptr.hpp 39: Earlier
> declaration of 'bad_weak_ptr'
>
> Error E2238
> C:\BoostMainCVS\boost/serialization/detail/shared_count_132.hpp 95:
> Multiple declaration for 'sp_counted_base'
>
> Error E2344 C:\BoostMainCVS\boost/detail/sp_counted_base_w32.hpp 36:
> Earlier declaration of 'sp_counted_base'
>
> Error E2238
> C:\BoostMainCVS\boost/serialization/detail/shared_count_132.hpp 320:
> Multiple declaration for 'shared_count'
>
> Error E2228
> C:\BoostMainCVS\boost/serialization/detail/shared_count_132.hpp 320:
> Too many error or warning messages
>
> *** 6 errors in Compile ***

Strange, those are the exact same errors I was getting *before* I
applied the patch.

Can you confirm that the first workaround in shared_count_132.hpp looks
like this:

namespace boost_132 {

#if !BOOST_WORKAROUND( __BORLANDC__, BOOST_TESTED_AT( 0x564) )
using namespace boost;
#endif

Note the unsual '!' in the BOOST_WORKAROUND test.

I am compiling against the latest CVS repositoy, and it appears fine to
me.

See my reply to Tobias for the precise cause of the problem. But
basically we have to remove all 'using namespace boost' directives from
the Borland view of the files. If you have any more usings on your
local copy, they might be the cause an need similar wrapping.

-- 
AlisdairM

Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk