# Checks for typedefs, structures, and compiler characteristics.
AC_TYPE_INT32_T
-
AC_TYPE_LONG_LONG_INT
-case $ac_cv_type_long_long_int in
- yes) json_have_long_long=1;;
- *) json_have_long_long=0;;
-esac
-AC_SUBST([json_have_long_long])
AC_C_INLINE
case $ac_cv_c_inline in
AC_SUBST([json_inline])
# Checks for library functions.
-AC_CHECK_FUNCS([setlocale localeconv])
+AC_CHECK_FUNCS([strtoll localeconv])
+
+case "$ac_cv_type_long_long_int$ac_cv_func_strtoll" in
+ yesyes) json_have_long_long=1;;
+ *) json_have_long_long=0;;
+esac
+AC_SUBST([json_have_long_long])
+
case "$ac_cv_header_locale_h$ac_cv_func_localeconv" in
yesyes) json_have_localeconv=1;;
*) json_have_localeconv=0;;
#define JSON_INLINE @json_inline@
#endif
-/* If your compiler supports the `long long` type,
- JSON_INTEGER_IS_LONG_LONG is defined to 1, otherwise to 0. */
+/* If your compiler supports the `long long` type and the strtoll()
+ library function, JSON_INTEGER_IS_LONG_LONG is defined to 1,
+ otherwise to 0. */
#define JSON_INTEGER_IS_LONG_LONG @json_have_long_long@
/* If locale.h and localeconv() are available, define to 1,
#define JSON_INLINE
#endif
-/* If your compiler supports the `long long` type,
- JSON_INTEGER_IS_LONG_LONG is defined to 1, otherwise to 0. */
+/* If your compiler supports the `long long` type and the strtoll()
+ library function, JSON_INTEGER_IS_LONG_LONG is defined to 1,
+ otherwise to 0. */
#define JSON_INTEGER_IS_LONG_LONG 1
/* If locale.h and localeconv() are available, define to 1,