> It looks like (by inspecting the regression tests for the quaternion
> library) both the Intel Compiler for Linux and gcc need the symbol
> BOOST_NO_TEMPLATE_TEMPLATES to be defined.

Looking at the errors suggests that some other problem is at work - at the
very least you need to replace <limits> with <boost/limits.hpp>

The check:

#if defined(__GNUC__) && __GNUC__ < 3
        template<typename T>
        ::std::ostream &                         operator << (
::std::ostream & os,

quaternion<T> const & q)
#else

should probably use BOOST_NO_STD_LOCALE throughout for this check - this is
the source of the STLport confusions, and you don't need the leading ::
before the std either - it will confuse gcc when std is an alias for the
global namespace.

In the test program:

#ifdef    BOOST_NO_STDC_NAMESPACE
using    ::sqrt;
using    ::atan;
using    ::log;
using    ::exp;
using    ::cos;
using    ::sin;
using    ::tan;
using    ::cosh;
using    ::sinh;
using    ::tanh;
#endif    /* BOOST_NO_STDC_NAMESPACE */

Should be enclosed in a namespace std{} block I assume, otherwise it has no
effect!!!!

Don't know about the remaining errors, I've given up for now...

John Maddock
http://ourworld.compuserve.com/homepages/john_maddock/index.htm


_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost

Reply via email to