[Cmake-commits] CMake branch, next, updated. v2.8.7-3128-g0171b71
Brad King
brad.king at kitware.com
Thu Mar 8 15:19:34 EST 2012
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "CMake".
The branch, next has been updated
via 0171b71ad69350b193bbc7d22dfa55f689689170 (commit)
via df92fb93232960b01abd6278fe6394619efd2a16 (commit)
via e5d232817e54c7a9a75a32940a59602d8c3908a7 (commit)
from aa9a2412888af4457bf330e4c1c72a24879630f2 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=0171b71ad69350b193bbc7d22dfa55f689689170
commit 0171b71ad69350b193bbc7d22dfa55f689689170
Merge: aa9a241 df92fb9
Author: Brad King <brad.king at kitware.com>
AuthorDate: Thu Mar 8 15:19:33 2012 -0500
Commit: CMake Topic Stage <kwrobot at kitware.com>
CommitDate: Thu Mar 8 15:19:33 2012 -0500
Merge topic 'update-KWIML' into next
df92fb9 Merge branch 'upstream-kwiml' into update-KWIML
e5d2328 KWIML: Make test_INT robust to #define-d int#_t and INT#_C
http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=df92fb93232960b01abd6278fe6394619efd2a16
commit df92fb93232960b01abd6278fe6394619efd2a16
Merge: 285f0db e5d2328
Author: Brad King <brad.king at kitware.com>
AuthorDate: Thu Mar 8 15:15:50 2012 -0500
Commit: Brad King <brad.king at kitware.com>
CommitDate: Thu Mar 8 15:15:50 2012 -0500
Merge branch 'upstream-kwiml' into update-KWIML
http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=e5d232817e54c7a9a75a32940a59602d8c3908a7
commit e5d232817e54c7a9a75a32940a59602d8c3908a7
Author: Brad King <brad.king at kitware.com>
AuthorDate: Wed Mar 7 16:05:17 2012 -0500
Commit: Brad King <brad.king at kitware.com>
CommitDate: Thu Mar 8 15:11:43 2012 -0500
KWIML: Make test_INT robust to #define-d int#_t and INT#_C
Our TEST* macro calls pass arguments such as "int64_t" with the
expectation that the preprocessing token will be used literally.
Some platforms #define int64_t as "long long" which is not a valid
preprocessing token. Perform preprocessor symbol concatenation
on the type names at the first level of macro evaluation to avoid
expanding the names.
diff --git a/test/test_INT_format.h.in b/test/test_INT_format.h.in
index 72a62f2..feca446 100644
--- a/test/test_INT_format.h.in
+++ b/test/test_INT_format.h.in
@@ -18,14 +18,12 @@
# define LANG "C "
#endif
-#define VALUE(T, U) \
- (@KWIML at _INT_##T)((@KWIML at _INT_##U)0xab << \
- ((sizeof(@KWIML at _INT_##T)-1)<<3)) \
+#define VALUE(T, U) (T)((U)0xab << ((sizeof(T)-1)<<3))
-#define TEST_C(C, V, PRI, T, U) \
+#define TEST_C_(C, V, PRI, T, U) \
{ \
- @KWIML at _INT_##T const x = VALUE(T, U); \
- @KWIML at _INT_##T y = @KWIML at _INT_##C(V); \
+ T const x = VALUE(T, U); \
+ T y = C(V); \
printf(LANG "@KWIML at _INT_" #C ":" \
" expression [%"@KWIML at _INT_PRI##PRI"]," \
" literal [%"@KWIML at _INT_PRI##PRI"]", x, y); \
@@ -40,9 +38,9 @@
} \
}
-#define TEST_PRI(PRI, T, U, STR) \
+#define TEST_PRI_(PRI, T, U, STR) \
{ \
- @KWIML at _INT_##T const x = VALUE(T, U); \
+ T const x = VALUE(T, U); \
char const* str = STR; \
sprintf(buf, "%"@KWIML at _INT_PRI##PRI, x); \
printf(LANG "@KWIML at _INT_PRI" #PRI ":" \
@@ -58,11 +56,11 @@
} \
}
-#define TEST_SCN(SCN, T, U, STR) TEST_SCN2(SCN, SCN, T, U, STR)
-#define TEST_SCN2(PRI, SCN, T, U, STR) \
+#define TEST_SCN_(SCN, T, U, STR) TEST_SCN2_(SCN, SCN, T, U, STR)
+#define TEST_SCN2_(PRI, SCN, T, U, STR) \
{ \
- @KWIML at _INT_##T const x = VALUE(T, U); \
- @KWIML at _INT_##T y; \
+ T const x = VALUE(T, U); \
+ T y; \
char const* str = STR; \
if(sscanf(str, "%"@KWIML at _INT_SCN##SCN, &y) != 1) \
{ \
@@ -82,10 +80,24 @@
} \
}
-#define TEST(FMT, T, U, STR) TEST2(FMT, FMT, T, U, STR)
-#define TEST2(PRI, SCN, T, U, STR) \
- TEST_PRI(PRI, T, U, STR) \
- TEST_SCN2(PRI, SCN, T, U, STR)
+#define TEST_(FMT, T, U, STR) TEST2_(FMT, FMT, T, U, STR)
+#define TEST2_(PRI, SCN, T, U, STR) \
+ TEST_PRI_(PRI, T, U, STR) \
+ TEST_SCN2_(PRI, SCN, T, U, STR)
+
+/* Concatenate T and U now to avoid expanding them. */
+#define TEST(FMT, T, U, STR) \
+ TEST_(FMT, @KWIML at _INT_##T, @KWIML at _INT_##U, STR)
+#define TEST2(PRI, SCN, T, U, STR) \
+ TEST2_(PRI, SCN, @KWIML at _INT_##T, @KWIML at _INT_##U, STR)
+#define TEST_C(C, V, PRI, T, U) \
+ TEST_C_(@KWIML at _INT_##C, V, PRI, @KWIML at _INT_##T, @KWIML at _INT_##U)
+#define TEST_PRI(PRI, T, U, STR) \
+ TEST_PRI_(PRI, @KWIML at _INT_##T, @KWIML at _INT_##U, STR)
+#define TEST_SCN(SCN, T, U, STR) \
+ TEST_SCN_(SCN, @KWIML at _INT_##T, @KWIML at _INT_##U, STR)
+#define TEST_SCN2(PRI, SCN, T, U, STR) \
+ TEST_SCN2_(PRI, SCN, @KWIML at _INT_##T, @KWIML at _INT_##U, STR)
static int test_INT_format(void)
{
-----------------------------------------------------------------------
Summary of changes:
hooks/post-receive
--
CMake
More information about the Cmake-commits
mailing list