diff --git a/Utilities/KWIML/ABI.h.in b/Utilities/KWIML/ABI.h.in index c4121ff7a..0ec6d0ef5 100644 --- a/Utilities/KWIML/ABI.h.in +++ b/Utilities/KWIML/ABI.h.in @@ -216,7 +216,8 @@ suppression macro @KWIML@_ABI_NO_VERIFY was defined. # endif #endif #if !defined(@KWIML@_ABI_SIZEOF_LONG_LONG) -# if defined(_LONGLONG) /* SGI, some GNU, perhaps others. */ +# if defined(_LONGLONG) /* SGI, some GNU, perhaps others. */ \ + && !defined(_MSC_VER) # define @KWIML@_ABI_SIZEOF_LONG_LONG 8 # elif defined(_LONG_LONG) /* IBM XL, perhaps others. */ # define @KWIML@_ABI_SIZEOF_LONG_LONG 8 diff --git a/Utilities/KWIML/test/CMakeLists.txt b/Utilities/KWIML/test/CMakeLists.txt index febc99453..a2359cce1 100644 --- a/Utilities/KWIML/test/CMakeLists.txt +++ b/Utilities/KWIML/test/CMakeLists.txt @@ -35,6 +35,7 @@ if(KWIML_LANGUAGE_C) list(APPEND test_srcs test_ABI_C.c test_INT_C.c + test_include_C.c ) endif() if(KWIML_LANGUAGE_CXX) @@ -42,6 +43,7 @@ if(KWIML_LANGUAGE_CXX) list(APPEND test_srcs test_ABI_CXX.cxx test_INT_CXX.cxx + test_include_CXX.cxx ) endif() diff --git a/Utilities/KWIML/test/test.c b/Utilities/KWIML/test/test.c index d71a28452..131c81f92 100644 --- a/Utilities/KWIML/test/test.c +++ b/Utilities/KWIML/test/test.c @@ -16,6 +16,8 @@ extern int test_ABI_C(void); extern int test_INT_C(void); extern int test_ABI_CXX(void); extern int test_INT_CXX(void); +extern int test_include_C(void); +extern int test_include_CXX(void); #ifdef __cplusplus } // extern "C" #endif @@ -26,10 +28,12 @@ int main(void) #ifdef KWIML_LANGUAGE_C result = test_ABI_C() && result; result = test_INT_C() && result; + result = test_include_C() && result; #endif #ifdef KWIML_LANGUAGE_CXX result = test_ABI_CXX() && result; result = test_INT_CXX() && result; + result = test_include_CXX() && result; #endif return result? 0 : 1; } diff --git a/Utilities/KWIML/test/test_include_C.c b/Utilities/KWIML/test/test_include_C.c new file mode 100644 index 000000000..fb3e4cf7f --- /dev/null +++ b/Utilities/KWIML/test/test_include_C.c @@ -0,0 +1,22 @@ +/*============================================================================ + Kitware Information Macro Library + Copyright 2010-2011 Kitware, Inc. + + Distributed under the OSI-approved BSD License (the "License"); + see accompanying file Copyright.txt for details. + + This software is distributed WITHOUT ANY WARRANTY; without even the + implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + See the License for more information. +============================================================================*/ +#include + +/* Test KWIML header inclusion after above system headers. */ +#include "test.h" +#include KWIML_HEADER(ABI.h) +#include KWIML_HEADER(INT.h) + +int test_include_C(void) +{ + return 1; +} diff --git a/Utilities/KWIML/test/test_include_CXX.cxx b/Utilities/KWIML/test/test_include_CXX.cxx new file mode 100644 index 000000000..057b7c21c --- /dev/null +++ b/Utilities/KWIML/test/test_include_CXX.cxx @@ -0,0 +1,22 @@ +/*============================================================================ + Kitware Information Macro Library + Copyright 2010-2011 Kitware, Inc. + + Distributed under the OSI-approved BSD License (the "License"); + see accompanying file Copyright.txt for details. + + This software is distributed WITHOUT ANY WARRANTY; without even the + implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + See the License for more information. +============================================================================*/ +#include + +/* Test KWIML header inclusion after above system headers. */ +#include "test.h" +#include KWIML_HEADER(ABI.h) +#include KWIML_HEADER(INT.h) + +extern "C" int test_include_CXX(void) +{ + return 1; +}