Hi,
I am having some difficulties passing a vector of type std::vector<float128> to a function. I'm getting multiple errors out. The first few of which are:
tql2.cpp:13:50: error: ‘float128’ was not declared in this scope
void tql2(const int nm, int n, const std::vector<float128> & d, const std::vector<float128> & e, const std::vector< std::vector<float128> > & z, int ierr)
^
tql2.cpp:13:50: note: suggested alternative:
In file included from tql2.cpp:1:0:
/home/bcooper/Tarballs/boost_1_57_0/boost/multiprecision/float128.hpp:124:42: note: ‘boost::multiprecision::float128’
typedef number<float128_backend, et_off> float128;
^
tql2.cpp:13:58: error: template argument 1 is invalid
void tql2(const int nm, int n, const std::vector<float128> & d, const std::vector<float128> & e, const std::vector< std::vector<float128> > & z, int ierr)
^
tql2.cpp:13:58: error: template argument 2 is invalid
tql2.cpp:13:83: error: ‘float128’ was not declared in this scope
void tql2(const int nm, int n, const std::vector<float128> & d, const std::vector<float128> & e, const std::vector< std::vector<float128> > & z, int ierr)
^
tql2.cpp:13:83: note: suggested alternative:
In file included from tql2.cpp:1:0:
/home/bcooper/Tarballs/boost_1_57_0/boost/multiprecision/float128.hpp:124:42: note: ‘boost::multiprecision::float128’
typedef number<float128_backend, et_off> float128;
^
The first few lines of my code are:
#include <boost/multiprecision/float128.hpp>
#include <boost/math/cstdfloat/cstdfloat_types.hpp>
#include <boost/math/cstdfloat/cstdfloat_limits.hpp>
#include <boost/math/cstdfloat/cstdfloat_cmath.hpp>
#include <boost/math/cstdfloat/cstdfloat_iostream.hpp>
extern "C"{
#include <quadmath.h>
}
#include <iostream>
#include <vector>
#include <iterator>
void tql2(const int nm, int n, const std::vector<float128> & d, const std::vector<float128> & e, const std::vector< std::vector<float128> > & z, int ierr)
{
using namespace boost::multiprecision;
...
}
Not sure where I am going wrong? Any advice?
Thanks,