Opened 8 years ago

Last modified 8 years ago

#10750 new Bugs

bad interaction between ublas, float128 and std::complex

Reported by: vbeffara@… Owned by: Gunter
Milestone: To Be Determined Component: uBLAS
Version: Boost 1.57.0 Severity: Problem
Keywords: Cc:

Description

The following code fails to compile:

#include <boost/multiprecision/float128.hpp>
#include <boost/numeric/ublas/lu.hpp>

using boost::multiprecision::float128;

int main () {
	boost::numeric::ublas::matrix <std::complex<float128>> A(1,1);
	lu_factorize(A);
}

(on OSX 10.10 using g++-4.9 -fext-numeric-literals -lquadmath), I am getting a huge complaint about missing operator< at numeric/ublas/detail/matrix_assign.hpp:33:35. Things work perfectly with a matrix of float128, or a matrix of std::complex<double>. And other operations work with std::complex<float128>.

Is std::complex<float128> supposed to work?

Change History (1)

comment:1 by vbeffara@…, 8 years ago

BTW, adding

#define BOOST_UBLAS_TYPE_CHECK 0

makes it compile. but I kind of found out about that by accident ...

Note: See TracTickets for help on using tickets.