Boost logo

Boost Users :

From: Alain Leblanc (aalebl_at_[hidden])
Date: 2008-07-22 18:28:51


Hi,

I'm trying to compile the following piece of code with gcc version
4.2.3 (Ubuntu 4.2.3-2ubuntu7) and I keep getting the error message
listed below. A colleague of mine told me that he can compile it on
MSVC. If I remove the template and set everything as vector<double>
then it compiles without any problem.

Anyone has an idea of what I may be doing wrong?

Thanks,

Alain

<... bunch of include statements ...>
namespace UBLAS = boost::numeric::ublas;
//summation of a vector
template <class Tv>
Tv vectorSum(const UBLAS::vector< Tv >& A)
{
        Tv sum = 0;
        for (UBLAS::vector< Tv >::const_iterator it = A.begin(); it!=A.end(); ++it)
                sum += (*it);

        return sum;
}

g++ -I. -I./vector testvector.cc

In file included from testvector.cc:43:
vector/TVector.h: In function 'Tv vectorSum(const
boost::numeric::ublas::vector<Tv,
boost::numeric::ublas::unbounded_array<T, std::allocator<_CharT> >
>&)':
vector/TVector.h:509: error: expected `;' before 'it'
vector/TVector.h:509: error: 'it' was not declared in this scope


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