From 5b72dbb8565fa382ea4f2c577c36587bcf5a2e67 Mon Sep 17 00:00:00 2001 From: Niels Dekker Date: Sat, 22 May 2010 22:27:27 +0000 Subject: [PATCH] Added BOOST_NO_COMPLETE_VALUE_INITIALIZATION to Intel C++ <= 11.1 (trunk), see #4080. [SVN r62159] --- include/boost/config/compiler/intel.hpp | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/include/boost/config/compiler/intel.hpp b/include/boost/config/compiler/intel.hpp index 531242e9..cedca29e 100644 --- a/include/boost/config/compiler/intel.hpp +++ b/include/boost/config/compiler/intel.hpp @@ -157,6 +157,19 @@ template<> struct assert_intrinsic_wchar_t {}; # define BOOST_NO_TWO_PHASE_NAME_LOOKUP #endif +// +// An attempt to value-initialize a pointer-to-member may trigger an +// internal error on Intel <= 11.1 (last checked version), as was +// reported by John Maddock, Intel support issue 589832, May 2010. +// Moreover, according to test results from Huang-Vista-x86_32_intel, +// intel-vc9-win-11.1 may leave a non-POD array uninitialized. +// (Niels Dekker, LKEB, May 2010) +#if defined(__INTEL_COMPILER) +# if __INTEL_COMPILER <= 1110 +# define BOOST_NO_COMPLETE_VALUE_INITIALIZATION +# endif +#endif + // // last known and checked version: #if (BOOST_INTEL_CXX_VERSION > 1110)