Hello, This is what "Writing R extensions" currently says about R_atof and R_strtod:
>> Function: void R_atof (const char* str) >> Function: void R_strtod (const char* str, char ** end) >> >> Implementations of the C99/POSIX functions atof and strtod which >> guarantee platform-dependent behaviour, including always using the >> period as the decimal point aka ‘radix character’ and converting >> "NA" to R’s NA_REAL_ . Besides the easily fixable return type (void -> double), shouldn't the documentation mention the fact that, unlike the standard C library functions, R's parser returns NA_REAL instead of 0 when no conversion is performed (including for the "NA" string, *end == str)? Index: doc/manual/R-exts.texi =================================================================== --- doc/manual/R-exts.texi (revision 87211) +++ doc/manual/R-exts.texi (working copy) @@ -16482,12 +16482,12 @@ @apifun R_atof @apifun R_strtod -@deftypefun void R_atof (const char* @var{str}) -@deftypefunx void R_strtod (const char* @var{str}, char ** @var{end}) +@deftypefun double R_atof (const char* @var{str}) +@deftypefunx double R_strtod (const char* @var{str}, char ** @var{end}) Implementations of the C99/POSIX functions @code{atof} and @code{strtod} which guarantee platform-dependent behaviour, including always using the -period as the decimal point @emph{aka} `@I{radix character}' and converting -@code{"NA"} to R's @code{NA_REAL_} . +period as the decimal point @emph{aka} `@I{radix character}' and returning +R's @code{NA_REAL_} for all unconverted strings, including @code{"NA"}. @end deftypefun -- Best regards, Ivan ______________________________________________ R-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-devel