X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;ds=sidebyside;f=lib%2Fxstrtod.c;h=8450829bd2b949e532d2fa11a780a0b85f0fea17;hb=b3b353659ac863c94e9705047710a99fa58fe0b1;hp=f6edefccebc6d0071634fc7813ca5a18c1eead12;hpb=b8d7f00196977bc8aebd45c724c9f84b1536aecd;p=gnulib.git diff --git a/lib/xstrtod.c b/lib/xstrtod.c index f6edefcce..8450829bd 100644 --- a/lib/xstrtod.c +++ b/lib/xstrtod.c @@ -1,5 +1,5 @@ /* xstrtod.c - error-checking interface to strtod - Copyright (C) 1996 Free Software Foundation, Inc. + Copyright (C) 1996, 1999, 2000, 2003 Free Software Foundation, Inc. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -18,19 +18,20 @@ /* Written by Jim Meyering. */ #ifdef HAVE_CONFIG_H -#include +# include #endif -#ifdef STDC_HEADERS -#include -#else -double strtod (); -#endif +#include "xstrtod.h" #include -#include #include -#include "xstrtod.h" +#include +#include + +/* Tell the compiler that non-default rounding modes are used. */ +#if 199901 <= __STDC_VERSION__ + #pragma STDC FENV_ACCESS ON +#endif /* An interface to strtod that encapsulates all the error checking one should usually perform. Like strtod, but upon successful @@ -38,10 +39,7 @@ double strtod (); non-zero and don't modify *RESULT upon any failure. */ int -xstrtod (str, ptr, result) - const char *str; - const char **ptr; - double *result; +xstrtod (char const *str, char const **ptr, double *result) { double val; char *terminator; @@ -68,4 +66,3 @@ xstrtod (str, ptr, result) *result = val; return fail; } -