On Tue, Mar 10, 2009 at 1:14 PM, John Maddock
<john@johnmaddock.co.uk> wrote:
I recently started using the Boost Math libraries because I need legendre
polynomials. However I cam across a problem I was hoping someone on this
list could help me with.
My personal code compiles fine with no problems. When I add the line
#include "boost/math/special_functions/legendre.hpp"
then I get compiler errors attributed to one of my header files.
Specifically I get:
my_header.hh:109 error: ISO C++ forbids declaration of ‘tuple’ with no type
As I mentioned before, I don't believe the problem is in my header file
because it compiles just fine without the legendre.hpp file.
Has anyone seen this problem before? Do you know how to fix it? I am
running gcc 4.2.1 on Mac OS X 10.5.6.
No I haven't seen that before, I would guess that there is a name clash somewhere, since legrendre.hpp pulls in Boost.TR1.Tuples.
So... what's at line 109 in your header, and do you do a using namespace std::tr1; or something similar somewhere?
HTH, John.
Yep, you were right. It is a name clash. Line 109 was a boost::tuple. I changed them all and now it works.
Thanks for the help.
Jeremy