Added intel C++ fixes to is_integral

Added non-throwing destructors to is_polymorphic internal testers


[SVN r16011]
This commit is contained in:
John Maddock
2002-10-29 12:06:06 +00:00
parent ac20374243
commit 612eea170c
2 changed files with 4 additions and 3 deletions

View File

@ -39,7 +39,7 @@ BOOST_TT_AUX_BOOL_TRAIT_CV_SPEC1(is_integral,char,true)
BOOST_TT_AUX_BOOL_TRAIT_CV_SPEC1(is_integral,wchar_t,true)
#endif
#if defined(BOOST_MSVC) && (BOOST_MSVC == 1200)
#if (defined(BOOST_MSVC) && (BOOST_MSVC == 1200)) || (defined(__INTEL_COMPILER) && defined(_MSC_VER) && (_MSC_VER <= 1300))
BOOST_TT_AUX_BOOL_TRAIT_CV_SPEC1(is_integral,unsigned __int8,true)
BOOST_TT_AUX_BOOL_TRAIT_CV_SPEC1(is_integral,__int8,true)
BOOST_TT_AUX_BOOL_TRAIT_CV_SPEC1(is_integral,unsigned __int16,true)

View File

@ -19,13 +19,13 @@ struct is_polymorphic_imp1
struct d1 : public T
{
d1();
~d1();
~d1()throw();
char padding[256];
};
struct d2 : public T
{
d2();
virtual ~d2();
virtual ~d2()throw();
#ifndef BOOST_MSVC
// for some reason this messes up VC++ when T has virtual bases:
virtual void foo();
@ -81,3 +81,4 @@ BOOST_TT_AUX_BOOL_TRAIT_DEF1(is_polymorphic,T,::boost::detail::is_polymorphic_im
#endif