~ubuntu-branches/ubuntu/oneiric/bombono-dvd/oneiric

« back to all changes in this revision

Viewing changes to libs/boost-lib/boost/config/compiler/intel.hpp

  • Committer: Bazaar Package Importer
  • Author(s): Alessio Treglia
  • Date: 2010-11-04 11:46:25 UTC
  • mfrom: (1.1.3 upstream)
  • Revision ID: james.westby@ubuntu.com-20101104114625-2tfaxma74eqggp5r
Tags: 0.8.0-0ubuntu1
* New upstream release (LP: #670193).
* Refresh 02_sparc.diff patch.
* Replace 05-boost_filesystem-link.patch with 05-fix_boost.patch, it fixes
  build failure with Boost <= 1.44.
* Bump Standards.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
//  (C) Copyright John Maddock 2001. 
2
 
//  (C) Copyright Peter Dimov 2001. 
3
 
//  (C) Copyright Jens Maurer 2001. 
4
 
//  (C) Copyright David Abrahams 2002 - 2003. 
5
 
//  (C) Copyright Aleksey Gurtovoy 2002 - 2003. 
6
 
//  (C) Copyright Guillaume Melquiond 2002 - 2003. 
7
 
//  (C) Copyright Beman Dawes 2003. 
8
 
//  (C) Copyright Martin Wille 2003. 
9
 
//  Use, modification and distribution are subject to the 
10
 
//  Boost Software License, Version 1.0. (See accompanying file 
 
1
//  (C) Copyright John Maddock 2001-8.
 
2
//  (C) Copyright Peter Dimov 2001.
 
3
//  (C) Copyright Jens Maurer 2001.
 
4
//  (C) Copyright David Abrahams 2002 - 2003.
 
5
//  (C) Copyright Aleksey Gurtovoy 2002 - 2003.
 
6
//  (C) Copyright Guillaume Melquiond 2002 - 2003.
 
7
//  (C) Copyright Beman Dawes 2003.
 
8
//  (C) Copyright Martin Wille 2003.
 
9
//  Use, modification and distribution are subject to the
 
10
//  Boost Software License, Version 1.0. (See accompanying file
11
11
//  LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
12
12
 
13
13
//  See http://www.boost.org for most recent version.
79
79
// supports wchar_t natively. *BUT* there is a problem here: the standard
80
80
// headers define this macro if they typedef wchar_t. Anyway, we're lucky
81
81
// because they define it without a value, while Intel C++ defines it
82
 
// to 1. So we can check its value to see if the macro was defined natively 
83
 
// or not. 
84
 
// Under UNIX, the situation is exactly the same, but the macro _WCHAR_T 
 
82
// to 1. So we can check its value to see if the macro was defined natively
 
83
// or not.
 
84
// Under UNIX, the situation is exactly the same, but the macro _WCHAR_T
85
85
// is used instead.
86
86
#  if ((_WCHAR_T_DEFINED + 0) == 0) && ((_WCHAR_T + 0) == 0)
87
87
#    define BOOST_NO_INTRINSIC_WCHAR_T
90
90
 
91
91
#if defined(__GNUC__) && !defined(BOOST_FUNCTION_SCOPE_USING_DECLARATION_BREAKS_ADL)
92
92
//
93
 
// Figure out when Intel is emulating this gcc bug:
 
93
// Figure out when Intel is emulating this gcc bug
 
94
// (All Intel versions prior to 9.0.26, and versions
 
95
// later than that if they are set up to emulate gcc 3.2
 
96
// or earlier):
94
97
//
95
 
#  if ((__GNUC__ == 3) && (__GNUC_MINOR__ <= 2)) || (BOOST_INTEL <= 900)
 
98
#  if ((__GNUC__ == 3) && (__GNUC_MINOR__ <= 2)) || (BOOST_INTEL < 900) || (__INTEL_COMPILER_BUILD_DATE < 20050912)
96
99
#     define BOOST_FUNCTION_SCOPE_USING_DECLARATION_BREAKS_ADL
97
100
#  endif
98
101
#endif
99
 
 
 
102
#if (defined(__GNUC__) && (__GNUC__ < 4)) || defined(_WIN32) || (BOOST_INTEL_CXX_VERSION <= 1110)
 
103
// GCC or VC emulation:
 
104
#define BOOST_NO_TWO_PHASE_NAME_LOOKUP
 
105
#endif
100
106
//
101
107
// Verify that we have actually got BOOST_NO_INTRINSIC_WCHAR_T
102
108
// set correctly, if we don't do this now, we will get errors later
122
128
#     define BOOST_HAS_MS_INT64
123
129
#  endif
124
130
#  define BOOST_NO_SWPRINTF
 
131
#  define BOOST_NO_TWO_PHASE_NAME_LOOKUP
125
132
#elif defined(_WIN32)
126
133
#  define BOOST_DISABLE_WIN32
127
134
#endif
139
146
#if BOOST_INTEL_CXX_VERSION < 500
140
147
#  error "Compiler not supported or configured - please reconfigure"
141
148
#endif
 
149
 
 
150
// Intel on MacOS requires
 
151
#if defined(__APPLE__) && defined(__INTEL_COMPILER)
 
152
#  define BOOST_NO_TWO_PHASE_NAME_LOOKUP
 
153
#endif
 
154
 
 
155
// Intel on Altix Itanium
 
156
#if defined(__itanium__) && defined(__INTEL_COMPILER)
 
157
#  define BOOST_NO_TWO_PHASE_NAME_LOOKUP
 
158
#endif
 
159
 
 
160
//
 
161
// An attempt to value-initialize a pointer-to-member may trigger an
 
162
// internal error on Intel <= 11.1 (last checked version), as was 
 
163
// reported by John Maddock, Intel support issue 589832, May 2010.
 
164
// Moreover, according to test results from Huang-Vista-x86_32_intel,
 
165
// intel-vc9-win-11.1 may leave a non-POD array uninitialized, in some 
 
166
// cases when it should be value-initialized.
 
167
// (Niels Dekker, LKEB, May 2010)
 
168
#if defined(__INTEL_COMPILER)
 
169
#  if __INTEL_COMPILER <= 1110
 
170
#    define BOOST_NO_COMPLETE_VALUE_INITIALIZATION
 
171
#  endif
 
172
#endif
 
173
 
 
174
//
 
175
// Dynamic shared object (DSO) and dynamic-link library (DLL) support
 
176
//
 
177
#if defined(__GNUC__) && (__GNUC__ >= 4)
 
178
#  define BOOST_SYMBOL_EXPORT __attribute__((visibility("default")))
 
179
#  define BOOST_SYMBOL_IMPORT
 
180
#  define BOOST_SYMBOL_VISIBLE __attribute__((visibility("default")))
 
181
#endif
 
182
 
142
183
//
143
184
// last known and checked version:
144
 
#if (BOOST_INTEL_CXX_VERSION > 900)
 
185
#if (BOOST_INTEL_CXX_VERSION > 1110)
145
186
#  if defined(BOOST_ASSERT_CONFIG)
146
187
#     error "Unknown compiler version - please run the configure tests and report the results"
147
188
#  elif defined(_MSC_VER)
148
 
#     pragma message("Unknown compiler version - please run the configure tests and report the results")
 
189
//
 
190
//      We don't emit this warning any more, since we have so few
 
191
//      defect macros set anyway (just the one).
 
192
//
 
193
//#     pragma message("Unknown compiler version - please run the configure tests and report the results")
149
194
#  endif
150
195
#endif
151
196
 
152
 
 
153
 
 
154
 
 
155