Date: 2001-11-08 19:03:44
I've used boost python in the past without problems.
Now I'm trying to help someone else wrap their code and, strangely
enough, when we try to compile against the boost_python library we
get the following error from Visual C++:
boost_python\boost\python\classes.hpp(379) : error C2955: 'modulus' :
use of class template requires template argument list
c:\program files\microsoft visual
studio\vc98\include\functional(57) : see declaration of 'modulus'
boost_python\boost\type_traits\ice.hpp(80) : fatal error C1506:
unrecoverable block scoping error
The line/code it is complaining about is the following:
template <class T>
PyObject* class_t<T>::instance_number_power(PyObject* obj, PyObject*
exponent, PyObject* modulus) const
return downcast<T>(obj)->power(exponent, modulus);
If I change the two instances of the word "modulus" to something else
(like "modulusx") and recompile boost_python and then try to compile
the code with boost_python, that solves the problem.
The source code we are trying to use doesn't have any instances of the
word "modulus" in it.
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk