[Cmake-commits] CMake branch, next, updated. v2.8.7-3113-g9514452

Brad King brad.king at kitware.com
Wed Mar 7 17:22:51 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  9514452257a2dd38d2ff4b622f5859b216715133 (commit)
       via  a6483168d310b82a1e03506c04784fd99591cd9f (commit)
       via  ae099cd86a1a4c159c2e0bcb388b57d27a3ab2e6 (commit)
      from  b2d476e8d8dd3baea4d984a69e86bf409a43e042 (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=9514452257a2dd38d2ff4b622f5859b216715133
commit 9514452257a2dd38d2ff4b622f5859b216715133
Merge: b2d476e a648316
Author:     Brad King <brad.king at kitware.com>
AuthorDate: Wed Mar 7 17:22:46 2012 -0500
Commit:     CMake Topic Stage <kwrobot at kitware.com>
CommitDate: Wed Mar 7 17:22:46 2012 -0500

    Merge topic 'update-kwiml' into next
    
    a648316 Merge branch 'upstream-kwiml' into update-kwiml
    ae099cd KWIML: Make test_INT_format robust to #define-d intN_t types


http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=a6483168d310b82a1e03506c04784fd99591cd9f
commit a6483168d310b82a1e03506c04784fd99591cd9f
Merge: 285f0db ae099cd
Author:     Brad King <brad.king at kitware.com>
AuthorDate: Wed Mar 7 17:20:35 2012 -0500
Commit:     Brad King <brad.king at kitware.com>
CommitDate: Wed Mar 7 17:20:35 2012 -0500

    Merge branch 'upstream-kwiml' into update-kwiml


http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=ae099cd86a1a4c159c2e0bcb388b57d27a3ab2e6
commit ae099cd86a1a4c159c2e0bcb388b57d27a3ab2e6
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: Wed Mar 7 17:18:55 2012 -0500

    KWIML: Make test_INT_format robust to #define-d intN_t types
    
    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..4425f8f 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 = @KWIML at _INT_##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_(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:
 Utilities/KWIML/test/test_INT_format.h.in |   44 ++++++++++++++++++----------
 1 files changed, 28 insertions(+), 16 deletions(-)


hooks/post-receive
-- 
CMake


More information about the Cmake-commits mailing list