Boost logo

Boost Users :

Subject: [Boost-users] [Signals2] Error on building project RELEASE
From: Daniele Barzotti (daniele.barzotti_at_[hidden])
Date: 2009-04-27 06:03:43


Hi,
I'm writing a library that use the following:

#include <boost/asio.hpp>
#include <boost/asio/serial_port.hpp>
#include <boost/thread.hpp>
#include <boost/signals2/signal.hpp>
#include <boost/scoped_ptr.hpp>
#include <boost/enable_shared_from_this.hpp>

I retrieved Signals2 from svn on 15/04/09.

When I build it like STATIC DEBUG lib all works fine, but when I switch
to STATIC RELEASE I got two errors...

The preprocessor statements are:

FOR RELEASE:
WIN32;_LIB;_WINDOWS;EUROATLIB_EXPORTS;_WIN32_WINNT=0x0501

FOR DEBUG :
WIN32;_DEBUG;_LIB;_WINDOWS;EUROATLIB_EXPORTS;_WIN32_WINNT=0x0501

What could be the problem?

Tnx,
Daniele.

--------------------------------------------------------
ATDispatcher.cpp
C:\Programmi\Microsoft Visual Studio 9.0\VC\include\xutility(419) :
error C2664:
'boost::signals2::detail::stack_allocator<T,n_stack_elements>::stack_allocator(boost::signals2::detail::stack_storage<T,10>
*)' : cannot convert parameter 1 from
'boost::signals2::detail::stack_allocator<T,n_stack_elements>' to
'boost::signals2::detail::stack_storage<T,n_stack_elements> *'
        with
        [
            T=std::_Aux_cont,
            n_stack_elements=10
        ]
        and
        [
            T=boost::shared_ptr<void>,
            n_stack_elements=10
        ]
        and
        [
            T=std::_Aux_cont,
            n_stack_elements=10
        ]
        No user-defined-conversion operator available that can perform
this conversion, or the operator cannot be called
        C:\Programmi\Microsoft Visual Studio
9.0\VC\include\xutility(417) : while compiling class template member
function
'std::_Container_base_aux_alloc_real<_Alloc>::_Container_base_aux_alloc_real(_Alloc)'
        with
        [

_Alloc=boost::signals2::detail::stack_allocator<boost::shared_ptr<void>,10>
        ]
        C:\Programmi\Microsoft Visual Studio 9.0\VC\include\vector(421)
: see reference to class template instantiation
'std::_Container_base_aux_alloc_real<_Alloc>' being compiled
        with
        [

_Alloc=boost::signals2::detail::stack_allocator<boost::shared_ptr<void>,10>
        ]
        C:\Programmi\Microsoft Visual Studio 9.0\VC\include\vector(439)
: see reference to class template instantiation
'std::_Vector_val<_Ty,_Alloc>' being compiled
        with
        [
            _Ty=boost::shared_ptr<void>,

_Alloc=boost::signals2::detail::stack_allocator<boost::shared_ptr<void>,10>
        ]
        G:\lib\boost_signals2\boost/signals2/detail/stack_vector.hpp(28)
: see reference to class template instantiation 'std::vector<_Ty,_Ax>'
being compiled
        with
        [
            _Ty=boost::shared_ptr<void>,

_Ax=boost::signals2::detail::stack_allocator<boost::shared_ptr<void>,10>
        ]

G:\lib\boost_signals2\boost/signals2/detail/slot_call_iterator.hpp(39) :
see reference to class template instantiation
'boost::signals2::detail::stack_vector<T,NumStackElements>' being compiled
        with
        [
            T=boost::shared_ptr<void>,
            NumStackElements=10
        ]

G:\lib\boost_signals2\boost/signals2/detail/slot_call_iterator.hpp(41) :
see reference to class template instantiation
'boost::signals2::detail::slot_call_iterator_cache<ResultType,Function>'
being compiled

Serial.cpp
C:\Programmi\Microsoft Visual Studio 9.0\VC\include\xutility(419) :
error C2664:
'boost::signals2::detail::stack_allocator<T,n_stack_elements>::stack_allocator(boost::signals2::detail::stack_storage<T,10>
*)' : cannot convert parameter 1 from
'boost::signals2::detail::stack_allocator<T,n_stack_elements>' to
'boost::signals2::detail::stack_storage<T,n_stack_elements> *'
        with
        [
            T=std::_Aux_cont,
            n_stack_elements=10
        ]
        and
        [
            T=boost::shared_ptr<void>,
            n_stack_elements=10
        ]
        and
        [
            T=std::_Aux_cont,
            n_stack_elements=10
        ]
        No user-defined-conversion operator available that can perform
this conversion, or the operator cannot be called
        C:\Programmi\Microsoft Visual Studio
9.0\VC\include\xutility(417) : while compiling class template member
function
'std::_Container_base_aux_alloc_real<_Alloc>::_Container_base_aux_alloc_real(_Alloc)'
        with
        [

_Alloc=boost::signals2::detail::stack_allocator<boost::shared_ptr<void>,10>
        ]
        C:\Programmi\Microsoft Visual Studio 9.0\VC\include\vector(421)
: see reference to class template instantiation
'std::_Container_base_aux_alloc_real<_Alloc>' being compiled
        with
        [

_Alloc=boost::signals2::detail::stack_allocator<boost::shared_ptr<void>,10>
        ]
        C:\Programmi\Microsoft Visual Studio 9.0\VC\include\vector(439)
: see reference to class template instantiation
'std::_Vector_val<_Ty,_Alloc>' being compiled
        with
        [
            _Ty=boost::shared_ptr<void>,

_Alloc=boost::signals2::detail::stack_allocator<boost::shared_ptr<void>,10>
        ]
        G:\lib\boost_signals2\boost/signals2/detail/stack_vector.hpp(28)
: see reference to class template instantiation 'std::vector<_Ty,_Ax>'
being compiled
        with
        [
            _Ty=boost::shared_ptr<void>,

_Ax=boost::signals2::detail::stack_allocator<boost::shared_ptr<void>,10>
        ]

G:\lib\boost_signals2\boost/signals2/detail/slot_call_iterator.hpp(39) :
see reference to class template instantiation
'boost::signals2::detail::stack_vector<T,NumStackElements>' being compiled
        with
        [
            T=boost::shared_ptr<void>,
            NumStackElements=10
        ]

G:\lib\boost_signals2\boost/signals2/detail/slot_call_iterator.hpp(41) :
see reference to class template instantiation
'boost::signals2::detail::slot_call_iterator_cache<ResultType,Function>'
being compiled
LRRPTokenizer.cpp
--------------------------------------------------------


Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net