1 // (C) Copyright John Maddock 2011.
2 // (C) Copyright Cray, Inc. 2013
3 // Use, modification and distribution are subject to the
4 // Boost Software License, Version 1.0. (See accompanying file
5 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
7 // See http://www.boost.org for most recent version.
9 // Greenhills C compiler setup:
11 #define BOOST_COMPILER "Cray C version " BOOST_STRINGIZE(_RELEASE)
14 # error "Boost is not configured for Cray compilers prior to version 8, please try the configure script."
18 // Check this is a recent EDG based compiler, otherwise we don't support it here:
20 #ifndef __EDG_VERSION__
21 # error "Unsupported Cray compiler, please try running the configure script."
24 #include "boost/config/compiler/common_edg.hpp"
29 #define BOOST_NO_CXX11_STATIC_ASSERT
30 #define BOOST_NO_CXX11_AUTO_DECLARATIONS
31 #define BOOST_NO_CXX11_AUTO_MULTIDECLARATIONS
32 #define BOOST_HAS_NRVO
33 #define BOOST_NO_CXX11_VARIADIC_MACROS
34 #define BOOST_NO_CXX11_VARIADIC_TEMPLATES
35 #define BOOST_NO_CXX11_UNIFIED_INITIALIZATION_SYNTAX
36 #define BOOST_NO_CXX11_UNICODE_LITERALS
37 #define BOOST_NO_TWO_PHASE_NAME_LOOKUP
38 #define BOOST_HAS_NRVO
39 #define BOOST_NO_CXX11_TEMPLATE_ALIASES
40 #define BOOST_NO_CXX11_STATIC_ASSERT
41 #define BOOST_NO_SFINAE_EXPR
42 #define BOOST_NO_CXX11_SCOPED_ENUMS
43 #define BOOST_NO_CXX11_RVALUE_REFERENCES
44 #define BOOST_NO_CXX11_RANGE_BASED_FOR
45 #define BOOST_NO_CXX11_RAW_LITERALS
46 #define BOOST_NO_CXX11_NULLPTR
47 #define BOOST_NO_CXX11_NOEXCEPT
48 #define BOOST_NO_CXX11_LAMBDAS
49 #define BOOST_NO_CXX11_LOCAL_CLASS_TEMPLATE_PARAMETERS
50 #define BOOST_NO_CXX11_FUNCTION_TEMPLATE_DEFAULT_ARGS
51 #define BOOST_NO_CXX11_EXPLICIT_CONVERSION_OPERATORS
52 #define BOOST_NO_CXX11_DELETED_FUNCTIONS
53 #define BOOST_NO_CXX11_DEFAULTED_FUNCTIONS
54 #define BOOST_NO_CXX11_DECLTYPE_N3276
55 #define BOOST_NO_CXX11_DECLTYPE
56 #define BOOST_NO_CXX11_CONSTEXPR
57 #define BOOST_NO_CXX11_USER_DEFINED_LITERALS
58 #define BOOST_NO_COMPLETE_VALUE_INITIALIZATION
59 #define BOOST_NO_CXX11_CHAR32_T
60 #define BOOST_NO_CXX11_CHAR16_T
61 #define BOOST_NO_CXX11_REF_QUALIFIERS
62 #define BOOST_NO_CXX11_FINAL
65 //#define BOOST_BCB_PARTIAL_SPECIALIZATION_BUG
66 #define BOOST_MATH_DISABLE_STD_FPCLASSIFY
67 //#define BOOST_HAS_FPCLASSIFY
69 #define BOOST_SP_USE_PTHREADS
70 #define BOOST_AC_USE_PTHREADS
72 /* everything that follows is working around what are thought to be
73 * compiler shortcomings. Revist all of these regularly.
76 //#define BOOST_USE_ENUM_STATIC_ASSERT
77 //#define BOOST_BUGGY_INTEGRAL_CONSTANT_EXPRESSIONS //(this may be implied by the previous #define
79 // These constants should be provided by the
80 // compiler, at least when -hgnu is asserted on the command line.
82 #ifndef __ATOMIC_RELAXED
83 #define __ATOMIC_RELAXED 0
84 #define __ATOMIC_CONSUME 1
85 #define __ATOMIC_ACQUIRE 2
86 #define __ATOMIC_RELEASE 3
87 #define __ATOMIC_ACQ_REL 4
88 #define __ATOMIC_SEQ_CST 5