Commit 64c01554 authored by Andrew J. Burns (Cont's avatar Andrew J. Burns (Cont

Preprocessing for type conflicts

parent 583c14de
......@@ -119,6 +119,67 @@ TEST_BIG_ENDIAN(XDMF_BIG_ENDIAN)
unset(HAVE_BOOST_SHARED_DYNAMIC_CAST CACHE)
unset(HAVE_CXX11_SHARED_PTR CACHE)
if (WIN32)
unset(INT64_DOES_NOT_EQUAL_LONG CACHE)
unset(INT64_DOES_NOT_EQUAL_LONG_LONG CACHE)
check_cxx_source_compiles("
template <typename T>
void testLong()
{
}
template<>
void testLong<long>()
{
}
template<>
void testLong<__int64>()
{
}
int main(int ac, char * av[])
{
}
"
INT64_DOES_NOT_EQUAL_LONG)
check_cxx_source_compiles("
template <typename T>
void testLong()
{
}
template<>
void testLong<long long>()
{
}
template<>
void testLong<__int64>()
{
}
int main(int ac, char * av[])
{
}
"
INT64_DOES_NOT_EQUAL_LONG_LONG)
if (INT64_DOES_NOT_EQUAL_LONG)
add_definitions(-DINT64_DOES_NOT_EQUAL_LONG)
endif ()
if (INT64_DOES_NOT_EQUAL_LONG_LONG)
add_definitions(-DINT64_DOES_NOT_EQUAL_LONG_LONG)
endif ()
endif ()
check_cxx_source_compiles("
#include <boost/shared_ptr.hpp>
......
......@@ -1200,6 +1200,7 @@ XdmfArray::setArrayType<long long>()
}
#ifdef WIN32
#ifndef INT64_DOES_NOT_EQUAL_LONG && INT64_DOES_NOT_EQUAL_LONG_LONG
template <>
XDMFCORE_EXPORT
void
......@@ -1207,6 +1208,7 @@ XdmfArray::setArrayType<__int64>()
{
mArrayType = XdmfArrayType::Int64();
}
#endif
#endif
template <>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment