[CLN-list] construction of cl_F from long double

GiulianoDammando at libero.it GiulianoDammando at libero.it
Thu Mar 22 09:39:28 CET 2012


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




More information about the CLN-list mailing list