[R-pkg-devel] Write and print Fortran commands yields Note in R CMD check
Duncan Murdoch
murdoch.duncan at gmail.com
Thu Sep 14 16:27:33 CEST 2017
On 14/09/2017 9:20 AM, Stefan McKinnon Høj-Edwards wrote:
> Dear all,
>
> I am in the process of preparing a R-package that uses Fortran subroutines,
> and upon R CMD check (both local and on win-builder), I receive the
> following Note:
>
> File 'Siccuracy/libs/i386/Siccuracy.dll':
> Found '_gfortran_st_write', possibly from 'write' (Fortran), 'print'
> (Fortran)
> Objects: 'converters.o', 'mutate_chips.o', 'plink.o'
>
>
> I use the write command in two ways: 1) writing to a file, and 2)
> convert a numeric value to a string.
>
> For 1), it is the usual 'write(unit=int, fmt) vars'.
>
> For 2), the 'write(nChar,*) ncol' is required for integer 'ncol' and
> character 'nChar'.
>
>
> These instances are the only occurrences of 'write' and 'print'. Can I
> ignore this Note?
>
I suspect not. The Writing R Extensions manual describes the problem:
Fortran I/O initialization can interfere with the C I/O used by R.
This won't happen on all platforms, so it's really difficult for you to
be sure your uses are safe.
The recommended way to handle this is to do all the I/O in R or C code.
Duncan Murdoch
More information about the R-package-devel
mailing list