* lib/inttypes_.h (_LONG_LONG_FORMAT_PREFIX): New macro.
authorPaul Eggert <eggert@cs.ucla.edu>
Thu, 12 Oct 2006 06:17:55 +0000 (06:17 +0000)
committerPaul Eggert <eggert@cs.ucla.edu>
Thu, 12 Oct 2006 06:17:55 +0000 (06:17 +0000)
Add support for Tandem NonStop R series.
(_PRI64_PREFIX, _PRIu64_PREFIX, _SCN64_PREFIX, _SCNu64_PREFIX):
Use new macro.

ChangeLog
lib/inttypes_.h

index 81a2b44..d3bfc74 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,10 @@
 2006-10-11  Paul Eggert  <eggert@cs.ucla.edu>
 
+       * lib/inttypes_.h (_LONG_LONG_FORMAT_PREFIX): New macro.
+       Add support for Tandem NonStop R series.
+       (_PRI64_PREFIX, _PRIu64_PREFIX, _SCN64_PREFIX, _SCNu64_PREFIX):
+       Use new macro.
+
        * lib/rename-dest-slash.c: Include stdbool.h but not string.h.
        (has_trailing_slash): Omit size arg; all callers changed.
        Omit 'inline', since it doesn't help performance and we'd
index cf529b2..6500118 100644 (file)
 
 #if ! defined __cplusplus || defined __STDC_FORMAT_MACROS
 
+# if defined _MSC_VER || defined __MINGW32__
+#  define _LONG_LONG_FORMAT_PREFIX "I64"
+# elif defined _TNS_R_TARGET
+   /* Tandem NonStop R series and compatible platforms released before
+      July 2005 support %Ld but not %lld.  */
+#  define _LONG_LONG_FORMAT_PREFIX "L"
+# else
+#  define _LONG_LONG_FORMAT_PREFIX "ll"
+# endif
+
 # if !defined PRId8 || @PRI_MACROS_BROKEN@
 #  undef PRId8
 #  ifdef INT8_MAX
 # ifdef INT64_MAX
 #  if INT64_MAX == LONG_MAX
 #   define _PRI64_PREFIX "l"
-#  elif defined _MSC_VER || defined __MINGW32__
-#   define _PRI64_PREFIX "I64"
 #  elif @HAVE_LONG_LONG_INT@ && LONG_MAX >> 30 == 1
-#   define _PRI64_PREFIX "ll"
+#   define _PRI64_PREFIX _LONG_LONG_FORMAT_PREFIX
 #  endif
 #  if !defined PRId64 || @PRI_MACROS_BROKEN@
 #   undef PRId64
 # ifdef UINT64_MAX
 #  if UINT64_MAX == ULONG_MAX
 #   define _PRIu64_PREFIX "l"
-#  elif defined _MSC_VER || defined __MINGW32__
-#   define _PRIu64_PREFIX "I64"
 #  elif @HAVE_UNSIGNED_LONG_LONG_INT@ && ULONG_MAX >> 31 == 1
-#   define _PRIu64_PREFIX "ll"
+#   define _PRIu64_PREFIX _LONG_LONG_FORMAT_PREFIX
 #  endif
 #  if !defined PRIo64 || @PRI_MACROS_BROKEN@
 #   undef PRIo64
 # ifdef INT64_MAX
 #  if INT64_MAX == LONG_MAX
 #   define _SCN64_PREFIX "l"
-#  elif defined _MSC_VER || defined __MINGW32__
-#   define _SCN64_PREFIX "I64"
 #  elif @HAVE_LONG_LONG_INT@ && LONG_MAX >> 30 == 1
-#   define _SCN64_PREFIX "ll"
+#   define _SCN64_PREFIX _LONG_LONG_FORMAT_PREFIX
 #  endif
 #  if !defined SCNd64 || @PRI_MACROS_BROKEN@
 #   undef SCNd64
 # ifdef UINT64_MAX
 #  if UINT64_MAX == ULONG_MAX
 #   define _SCNu64_PREFIX "l"
-#  elif defined _MSC_VER || defined __MINGW32__
-#   define _SCNu64_PREFIX "I64"
 #  elif @HAVE_UNSIGNED_LONG_LONG_INT@ && ULONG_MAX >> 31 == 1
-#   define _SCNu64_PREFIX "ll"
+#   define _SCNu64_PREFIX _LONG_LONG_FORMAT_PREFIX
 #  endif
 #  if !defined SCNo64 || @PRI_MACROS_BROKEN@
 #   undef SCNo64