k lets say i have the following snippet of code
typedef boost::operators<T> operatorsT;
template <class T>
void myFunc(const T&)
{
typedef boost::operators<T> operatorT;
BOOST_STATIC_ASSERT((is_base_of::value));
// bunch of code after...
}
on my compiler it generates this error.
:/boost_msvc/include\boost/operators.hpp(283) : error C2803: 'operator --'
must have at least one formal parameter of class type
C:/boost_msvc/include\boost/operators.hpp(268) : see reference to class
template instantiation 'boost::decrementable' being compiled
with
[
T=int,
B=boost::detail::empty_base<int>
]
C:/boost_msvc/include\boost/operators.hpp(284) : error C2146: syntax error :
missing ';' before identifier 'nrv'
C:/boost_msvc/include\boost/operators.hpp(284) : error C4430: missing type
specifier - int assumed. Note: C++ does not support default-int
C:/boost_msvc/include\boost/operators.hpp(284) : error C2061: syntax error :
identifier 'x'
C:/boost_msvc/include\boost/operators.hpp(284) : error C4430: missing type
specifier - int assumed. Note: C++ does not support default-int
C:/boost_msvc/include\boost/operators.hpp(284) : fatal error C1903: unable
to recover from previous error(s); stopping compilation