You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
It's relevant if we want to use the same problem decoded in different precisions (single, double, quadruple) within the same code.
For example, there will be a conflict when calling fortran_open_ to provide the *.d file because the three libraries libcutest_single, libcutest_double, and libcutest_quadruple contain the same symbol.
We can do the same thing in quadruple precision with fortran_open_q_ and fortran_close_q_.
Off-topic: the mangling of symbols for quadruple precision is different from single/double precision. The first part (cutest) uses uppercase letters, which complicates writing multiprecision code.
An underscore is also missing at the end of the symbols, it should be *_q_.
All symbols are probably wrong in quadruple precision due to that.
It can be easily fix by adding a macro like it's done for symbols in single and double precision.
The text was updated successfully, but these errors were encountered:
I made the change fortran_open -> fortran_open_r (with r preprocessed to "", _s and _q as appropriate. Of course these routines are identical for all three precisions as they do not use reals.
Did you mean that CUTEST_const should say CUTEST_cconst (etc) in cutest.h? I agree
Yes, there is no routine cutest_cdincop so I have removed this from the header file
It's relevant if we want to use the same problem decoded in different precisions (single, double, quadruple) within the same code.
For example, there will be a conflict when calling
fortran_open_
to provide the *.d file because the three librarieslibcutest_single
,libcutest_double
, andlibcutest_quadruple
contain the same symbol.We can do the same thing in quadruple precision with
fortran_open_q_
andfortran_close_q_
.Off-topic: the mangling of symbols for quadruple precision is different from single/double precision. The first part (
cutest
) uses uppercase letters, which complicates writing multiprecision code.An underscore is also missing at the end of the symbols, it should be
*_q_
.All symbols are probably wrong in quadruple precision due to that.
It can be easily fix by adding a macro like it's done for symbols in single and double precision.
The text was updated successfully, but these errors were encountered: