summaryrefslogtreecommitdiff
path: root/Utilities/KWIML
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2012-06-21 08:05:20 -0400
committerBrad King <brad.king@kitware.com>2012-06-21 08:05:20 -0400
commit984c1760fb7fe49f2294d26ad51c907aebe05c5a (patch)
treec5bcdcb3baf5020d16acf7b26ed7e64ae8f90ba6 /Utilities/KWIML
parent30305b989e944d0b5bdff16ba408d636a8c81e91 (diff)
parentec1d35248510235483abdf1294afb96500ae910f (diff)
downloadcmake-984c1760fb7fe49f2294d26ad51c907aebe05c5a.tar.gz
Merge branch 'upstream-kwiml' into update-KWIML
Diffstat (limited to 'Utilities/KWIML')
-rw-r--r--Utilities/KWIML/ABI.h.in4
-rw-r--r--Utilities/KWIML/INT.h.in29
2 files changed, 22 insertions, 11 deletions
diff --git a/Utilities/KWIML/ABI.h.in b/Utilities/KWIML/ABI.h.in
index e85a1c588e..060a520dba 100644
--- a/Utilities/KWIML/ABI.h.in
+++ b/Utilities/KWIML/ABI.h.in
@@ -156,6 +156,8 @@ suppression macro @KWIML@_ABI_NO_VERIFY was defined.
# define @KWIML@_ABI_CHAR_IS_UNSIGNED 1
# elif defined(__BORLANDC__) /* Borland default */
# define @KWIML@_ABI_CHAR_IS_SIGNED 1
+# elif defined(__hpux) /* Old HP: no __HP_cc/__HP_aCC/__GNUC__ above */
+# define @KWIML@_ABI_CHAR_IS_SIGNED 1 /* (unless +uc) */
# endif
#endif
#if !defined(@KWIML@_ABI_CHAR_IS_UNSIGNED) && !defined(@KWIML@_ABI_CHAR_IS_SIGNED) \
@@ -251,6 +253,8 @@ suppression macro @KWIML@_ABI_NO_VERIFY was defined.
# else
# define @KWIML@_ABI_SIZEOF_LONG_LONG 0
# endif
+# elif defined(__hpux) && !defined(__GNUC__) /* Old HP: no __HP_cc/__HP_aCC above */
+# define @KWIML@_ABI_SIZEOF_LONG_LONG 8
# endif
#endif
#if !defined(@KWIML@_ABI_SIZEOF_LONG_LONG) && !defined(@KWIML@_ABI_NO_ERROR_LONG_LONG)
diff --git a/Utilities/KWIML/INT.h.in b/Utilities/KWIML/INT.h.in
index d40edcde4f..d2eda63879 100644
--- a/Utilities/KWIML/INT.h.in
+++ b/Utilities/KWIML/INT.h.in
@@ -91,10 +91,11 @@ An includer may test the following macros after inclusion:
Some compilers define integer format macros incorrectly for their
own formatted print/scan implementations.
- @KWIML@_INT_BROKEN_INT64_C = macro INT64_C is incorrect if defined
- @KWIML@_INT_BROKEN_UINT64_C = macro UINT64_C is incorrect if defined
+ @KWIML@_INT_BROKEN_INT#_C = macro INT#_C is incorrect if defined
+ @KWIML@_INT_BROKEN_UINT#_C = macro UINT#_C is incorrect if defined
Some compilers define integer constant macros incorrectly and
- cannot handle literals as large as the integer type.
+ cannot handle literals as large as the integer type or even
+ produce bad preprocessor syntax.
@KWIML@_INT_BROKEN_INT8_T = type 'int8_t' is available but incorrect
Some compilers have a flag to make 'char' (un)signed but do not account
@@ -259,8 +260,6 @@ An includer may test the following macros after inclusion:
# endif
#elif defined(__SUNPRO_C) || defined(__SUNPRO_CC)
# define @KWIML@_INT__NO_SCN8
-#elif defined(__HP_cc) || defined(__HP_aCC)
-# define @KWIML@_INT__NO_SCN8
#elif defined(__BORLANDC__)
# define @KWIML@_INT__NO_SCN8
# define @KWIML@_INT__NO_SCN64
@@ -268,6 +267,8 @@ An includer may test the following macros after inclusion:
# define @KWIML@_INT__NO_SCN8
#elif defined(__WATCOMC__)
# define @KWIML@_INT__NO_SCN8
+# elif defined(__hpux) /* HP runtime lacks support (any compiler) */
+# define @KWIML@_INT__NO_SCN8
#endif
/* 8-bit d, i */
@@ -341,12 +342,12 @@ An includer may test the following macros after inclusion:
#endif
/* 8-bit constants */
-#if defined(INT8_C)
+#if defined(INT8_C) && !defined(@KWIML@_INT_BROKEN_INT8_C)
# define @KWIML@_INT_INT8_C(c) INT8_C(c)
#else
# define @KWIML@_INT_INT8_C(c) c
#endif
-#if defined(UINT8_C)
+#if defined(UINT8_C) && !defined(@KWIML@_INT_BROKEN_UINT8_C)
# define @KWIML@_INT_UINT8_C(c) UINT8_C(c)
#else
# define @KWIML@_INT_UINT8_C(c) c ## u
@@ -435,12 +436,12 @@ An includer may test the following macros after inclusion:
#endif
/* 16-bit constants */
-#if defined(INT16_C)
+#if defined(INT16_C) && !defined(@KWIML@_INT_BROKEN_INT16_C)
# define @KWIML@_INT_INT16_C(c) INT16_C(c)
#else
# define @KWIML@_INT_INT16_C(c) c
#endif
-#if defined(UINT16_C)
+#if defined(UINT16_C) && !defined(@KWIML@_INT_BROKEN_UINT16_C)
# define @KWIML@_INT_UINT16_C(c) UINT16_C(c)
#else
# define @KWIML@_INT_UINT16_C(c) c ## u
@@ -528,13 +529,19 @@ An includer may test the following macros after inclusion:
# define @KWIML@_INT_PRIX32 "X"
#endif
+#if defined(__hpux) && defined(__GNUC__) && !defined(__LP64__) \
+ && defined(__CONCAT__) && defined(__CONCAT_U__)
+ /* Some HPs define UINT32_C incorrectly and break GNU. */
+# define @KWIML@_INT_BROKEN_UINT32_C
+#endif
+
/* 32-bit constants */
-#if defined(INT32_C)
+#if defined(INT32_C) && !defined(@KWIML@_INT_BROKEN_INT32_C)
# define @KWIML@_INT_INT32_C(c) INT32_C(c)
#else
# define @KWIML@_INT_INT32_C(c) c
#endif
-#if defined(UINT32_C)
+#if defined(UINT32_C) && !defined(@KWIML@_INT_BROKEN_UINT32_C)
# define @KWIML@_INT_UINT32_C(c) UINT32_C(c)
#else
# define @KWIML@_INT_UINT32_C(c) c ## u