/* Convert string representation of a number into an intmax_t value.
- Copyright (C) 1999, 2001, 2002, 2003 Free Software Foundation, Inc.
+
+ Copyright (C) 1999, 2001, 2002, 2003, 2004 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
#if HAVE_INTTYPES_H
# include <inttypes.h>
-#else
-# if HAVE_STDINT_H
-# include <stdint.h>
-# endif
#endif
-
-#if HAVE_STDLIB_H
-# include <stdlib.h>
+#if HAVE_STDINT_H
+# include <stdint.h>
#endif
+#include <stdlib.h>
+
/* Verify a requirement at compile-time (unlike assert, which is runtime). */
#define verify(name, assertion) struct name { char a[(assertion) ? 1 : -1]; }
#ifdef UNSIGNED
-# ifndef HAVE_DECL_STRTOUL
-"this configure-time declaration test was not run"
-# endif
-# if !HAVE_DECL_STRTOUL
-unsigned long strtoul (char const *, char **, int);
-# endif
# ifndef HAVE_DECL_STRTOULL
"this configure-time declaration test was not run"
# endif
#else
-# ifndef HAVE_DECL_STRTOL
-"this configure-time declaration test was not run"
-# endif
-# if !HAVE_DECL_STRTOL
-long strtol (char const *, char **, int);
-# endif
# ifndef HAVE_DECL_STRTOLL
"this configure-time declaration test was not run"
# endif
{
#if HAVE_LONG_LONG
verify (size_is_that_of_long_or_long_long,
- (sizeof (INT) == sizeof (long)
- || sizeof (INT) == sizeof (long long)));
+ (sizeof (INT) == sizeof (long int)
+ || sizeof (INT) == sizeof (long long int)));
- if (sizeof (INT) != sizeof (long))
+ if (sizeof (INT) != sizeof (long int))
return strtoll (ptr, endptr, base);
#else
verify (size_is_that_of_long,
- sizeof (INT) == sizeof (long));
+ sizeof (INT) == sizeof (long int));
#endif
return strtol (ptr, endptr, base);