forked from boostorg/integer
added workaround for duplicate comdat errors in MSVC++ 6.0
[SVN r29186]
This commit is contained in:
@ -54,7 +54,15 @@ void runtest(const char * type, T)
|
|||||||
<< ", max is " << make_char_numeric_for_streaming((traits::max)())
|
<< ", max is " << make_char_numeric_for_streaming((traits::max)())
|
||||||
<< std::endl;
|
<< std::endl;
|
||||||
BOOST_CHECK(traits::is_specialized);
|
BOOST_CHECK(traits::is_specialized);
|
||||||
|
#if defined(BOOST_MSVC) && (BOOST_MSVC <= 1200)
|
||||||
|
// MSVC++ 6.0 issues a LNK1179 error (duplicate comdat) when the compiler
|
||||||
|
// generates different symbol names with a very long common prefix:
|
||||||
|
// the dummy "&& true" disambiguates between the symbols generated by this
|
||||||
|
// BOOST_CHECK instantiation and the preceding one.
|
||||||
|
BOOST_CHECK(traits::is_integer && true);
|
||||||
|
#else
|
||||||
BOOST_CHECK(traits::is_integer);
|
BOOST_CHECK(traits::is_integer);
|
||||||
|
#endif
|
||||||
BOOST_CHECK(traits::is_integral == true);
|
BOOST_CHECK(traits::is_integral == true);
|
||||||
BOOST_CHECK(traits::const_min == (traits::min)());
|
BOOST_CHECK(traits::const_min == (traits::min)());
|
||||||
BOOST_CHECK(traits::const_max == (traits::max)());
|
BOOST_CHECK(traits::const_max == (traits::max)());
|
||||||
|
Reference in New Issue
Block a user