(set_image_of_range_1): In no-TRANSLATE case,
[gnulib.git] / m4 / inttypes.m4
index 9c10135..9571814 100644 (file)
@@ -1,22 +1,32 @@
-#serial 4
+#serial 6
 
 dnl From Paul Eggert.
 
-# Define HAVE_INTTYPES_H if <inttypes.h> exists,
-# doesn't clash with <sys/types.h>, and declares uintmax_t.
+AC_PREREQ(2.52)
 
-AC_DEFUN([jm_AC_HEADER_INTTYPES_H],
+# Define intmax_t to long or long long if <inttypes.h> doesn't define.
+
+AC_DEFUN([jm_AC_TYPE_INTMAX_T],
+[
+  AC_REQUIRE([jm_AC_TYPE_LONG_LONG])
+  AC_CHECK_TYPE(intmax_t, ,
+    [test $ac_cv_type_long_long = yes \
+       && ac_type='long long' \
+       || ac_type='long'
+     AC_DEFINE_UNQUOTED(intmax_t, $ac_type,
+       [Define to widest signed type if <inttypes.h> doesn't define.])])
+])
+
+# Define uintmax_t to unsigned long or unsigned long long
+# if <inttypes.h> doesn't define.
+
+AC_DEFUN([jm_AC_TYPE_UINTMAX_T],
 [
-  AC_CACHE_CHECK([for inttypes.h], jm_ac_cv_header_inttypes_h,
-  [AC_TRY_COMPILE(
-    [#include <sys/types.h>
-#include <inttypes.h>],
-    [uintmax_t i = (uintmax_t) -1;],
-    jm_ac_cv_header_inttypes_h=yes,
-    jm_ac_cv_header_inttypes_h=no)])
-  if test $jm_ac_cv_header_inttypes_h = yes; then
-    AC_DEFINE_UNQUOTED(HAVE_INTTYPES_H, 1,
-[Define if <inttypes.h> exists, doesn't clash with <sys/types.h>,
-   and declares uintmax_t. ])
-  fi
+  AC_REQUIRE([jm_AC_TYPE_UNSIGNED_LONG_LONG])
+  AC_CHECK_TYPE(uintmax_t, ,
+    [test $ac_cv_type_unsigned_long_long = yes \
+       && ac_type='unsigned long long' \
+       || ac_type='unsigned long'
+     AC_DEFINE_UNQUOTED(uintmax_t, $ac_type,
+       [Define to widest unsigned type if <inttypes.h> doesn't define.])])
 ])