[R-pkg-devel] Proper way to express Fortran 2008 dependence for R package
Avraham Adler
@vr@h@m@@d|er @end|ng |rom gm@||@com
Mon Jan 30 01:12:59 CET 2023
I would like to convert some of my hand-rolled Fortran code to Fortran
intrinsics which entered the language in Fortran 2008, which should be
extremely widely supported at this time. Specifically, I would like to
use the log_gamma function and ieee_arithmetic functions and values.
If it helps, the current package is at [1] and devel branch with new
code is at [2].
If I understand it correctly, WRE allows for dependence on Fortran
2008 by explicitly passing -std=f2008 in PKG_FFLAGS (WRE section 1.2.3
Using F9x code [3]). However, checking a package as-cran with that
addition delivers a warning (further confirmed by win-builder and
rhub).
My question is is it appropriate to submit a package with that warning
and note it in the submission or is there a better way to express
reliance on Fortran 2008. The implication from WRE 1.2.4 is that
passing standards in Makevars is preferable to stating them in
DESCRIPTION, at least as regards C++.
What somewhat complicates matters is that if I build my package
(Rtools43 on Windows 10) without passing "-std=f2008" it still builds
properly and passes all the tests because Rtools43 is based on GCC12.2
which supports Fortran 2008 intrinsics. So I can probably submit it
without the flag, but someone with a very old Fortran installation may
suffer.
I understand being told I should just address CRAN directly, but I
thought I would try the collected institutional memory here first.
Thank you,
Avi
[1] https://github.com/aadler/Delaporte
[2] https://github.com/aadler/Delaporte/tree/devel
[3] https://cran.r-project.org/doc/manuals/r-devel/R-exts.html#Using-F9x-code
More information about the R-package-devel
mailing list