Temporarily skipped value-initialization of m_ptr_to_member, as well as m_ptr_to_member_array for Intel <= 11.1, still trying to avoid the internal error, Intel support issue 589832.

[SVN r62114]
This commit is contained in:
Niels Dekker
2010-05-20 15:56:59 +00:00
parent fce2db3875
commit ff36d0b7c5

View File

@ -521,10 +521,10 @@ namespace boost_no_complete_value_initialization
// It should be removed later this month, and is certainly not meant to become part of the release branch!!!
#ifdef __INTEL_COMPILER
#if __INTEL_COMPILER <= 1110
// The following macro indicates that initialization of m_ptr_to_member_array must be skipped.
// The following macro indicates that initialization of ptr_to_member must be skipped.
// Such an initialization triggered an internal error (assertion failed at: "shared/edgglue/edg_expr.c",
// line 2859) on Intel <= 11.1 (Intel support issue 589832, reported by John Maddock, May 2010).
#define BOOST_DETAIL_NO_COMPLETE_VALUE_INITIALIZATION_SKIP_PTR_TO_MEMBER_ARRAY
#define BOOST_DETAIL_NO_COMPLETE_VALUE_INITIALIZATION_SKIP_PTR_TO_MEMBER
#endif
#endif
@ -576,8 +576,10 @@ namespace boost_no_complete_value_initialization
member_function_ptr_type m_member_function_ptr_array[2];
member_function_ptr_struct m_member_function_ptr_struct;
member_function_ptr_struct m_member_function_ptr_struct_array[2];
#ifndef BOOST_DETAIL_NO_COMPLETE_VALUE_INITIALIZATION_SKIP_PTR_TO_MEMBER
ptr_to_member_type m_ptr_to_member;
ptr_to_member_type m_ptr_to_member_array[2];
#endif
ptr_to_member_struct m_ptr_to_member_struct;
ptr_to_member_struct m_ptr_to_member_struct_array[2];
bit_field_struct m_bit_field_struct;
@ -668,8 +670,8 @@ namespace boost_no_complete_value_initialization
m_member_function_ptr_array(),
m_member_function_ptr_struct(),
m_member_function_ptr_struct_array(),
#ifndef BOOST_DETAIL_NO_COMPLETE_VALUE_INITIALIZATION_SKIP_PTR_TO_MEMBER
m_ptr_to_member(),
#ifndef BOOST_DETAIL_NO_COMPLETE_VALUE_INITIALIZATION_SKIP_PTR_TO_MEMBER_ARRAY
m_ptr_to_member_array(),
#endif
m_ptr_to_member_struct(),
@ -771,10 +773,10 @@ namespace boost_no_complete_value_initialization
FAILED_TO_VALUE_INITIALIZE(m_member_function_ptr_struct) +
FAILED_TO_VALUE_INITIALIZE(m_member_function_ptr_struct_array[0]) +
FAILED_TO_VALUE_INITIALIZE(m_member_function_ptr_struct_array[1]) +
FAILED_TO_VALUE_INITIALIZE(m_ptr_to_member) +
#ifdef BOOST_DETAIL_NO_COMPLETE_VALUE_INITIALIZATION_SKIP_PTR_TO_MEMBER_ARRAY
( (std::cout << "Skipped m_ptr_to_member_array check\n"), 1) +
#ifdef BOOST_DETAIL_NO_COMPLETE_VALUE_INITIALIZATION_SKIP_PTR_TO_MEMBER
( (std::cout << "Note: Skipped ptr_to_member checks\n"), 1) +
#else
FAILED_TO_VALUE_INITIALIZE(m_ptr_to_member) +
FAILED_TO_VALUE_INITIALIZE(m_ptr_to_member_array[0]) +
FAILED_TO_VALUE_INITIALIZE(m_ptr_to_member_array[1]) +
#endif
@ -1024,7 +1026,7 @@ namespace boost_no_complete_value_initialization
<< num_failures_of_temporaries << '+'
<< num_failures_of_heap_objects << "): "
<< total_num_failures
<< "\nDetected by boost_no_complete_value_initialization::test() revision 28."
<< "\nDetected by boost_no_complete_value_initialization::test() revision 29."
<< std::endl;
}
return static_cast<int>(total_num_failures);