Hi, i'm getting the following error when using the cln::cl_float function with
a long double
argument
lanczos.cpp:4119:70: error: call of overloaded ‘cl_float(long double, const
cln::float_format_t&)’ is ambiguous
/opt/local/include/cln/float.h:69:19: note: candidates are: const cln::cl_F
cln::cl_float(const cln::cl_F&, const cln::cl_F&)
/opt/local/include/cln/float.h:76:19: note: const cln::cl_F
cln::cl_float(const cln::cl_F&, cln::float_format_t)
/opt/local/include/cln/float.h:90:19: note: const cln::cl_F
cln::cl_float(const cln::cl_I&, const cln::cl_F&)
/opt/local/include/cln/float.h:97:19: note: const cln::cl_F
cln::cl_float(const cln::cl_I&, cln::float_format_t)
/opt/local/include/cln/float.h:110:19: note: const cln::cl_F
cln::cl_float(const cln::cl_RA&, const cln::cl_F&)
/opt/local/include/cln/float.h:117:19: note: const cln::cl_F
cln::cl_float(const cln::cl_RA&, cln::float_format_t)
/opt/local/include/cln/float.h:126:19: note: const cln::cl_F
cln::cl_float(int, const cln::cl_F&)
/opt/local/include/cln/float.h:128:19: note: const cln::cl_F
cln::cl_float(unsigned int, const cln::cl_F&)
/opt/local/include/cln/float.h:130:19: note: const cln::cl_F
cln::cl_float(int, cln::float_format_t)
/opt/local/include/cln/float.h:132:19: note: const cln::cl_F
cln::cl_float(unsigned int, cln::float_format_t)
/opt/local/include/cln/float.h:139:19: note: const cln::cl_F
cln::cl_float(float, const cln::cl_F&)
/opt/local/include/cln/float.h:141:19: note: const cln::cl_F
cln::cl_float(double, const cln::cl_F&)
/opt/local/include/cln/float.h:143:19: note: const cln::cl_F
cln::cl_float(float, cln::float_format_t)
/opt/local/include/cln/float.h:145:19: note: const cln::cl_F
cln::cl_float(double, cln::float_format_t)
/opt/local/include/cln/real.h:51:19: note: const cln::cl_F
cln::cl_float(const cln::cl_R&, const cln::cl_F&)
/opt/local/include/cln/real.h:58:19: note: const cln::cl_F
cln::cl_float(const cln::cl_R&, cln::float_format_t)
suppose this is due to a missing constructor for the long double type. I
would like to know if there is any fix
to this problem allowing to preserve the larger precision of the long double
compared to double.
Thanks in advance, Giuliano