* lib/getdelim.c (SIZE_MAX): New macro, if not already defined.
[gnulib.git] / lib / c-strtod.c
index c9ebb80..031f5f8 100644 (file)
@@ -14,7 +14,7 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software Foundation,
-   Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
+   Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.  */
 
 /* Written by Paul Eggert.  */
 
@@ -39,8 +39,8 @@
 # define STRTOD_L strtod_l
 #endif
 
-/* c_strtold falls back on strtod if strtold isn't declared.  */
-#if LONG && HAVE_DECL_STRTOLD
+/* c_strtold falls back on strtod if strtold doesn't conform to C99.  */
+#if LONG && HAVE_C99_STRTOLD
 # define STRTOD strtold
 #else
 # define STRTOD strtod
@@ -59,19 +59,19 @@ C_STRTOD (char const *nptr, char **endptr)
 
 #else
 
-  char *saved_locale = setlocale (LC_ALL, NULL);
+  char *saved_locale = setlocale (LC_NUMERIC, NULL);
 
   if (saved_locale)
     {
       saved_locale = xstrdup (saved_locale);
-      setlocale (LC_ALL, "C");
+      setlocale (LC_NUMERIC, "C");
     }
 
   r = STRTOD (nptr, endptr);
 
   if (saved_locale)
     {
-      setlocale (LC_ALL, saved_locale);
+      setlocale (LC_NUMERIC, saved_locale);
       free (saved_locale);
     }