1 //  (C) Copyright Noel Belcourt 2007.
2 //  Use, modification and distribution are subject to the
3 //  Boost Software License, Version 1.0. (See accompanying file
4 //  LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
5 
6 //  See http://www.boost.org for most recent version.
7 
8 //  PGI C++ compiler setup:
9 
10 #define BOOST_COMPILER_VERSION __PGIC__##__PGIC_MINOR__
11 #define BOOST_COMPILER "PGI compiler version " BOOST_STRINGIZE(_COMPILER_VERSION)
12 
13 //
14 // Threading support:
15 // Turn this on unconditionally here, it will get turned off again later
16 // if no threading API is detected.
17 //
18 
19 // PGI 10.x doesn't seem to define __PGIC__
20 
21 // versions earlier than 10.x do define __PGIC__
22 #if __PGIC__ >= 10
23 
24 // options requested by configure --enable-test
25 #define BOOST_HAS_PTHREADS
26 #define BOOST_HAS_NRVO
27 #define BOOST_HAS_LONG_LONG
28 
29 // options --enable-test wants undefined
30 #undef BOOST_NO_STDC_NAMESPACE
31 #undef BOOST_NO_EXCEPTION_STD_NAMESPACE
32 #undef BOOST_DEDUCED_TYPENAME
33 
34 #elif __PGIC__ >= 7
35 
36 #define BOOST_FUNCTION_SCOPE_USING_DECLARATION_BREAKS_ADL
37 #define BOOST_NO_TWO_PHASE_NAME_LOOKUP
38 #define BOOST_NO_SWPRINTF
39 #define BOOST_NO_AUTO_MULTIDECLARATIONS
40 #define BOOST_NO_AUTO_DECLARATIONS
41 
42 #else
43 
44 #  error "Pgi compiler not configured - please reconfigure"
45 
46 #endif
47 //
48 // C++0x features
49 //
50 //   See boost\config\suffix.hpp for BOOST_NO_LONG_LONG
51 //
52 #define BOOST_NO_CHAR16_T
53 #define BOOST_NO_CHAR32_T
54 #define BOOST_NO_CONSTEXPR
55 #define BOOST_NO_DECLTYPE
56 #define BOOST_NO_DEFAULTED_FUNCTIONS
57 #define BOOST_NO_DELETED_FUNCTIONS
58 #define BOOST_NO_EXPLICIT_CONVERSION_OPERATORS
59 #define BOOST_NO_EXTERN_TEMPLATE
60 #define BOOST_NO_FUNCTION_TEMPLATE_DEFAULT_ARGS
61 #define BOOST_NO_INITIALIZER_LISTS
62 #define BOOST_NO_LAMBDAS
63 #define BOOST_NO_NOEXCEPT
64 #define BOOST_NO_NULLPTR
65 #define BOOST_NO_RAW_LITERALS
66 #define BOOST_NO_RVALUE_REFERENCES
67 #define BOOST_NO_SCOPED_ENUMS
68 #define BOOST_NO_SFINAE_EXPR
69 #define BOOST_NO_STATIC_ASSERT
70 #define BOOST_NO_TEMPLATE_ALIASES
71 #define BOOST_NO_UNICODE_LITERALS
72 #define BOOST_NO_VARIADIC_TEMPLATES
73 #define BOOST_NO_VARIADIC_MACROS
74 #define BOOST_NO_UNIFIED_INITIALIZATION_SYNTAX
75 
76 //
77 // version check:
78 // probably nothing to do here?
79 
80