[Cmake-commits] CMake branch, next, updated. v2.8.7-3104-gdf4918f

Brad King brad.king at kitware.com
Wed Mar 7 16:15:16 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  df4918fc7ca76d031c0b728322635df5b7260842 (commit)
       via  c6ae09183d85c7d7464da3563abf0e0e48fd2cfe (commit)
       via  7e631b0d9d8c2f5e694527147ab6e1e5031d2fa0 (commit)
      from  8863f0c43ea6a8ab592d569dd8bc6afa636d792f (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=df4918fc7ca76d031c0b728322635df5b7260842
commit df4918fc7ca76d031c0b728322635df5b7260842
Merge: 8863f0c c6ae091
Author:     Brad King <brad.king at kitware.com>
AuthorDate: Wed Mar 7 16:15:10 2012 -0500
Commit:     CMake Topic Stage <kwrobot at kitware.com>
CommitDate: Wed Mar 7 16:15:10 2012 -0500

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


http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=c6ae09183d85c7d7464da3563abf0e0e48fd2cfe
commit c6ae09183d85c7d7464da3563abf0e0e48fd2cfe
Merge: 285f0db 7e631b0
Author:     Brad King <brad.king at kitware.com>
AuthorDate: Wed Mar 7 16:10:50 2012 -0500
Commit:     Brad King <brad.king at kitware.com>
CommitDate: Wed Mar 7 16:10:50 2012 -0500

    Merge branch 'upstream-kwiml' into update-KWIML


http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=7e631b0d9d8c2f5e694527147ab6e1e5031d2fa0
commit 7e631b0d9d8c2f5e694527147ab6e1e5031d2fa0
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 16:05:17 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..7b2b781 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, T, 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