Merged recent changes from trunk.

[SVN r85088]
This commit is contained in:
Andrey Semashev
2013-07-20 17:17:10 +00:00
parent 36502dd372
commit abe73ce723
79 changed files with 880 additions and 242 deletions

View File

@ -397,6 +397,12 @@ See [@../../../../boost/operators.hpp `<boost/operators.hpp>`] for example.
The standard library has a partially conforming `std::allocator` class, but
without any of the member templates.
]]
[[`BOOST_HAS_PRAGMA_ONCE`][Compiler][
The compiler recognizes the `#pragma once` directive which tells that the
containing header should be included only once while preprocessing the
current translation unit. The pragma may improve compile times of large projects
with some compilers.
]]
[[`BOOST_HAS_PTHREAD_DELAY_NP`][Platform][
The platform has the POSIX API `pthread_delay_np`.
]]
@ -576,6 +582,7 @@ that are not yet supported by a particular compiler or library.
[table
[[Macro ][Description ]]
[[`BOOST_NO_CXX11_ALIGNAS`][The compiler does not support the `alignas` keyword.]]
[[`BOOST_NO_CXX11_ALLOCATOR`][The standard library does not provide a C++11 version of `std::allocator` in <memory>.]]
[[`BOOST_NO_CXX11_ATOMIC_SP`][The standard library <memory> does not support atomic smart pointer operations.]]
[[`BOOST_NO_CXX11_HDR_ARRAY`][The standard library does not provide header <array>.]]
@ -597,6 +604,7 @@ that are not yet supported by a particular compiler or library.
[[`BOOST_NO_CXX11_HDR_TYPE_TRAITS`][The standard library does not provide header <type_traits>.]]
[[`BOOST_NO_CXX11_HDR_UNORDERED_MAP`][The standard library does not provide header <unordered_map>.]]
[[`BOOST_NO_CXX11_HDR_UNORDERED_SET`][The standard library does not provide header <unordered_set>.]]
[[`BOOST_NO_CXX11_INLINE_NAMESPACES`][The compiler does not support inline namespaces.]]
[[`BOOST_NO_CXX11_SMART_PTR`][The standard library header <memory> has no shared_ptr and unique_ptr.]]
[[`BOOST_NO_CXX11_AUTO_DECLARATIONS`][The compiler does not support
@ -669,6 +677,8 @@ scoped enumerations (`enum class`).
[[`BOOST_NO_CXX11_STD_UNORDERED`][The standard library does not support
<unordered_map> and <unordered_set>.
]]
[[`BOOST_NO_CXX11_TRAILING_RESULT_TYPES`][The compiler does not support the new function result type
specification syntax (e.g. `auto foo(T) -> T;`).]]
[[`BOOST_NO_CXX11_UNICODE_LITERALS`][The compiler does not support
Unicode (`u8`, `u`, `U`) literals.
]]
@ -697,6 +707,21 @@ provide compliant C++11 support.
[table
[[Macro ][ Description ]]
[[`BOOST_ALIGNMENT(X)`, `BOOST_NO_ALIGNMENT`][
Some compilers don't support the `alignas` keyword but provide other means to specify alignment
(usually, through compiler-specific attributes). The macro `BOOST_ALIGNMENT(X)` will expand to the `alignas(X)`
keyword if the compiler supports it or to some compiler-specific attribute to achieve the specified alignment.
If no such compiler-specific attribute is known then `BOOST_ALIGNMENT(X)` will expand to nothing and
`BOOST_NO_ALIGNMENT` will be defined. Unlike native `alignas`, `X` must always be a compile-time integer constant.
The macro can be used to specify alignment of types and data:
``
struct BOOST_ALIGNMENT(16) my_data
{
char c[16];
};
BOOST_ALIGNMENT(8) int arr[32];
``
]]
[[`BOOST_CONSTEXPR`][
Some compilers don't support the use of `constexpr`. This macro expands to nothing on those compilers, and `constexpr`
elsewhere. For example, when defining a constexpr function or constructor replace:
@ -729,6 +754,61 @@ with:
BOOST_STATIC_CONSTEXPR UIntType xor_mask = a;
``
]]
[[`BOOST_DEFAULTED_FUNCTION(fun, body)`][
This macro is intended to be used within a class definition in order to declare a default implementation of function `fun`.
For the compilers that do not support C++11 defaulted functions the macro will expand into an inline function definition
with the `body` implementation. For example:
``
struct my_struct
{
BOOST_DEFAULTED_FUNCTION(my_struct(), {})
};
``
is equivalent to:
``
struct my_struct
{
my_struct() = default;
};
``
or:
``
struct my_struct
{
my_struct() {}
};
``
]]
[[`BOOST_DELETED_FUNCTION(fun)`][
This macro is intended to be used within a class definition in order to declare a deleted function `fun`.
For the compilers that do not support C++11 deleted functions the macro will expand into a private function
declaration with no definition. Since the macro may change the access mode, it is recommended to use this macro
at the end of the class definition. For example:
``
struct noncopyable
{
BOOST_DELETED_FUNCTION(noncopyable(noncopyable const&))
BOOST_DELETED_FUNCTION(noncopyable& operator= (noncopyable const&))
};
``
is equivalent to:
``
struct noncopyable
{
noncopyable(noncopyable const&) = delete;
noncopyable& operator= (noncopyable const&) = delete;
};
``
or:
``
struct noncopyable
{
private:
noncopyable(noncopyable const&);
noncopyable& operator= (noncopyable const&);
};
``
]]
[[
``
BOOST_NOEXCEPT
@ -1003,6 +1083,34 @@ Note that use of this macro can lead to cryptic error messages with some compile
Consider defining it to `inline` before including the Boost.Config header in order to be
able to debug errors more easily.
]]
[[`BOOST_NOINLINE`][
This macro can be used in place of the `inline` keyword to instruct the compiler
that a function should never be inlined. One should typically use this macro
to mark functions that are unlikely to be called, such as error handling routines.
Usage example:
``
BOOST_NOINLINE void handle_error(const char* descr)
{
// ...
}
``
]]
[[`BOOST_LIKELY(X)`
`BOOST_UNLIKELY(X)`][
These macros communicate to the compiler that the conditional expression `X` is likely
or unlikely to yield a positive result. The expression should result in a boolean value.
The result of the macro is an integer or boolean value equivalent to the result of `X`.
The macros are intended to be used in branching statements. The additional hint they provide
can be used by the compiler to arrange the compiled code of the branches more effectively.
Usage example:
``
if (BOOST_UNLIKELY(ptr == NULL))
handle_error("ptr is NULL");
``
]]
]
[endsect]

View File

@ -191,6 +191,9 @@
#define BOOST_NO_CXX11_NOEXCEPT
#define BOOST_NO_CXX11_UNIFIED_INITIALIZATION_SYNTAX
#define BOOST_NO_CXX11_USER_DEFINED_LITERALS
#define BOOST_NO_CXX11_ALIGNAS
#define BOOST_NO_CXX11_TRAILING_RESULT_TYPES
#define BOOST_NO_CXX11_INLINE_NAMESPACES
#if __BORLANDC__ >= 0x590
# define BOOST_HAS_TR1_HASH
@ -282,7 +285,3 @@
#define BOOST_NO_COMPLETE_VALUE_INITIALIZATION
#define BOOST_COMPILER "Borland C++ version " BOOST_STRINGIZE(__BORLANDC__)

View File

@ -8,6 +8,8 @@
// Clang compiler setup.
#define BOOST_HAS_PRAGMA_ONCE
#if !__has_feature(cxx_exceptions) && !defined(BOOST_NO_EXCEPTIONS)
# define BOOST_NO_EXCEPTIONS
#endif
@ -26,6 +28,14 @@
#define BOOST_HAS_NRVO
// Branch prediction hints
#if defined(__has_builtin)
#if __has_builtin(__builtin_expect)
#define BOOST_LIKELY(x) __builtin_expect(x, 1)
#define BOOST_UNLIKELY(x) __builtin_expect(x, 0)
#endif
#endif
// Clang supports "long long" in all compilation modes.
#define BOOST_HAS_LONG_LONG
@ -146,6 +156,18 @@
# define BOOST_NO_CXX11_USER_DEFINED_LITERALS
#endif
#if !(__has_feature(cxx_alignas) || __has_extension(cxx_alignas))
# define BOOST_NO_CXX11_ALIGNAS
#endif
#if !__has_feature(cxx_trailing_return)
# define BOOST_NO_CXX11_TRAILING_RESULT_TYPES
#endif
#if !__has_feature(cxx_inline_namespaces)
# define BOOST_NO_CXX11_INLINE_NAMESPACES
#endif
// Clang always supports variadic macros
// Clang always supports extern templates

View File

@ -72,6 +72,12 @@
# endif
#endif
// Reportedly, #pragma once is supported since C++ Builder 2010
#if (__CODEGEARC__ >= 0x620)
# define BOOST_HAS_PRAGMA_ONCE
#endif
//
// C++0x macros:
//
@ -111,6 +117,9 @@
#define BOOST_NO_CXX11_VARIADIC_TEMPLATES
#define BOOST_NO_CXX11_UNIFIED_INITIALIZATION_SYNTAX
#define BOOST_NO_CXX11_USER_DEFINED_LITERALS
#define BOOST_NO_CXX11_ALIGNAS
#define BOOST_NO_CXX11_TRAILING_RESULT_TYPES
#define BOOST_NO_CXX11_INLINE_NAMESPACES
//
// TR1 macros:

View File

@ -54,6 +54,11 @@
# define BOOST_NO_LONG_LONG
# endif
// Not sure what version was the first to support #pragma once, but
// different EDG-based compilers (e.g. Intel) supported it for ages.
// Add a proper version check if it causes problems.
#define BOOST_HAS_PRAGMA_ONCE
//
// C++0x features
//
@ -96,6 +101,9 @@
#define BOOST_NO_CXX11_VARIADIC_TEMPLATES
#define BOOST_NO_CXX11_UNIFIED_INITIALIZATION_SYNTAX
#define BOOST_NO_CXX11_USER_DEFINED_LITERALS
#define BOOST_NO_CXX11_ALIGNAS
#define BOOST_NO_CXX11_TRAILING_RESULT_TYPES
#define BOOST_NO_CXX11_INLINE_NAMESPACES
#ifdef c_plusplus
// EDG has "long long" in non-strict mode

View File

@ -55,6 +55,7 @@
#define BOOST_NO_COMPLETE_VALUE_INITIALIZATION
#define BOOST_NO_CXX11_CHAR32_T
#define BOOST_NO_CXX11_CHAR16_T
#define BOOST_NO_CXX11_ALIGNAS
//#define BOOST_BCB_PARTIAL_SPECIALIZATION_BUG
#define BOOST_MATH_DISABLE_STD_FPCLASSIFY
//#define BOOST_HAS_FPCLASSIFY

View File

@ -87,6 +87,9 @@
#define BOOST_NO_CXX11_VARIADIC_TEMPLATES
#define BOOST_NO_CXX11_UNIFIED_INITIALIZATION_SYNTAX
#define BOOST_NO_CXX11_USER_DEFINED_LITERALS
#define BOOST_NO_CXX11_ALIGNAS
#define BOOST_NO_CXX11_TRAILING_RESULT_TYPES
#define BOOST_NO_CXX11_INLINE_NAMESPACES
#if (__DMC__ < 0x812)
#define BOOST_NO_CXX11_VARIADIC_MACROS

View File

@ -80,6 +80,11 @@
# endif
#endif
// GCC prior to 3.4 had #pragma once too but it didn't work well with filesystem links
#if __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4)
#define BOOST_HAS_PRAGMA_ONCE
#endif
#if __GNUC__ < 4 || ( __GNUC__ == 4 && __GNUC_MINOR__ < 4 )
// Previous versions of GCC did not completely implement value-initialization:
// GCC Bug 30111, "Value-initialization of POD base class doesn't initialize
@ -118,6 +123,10 @@
#define BOOST_HAS_NRVO
#endif
// Branch prediction hints
#define BOOST_LIKELY(x) __builtin_expect(x, 1)
#define BOOST_UNLIKELY(x) __builtin_expect(x, 0)
//
// Dynamic shared object (DSO) and dynamic-link library (DLL) support
//
@ -202,12 +211,19 @@
# define BOOST_NO_CXX11_HDR_INITIALIZER_LIST
# define BOOST_NO_CXX11_DEFAULTED_FUNCTIONS
# define BOOST_NO_CXX11_DELETED_FUNCTIONS
# define BOOST_NO_CXX11_TRAILING_RESULT_TYPES
# define BOOST_NO_CXX11_INLINE_NAMESPACES
#endif
#if __GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 5)
# define BOOST_NO_SFINAE_EXPR
#endif
// GCC 4.5 forbids declaration of defaulted functions in private or protected sections
#if !defined(BOOST_NO_CXX11_DEFAULTED_FUNCTIONS) && (__GNUC__ == 4 && __GNUC_MINOR__ <= 5)
# define BOOST_NO_CXX11_NON_PUBLIC_DEFAULTED_FUNCTIONS
#endif
// C++0x features in 4.5.0 and later
//
#if __GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 5) || !defined(__GXX_EXPERIMENTAL_CXX0X__)
@ -243,6 +259,12 @@
# define BOOST_NO_CXX11_USER_DEFINED_LITERALS
#endif
// C++0x features in 4.8.n and later
//
#if __GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 8) || !defined(__GXX_EXPERIMENTAL_CXX0X__)
# define BOOST_NO_CXX11_ALIGNAS
#endif
// C++0x features in 4.8.1 and later
//
#if (__GNUC__*10000 + __GNUC_MINOR__*100 + __GNUC_PATCHLEVEL__ < 40801) || !defined(__GXX_EXPERIMENTAL_CXX0X__)

View File

@ -55,6 +55,9 @@
# define BOOST_NO_CXX11_NOEXCEPT
# define BOOST_NO_CXX11_UNIFIED_INITIALIZATION_SYNTAX
# define BOOST_NO_CXX11_USER_DEFINED_LITERALS
# define BOOST_NO_CXX11_ALIGNAS
# define BOOST_NO_CXX11_TRAILING_RESULT_TYPES
# define BOOST_NO_CXX11_INLINE_NAMESPACES
#define BOOST_COMPILER "GCC-XML C++ version " __GCCXML__

View File

@ -119,6 +119,9 @@
#define BOOST_NO_CXX11_UNICODE_LITERALS
#define BOOST_NO_CXX11_VARIADIC_TEMPLATES
#define BOOST_NO_CXX11_USER_DEFINED_LITERALS
#define BOOST_NO_CXX11_ALIGNAS
#define BOOST_NO_CXX11_TRAILING_RESULT_TYPES
#define BOOST_NO_CXX11_INLINE_NAMESPACES
/*
See https://forums13.itrc.hp.com/service/forums/questionanswer.do?threadId=1443331 and

View File

@ -27,7 +27,7 @@
#endif
// Flags determined by comparing output of 'icpc -dM -E' with and without '-std=c++0x'
#if (!(defined(_WIN32) || defined(_WIN64)) && defined(__STDC_HOSTED__) && (__STDC_HOSTED__ && (BOOST_INTEL_CXX_VERSION <= 1200))) || defined(__GXX_EXPERIMENTAL_CPP0X__)
#if (!(defined(_WIN32) || defined(_WIN64)) && defined(__STDC_HOSTED__) && (__STDC_HOSTED__ && (BOOST_INTEL_CXX_VERSION <= 1200))) || defined(__GXX_EXPERIMENTAL_CPP0X__) || defined(__GXX_EXPERIMENTAL_CXX0X__)
# define BOOST_INTEL_STDCXX0X
#endif
#if defined(_MSC_VER) && (_MSC_VER >= 1600)
@ -154,6 +154,14 @@ template<> struct assert_intrinsic_wchar_t<unsigned short> {};
# define BOOST_HAS_NRVO
#endif
// Branch prediction hints
// I'm not sure 8.0 was the first version to support these builtins,
// update the condition if the version is not accurate. (Andrey Semashev)
#if defined(__GNUC__) && BOOST_INTEL_CXX_VERSION >= 800
#define BOOST_LIKELY(x) __builtin_expect(x, 1)
#define BOOST_UNLIKELY(x) __builtin_expect(x, 0)
#endif
//
// versions check:
// we don't support Intel prior to version 5.0:
@ -221,6 +229,7 @@ template<> struct assert_intrinsic_wchar_t<unsigned short> {};
# undef BOOST_NO_CXX11_DECLTYPE
# undef BOOST_NO_CXX11_AUTO_DECLARATIONS
# undef BOOST_NO_CXX11_AUTO_MULTIDECLARATIONS
# undef BOOST_NO_CXX11_TRAILING_RESULT_TYPES
#endif
// icl Version 12.1.0.233 Build 20110811 and possibly some other builds
@ -247,6 +256,7 @@ template<> struct assert_intrinsic_wchar_t<unsigned short> {};
# define BOOST_NO_CXX11_DELETED_FUNCTIONS
# define BOOST_NO_CXX11_DEFAULTED_FUNCTIONS
# define BOOST_NO_CXX11_TEMPLATE_ALIASES
# define BOOST_NO_CXX11_TRAILING_RESULT_TYPES
#endif
#if (BOOST_INTEL_CXX_VERSION < 1200)

View File

@ -120,6 +120,9 @@
#define BOOST_NO_CXX11_VARIADIC_MACROS
#define BOOST_NO_CXX11_UNIFIED_INITIALIZATION_SYNTAX
#define BOOST_NO_CXX11_USER_DEFINED_LITERALS
#define BOOST_NO_CXX11_ALIGNAS
#define BOOST_NO_CXX11_TRAILING_RESULT_TYPES
#define BOOST_NO_CXX11_INLINE_NAMESPACES
#define BOOST_COMPILER "Metrowerks CodeWarrior C++ version " BOOST_STRINGIZE(BOOST_COMPILER_VERSION)

View File

@ -69,6 +69,9 @@
#define BOOST_NO_CXX11_VARIADIC_MACROS
#define BOOST_NO_CXX11_UNIFIED_INITIALIZATION_SYNTAX
#define BOOST_NO_CXX11_USER_DEFINED_LITERALS
#define BOOST_NO_CXX11_ALIGNAS
#define BOOST_NO_CXX11_TRAILING_RESULT_TYPES
#define BOOST_NO_CXX11_INLINE_NAMESPACES
//
// versions check:

View File

@ -77,5 +77,7 @@
# define BOOST_NO_CXX11_HDR_CODECVT
# define BOOST_NO_CXX11_HDR_CHRONO
# define BOOST_NO_CXX11_USER_DEFINED_LITERALS
# define BOOST_NO_CXX11_ALIGNAS
# define BOOST_NO_CXX11_TRAILING_RESULT_TYPES
# define BOOST_NO_CXX11_INLINE_NAMESPACES
#endif

View File

@ -112,6 +112,9 @@
#define BOOST_NO_CXX11_HDR_CHRONO
#define BOOST_NO_CXX11_HDR_ARRAY
#define BOOST_NO_CXX11_USER_DEFINED_LITERALS
#define BOOST_NO_CXX11_ALIGNAS
#define BOOST_NO_CXX11_TRAILING_RESULT_TYPES
#define BOOST_NO_CXX11_INLINE_NAMESPACES
//
// version check:

View File

@ -128,6 +128,9 @@
#define BOOST_NO_CXX11_VARIADIC_MACROS
#define BOOST_NO_CXX11_UNIFIED_INITIALIZATION_SYNTAX
#define BOOST_NO_CXX11_USER_DEFINED_LITERALS
#define BOOST_NO_CXX11_ALIGNAS
#define BOOST_NO_CXX11_TRAILING_RESULT_TYPES
#define BOOST_NO_CXX11_INLINE_NAMESPACES
//
// Version

View File

@ -126,6 +126,6 @@
#if ! __C99_MACRO_WITH_VA_ARGS
# define BOOST_NO_CXX11_VARIADIC_MACROS
#endif
#define BOOST_NO_CXX11_ALIGNAS
#define BOOST_NO_CXX11_TRAILING_RESULT_TYPES
#define BOOST_NO_CXX11_INLINE_NAMESPACES

View File

@ -34,6 +34,10 @@
// Attempt to suppress VC6 warnings about the length of decorated names (obsolete):
#pragma warning( disable : 4503 ) // warning: decorated name length exceeded
#if _MSC_VER >= 1020
# define BOOST_HAS_PRAGMA_ONCE
#endif
//
// versions check:
// we don't support Visual C++ prior to version 6:
@ -227,6 +231,7 @@
# define BOOST_NO_CXX11_RAW_LITERALS
# define BOOST_NO_CXX11_VARIADIC_TEMPLATES
# define BOOST_NO_CXX11_UNIFIED_INITIALIZATION_SYNTAX
# define BOOST_NO_CXX11_TRAILING_RESULT_TYPES
#endif
// C++11 features not supported by any versions
@ -242,6 +247,8 @@
#define BOOST_NO_SFINAE_EXPR
#define BOOST_NO_TWO_PHASE_NAME_LOOKUP
#define BOOST_NO_CXX11_USER_DEFINED_LITERALS
#define BOOST_NO_CXX11_ALIGNAS
#define BOOST_NO_CXX11_INLINE_NAMESPACES
//
// prefix and suffix headers:

View File

@ -648,6 +648,78 @@ namespace std{ using ::type_info; }
# endif
#endif
// BOOST_NOINLINE ---------------------------------------------//
// Macro to use in place of 'inline' to prevent a function to be inlined
#if !defined(BOOST_NOINLINE)
# if defined(_MSC_VER)
# define BOOST_NOINLINE __declspec(noinline)
# elif defined(__GNUC__) && __GNUC__ > 3
// Clang also defines __GNUC__ (as 4)
# define BOOST_NOINLINE __attribute__ ((__noinline__))
# else
# define BOOST_NOINLINE
# endif
#endif
// Branch prediction hints
// These macros are intended to wrap conditional expressions that yield true or false
//
// if (BOOST_LIKELY(var == 10))
// {
// // the most probable code here
// }
//
#if !defined(BOOST_LIKELY)
# define BOOST_LIKELY(x) x
#endif
#if !defined(BOOST_UNLIKELY)
# define BOOST_UNLIKELY(x) x
#endif
// Type and data alignment specification
//
#if !defined(BOOST_NO_CXX11_ALIGNAS)
# define BOOST_ALIGNMENT(x) alignas(x)
#elif defined(_MSC_VER)
# define BOOST_ALIGNMENT(x) __declspec(align(x))
#elif defined(__GNUC__)
# define BOOST_ALIGNMENT(x) __attribute__ ((__aligned__(x)))
#else
# define BOOST_NO_ALIGNMENT
# define BOOST_ALIGNMENT(x)
#endif
// Defaulted and deleted function declaration helpers
// These macros are intended to be inside a class definition.
// BOOST_DEFAULTED_FUNCTION accepts the function declaration and its
// body, which will be used if the compiler doesn't support defaulted functions.
// BOOST_DELETED_FUNCTION only accepts the function declaration. It
// will expand to a private function declaration, if the compiler doesn't support
// deleted functions. Because of this it is recommended to use BOOST_DELETED_FUNCTION
// in the end of the class definition.
//
// class my_class
// {
// public:
// // Default-constructible
// BOOST_DEFAULTED_FUNCTION(my_class(), {})
// // Copying prohibited
// BOOST_DELETED_FUNCTION(my_class(my_class const&))
// BOOST_DELETED_FUNCTION(my_class& operator= (my_class const&))
// };
//
#if !(defined(BOOST_NO_CXX11_DEFAULTED_FUNCTIONS) || defined(BOOST_NO_CXX11_NON_PUBLIC_DEFAULTED_FUNCTIONS))
# define BOOST_DEFAULTED_FUNCTION(fun, body) fun = default;
#else
# define BOOST_DEFAULTED_FUNCTION(fun, body) fun body
#endif
#if !defined(BOOST_NO_CXX11_DELETED_FUNCTIONS)
# define BOOST_DELETED_FUNCTION(fun) fun = delete;
#else
# define BOOST_DELETED_FUNCTION(fun) private: fun;
#endif
//
// Set BOOST_NO_DECLTYPE_N3276 when BOOST_NO_DECLTYPE is defined
//

View File

@ -226,6 +226,12 @@ test-suite "BOOST_NO_CWCHAR" :
test-suite "BOOST_NO_CWCTYPE" :
[ run ../no_cwctype_pass.cpp ]
[ compile-fail ../no_cwctype_fail.cpp ] ;
test-suite "BOOST_NO_CXX11_RAW_LITERALS" :
[ run ../no_raw_literals_pass.cpp ]
[ compile-fail ../no_raw_literals_fail.cpp ] ;
test-suite "BOOST_NO_CXX11_ALIGNAS" :
[ run ../no_cxx11_alignas_pass.cpp ]
[ compile-fail ../no_cxx11_alignas_fail.cpp ] ;
test-suite "BOOST_NO_CXX11_ALLOCATOR" :
[ run ../no_cxx11_allocator_pass.cpp ]
[ compile-fail ../no_cxx11_allocator_fail.cpp ] ;
@ -286,12 +292,18 @@ test-suite "BOOST_NO_CXX11_HDR_UNORDERED_MAP" :
test-suite "BOOST_NO_CXX11_HDR_UNORDERED_SET" :
[ run ../no_cxx11_hdr_unordered_set_pass.cpp ]
[ compile-fail ../no_cxx11_hdr_unordered_set_fail.cpp ] ;
test-suite "BOOST_NO_CXX11_INLINE_NAMESPACES" :
[ run ../no_cxx11_inline_namespaces_pass.cpp ]
[ compile-fail ../no_cxx11_inline_namespaces_fail.cpp ] ;
test-suite "BOOST_NO_CXX11_NUMERIC_LIMITS" :
[ run ../no_cxx11_numeric_limits_pass.cpp ]
[ compile-fail ../no_cxx11_numeric_limits_fail.cpp ] ;
test-suite "BOOST_NO_CXX11_SMART_PTR" :
[ run ../no_cxx11_smart_ptr_pass.cpp ]
[ compile-fail ../no_cxx11_smart_ptr_fail.cpp ] ;
test-suite "BOOST_NO_CXX11_TRAILING_RESULT_TYPES" :
[ run ../no_cxx11_trailing_result_types_pass.cpp ]
[ compile-fail ../no_cxx11_trailing_result_types_fail.cpp ] ;
test-suite "BOOST_NO_CXX11_USER_DEFINED_LITERALS" :
[ run ../no_cxx11_user_lit_pass.cpp ]
[ compile-fail ../no_cxx11_user_lit_fail.cpp ] ;
@ -424,9 +436,6 @@ test-suite "BOOST_NO_POINTER_TO_MEMBER_CONST" :
test-suite "BOOST_NO_CXX11_RANGE_BASED_FOR" :
[ run ../no_range_based_for_pass.cpp ]
[ compile-fail ../no_range_based_for_fail.cpp ] ;
test-suite "BOOST_NO_CXX11_RAW_LITERALS" :
[ run ../no_raw_literals_pass.cpp ]
[ compile-fail ../no_raw_literals_fail.cpp ] ;
test-suite "BOOST_NO_UNREACHABLE_RETURN_DETECTION" :
[ run ../no_ret_det_pass.cpp ]
[ compile-fail ../no_ret_det_fail.cpp ] ;

View File

@ -0,0 +1,36 @@
// (C) Copyright Andrey Semashev 2013
// Use, modification and distribution are subject to the
// Boost Software License, Version 1.0. (See accompanying file
// LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
// See http://www.boost.org/libs/config for more information.
// MACRO: BOOST_NO_CXX11_ALIGNAS
// TITLE: C++11 alignas keyword.
// DESCRIPTION: The compiler does not support the C++11 alignment specification with alignas keyword.
namespace boost_no_cxx11_alignas {
struct alignas(16) my_data1
{
char data[10];
};
struct alignas(double) my_data2
{
char data[16];
};
my_data1 dummy1[2];
my_data2 dummy2;
alignas(16) char dummy3[10];
alignas(double) char dummy4[32];
int test()
{
// TODO: Test that the data is actually aligned on platforms with uintptr_t
return 0;
}
}

View File

@ -0,0 +1,30 @@
// (C) Copyright Andrey Semashev 2013
// Use, modification and distribution are subject to the
// Boost Software License, Version 1.0. (See accompanying file
// LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
// See http://www.boost.org/libs/config for more information.
// MACRO: BOOST_NO_CXX11_INLINE_NAMESPACES
// TITLE: C++11 inline namespaces.
// DESCRIPTION: The compiler does not support C++11 inline namespaces.
namespace boost_no_cxx11_inline_namespaces {
inline namespace my_ns {
int data = 0;
} // namespace my_ns
int test()
{
data = 1;
if (&data == &my_ns::data)
return 0;
else
return 1;
}
}

View File

@ -0,0 +1,26 @@
// (C) Copyright Andrey Semashev 2013
// Use, modification and distribution are subject to the
// Boost Software License, Version 1.0. (See accompanying file
// LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
// See http://www.boost.org/libs/config for more information.
// MACRO: BOOST_NO_CXX11_TRAILING_RESULT_TYPES
// TITLE: C++11 trailing function result types syntax.
// DESCRIPTION: The compiler does not support the new C++11 function result types specification syntax.
namespace boost_no_cxx11_trailing_result_types {
template< typename T >
auto foo(T const& t) -> T
{
return t;
}
int test()
{
return foo(0);
}
}

View File

@ -992,6 +992,7 @@ void print_boost_macros()
PRINT_MACRO(BOOST_NO_CV_VOID_SPECIALIZATIONS);
PRINT_MACRO(BOOST_NO_CWCHAR);
PRINT_MACRO(BOOST_NO_CWCTYPE);
PRINT_MACRO(BOOST_NO_CXX11_ALIGNAS);
PRINT_MACRO(BOOST_NO_CXX11_ALLOCATOR);
PRINT_MACRO(BOOST_NO_CXX11_ATOMIC_SMART_PTR);
PRINT_MACRO(BOOST_NO_CXX11_AUTO_DECLARATIONS);
@ -1025,6 +1026,7 @@ void print_boost_macros()
PRINT_MACRO(BOOST_NO_CXX11_HDR_TYPE_TRAITS);
PRINT_MACRO(BOOST_NO_CXX11_HDR_UNORDERED_MAP);
PRINT_MACRO(BOOST_NO_CXX11_HDR_UNORDERED_SET);
PRINT_MACRO(BOOST_NO_CXX11_INLINE_NAMESPACES);
PRINT_MACRO(BOOST_NO_CXX11_LAMBDAS);
PRINT_MACRO(BOOST_NO_CXX11_LOCAL_CLASS_TEMPLATE_PARAMETERS);
PRINT_MACRO(BOOST_NO_CXX11_NOEXCEPT);
@ -1037,6 +1039,7 @@ void print_boost_macros()
PRINT_MACRO(BOOST_NO_CXX11_SMART_PTR);
PRINT_MACRO(BOOST_NO_CXX11_STATIC_ASSERT);
PRINT_MACRO(BOOST_NO_CXX11_TEMPLATE_ALIASES);
PRINT_MACRO(BOOST_NO_CXX11_TRAILING_RESULT_TYPES);
PRINT_MACRO(BOOST_NO_CXX11_UNICODE_LITERALS);
PRINT_MACRO(BOOST_NO_CXX11_UNIFIED_INITIALIZATION_SYNTAX);
PRINT_MACRO(BOOST_NO_CXX11_USER_DEFINED_LITERALS);
@ -1114,6 +1117,7 @@ void print_boost_macros()
PRINT_MACRO(BOOST_STATIC_CONSTEXPR);
PRINT_MACRO(BOOST_NOEXCEPT);
PRINT_MACRO(BOOST_FORCEINLINE);
PRINT_MACRO(BOOST_NOINLINE);
PRINT_MACRO(BOOST_FALLTHROUGH);
}

View File

@ -102,6 +102,11 @@ namespace boost_no_cwchar = empty_boost;
#else
namespace boost_no_cwctype = empty_boost;
#endif
#ifndef BOOST_NO_CXX11_ALIGNAS
#include "boost_no_cxx11_alignas.ipp"
#else
namespace boost_no_cxx11_alignas = empty_boost;
#endif
#ifndef BOOST_NO_CXX11_ALLOCATOR
#include "boost_no_cxx11_allocator.ipp"
#else
@ -202,6 +207,16 @@ namespace boost_no_cxx11_hdr_unordered_map = empty_boost;
#else
namespace boost_no_cxx11_hdr_unordered_set = empty_boost;
#endif
#ifndef BOOST_NO_CXX11_INLINE_NAMESPACES
#include "boost_no_cxx11_inline_namespaces.ipp"
#else
namespace boost_no_cxx11_inline_namespaces = empty_boost;
#endif
#ifndef BOOST_NO_CXX11_TRAILING_RESULT_TYPES
#include "boost_no_cxx11_trailing_result_types.ipp"
#else
namespace boost_no_cxx11_trailing_result_types = empty_boost;
#endif
#ifndef BOOST_NO_CXX11_NUMERIC_LIMITS
#include "boost_no_cxx11_numeric_limits.ipp"
#else
@ -1231,6 +1246,11 @@ int main( int, char *[] )
std::cerr << "Failed test for BOOST_NO_CWCTYPE at: " << __FILE__ << ":" << __LINE__ << std::endl;
++error_count;
}
if(0 != boost_no_cxx11_alignas::test())
{
std::cerr << "Failed test for BOOST_NO_CXX11_ALIGNAS at: " << __FILE__ << ":" << __LINE__ << std::endl;
++error_count;
}
if(0 != boost_no_cxx11_allocator::test())
{
std::cerr << "Failed test for BOOST_NO_CXX11_ALLOCATOR at: " << __FILE__ << ":" << __LINE__ << std::endl;
@ -1331,6 +1351,11 @@ int main( int, char *[] )
std::cerr << "Failed test for BOOST_NO_CXX11_HDR_UNORDERED_SET at: " << __FILE__ << ":" << __LINE__ << std::endl;
++error_count;
}
if(0 != boost_no_cxx11_inline_namespaces::test())
{
std::cerr << "Failed test for BOOST_NO_CXX11_INLINE_NAMESPACES at: " << __FILE__ << ":" << __LINE__ << std::endl;
++error_count;
}
if(0 != boost_no_cxx11_numeric_limits::test())
{
std::cerr << "Failed test for BOOST_NO_CXX11_NUMERIC_LIMITS at: " << __FILE__ << ":" << __LINE__ << std::endl;
@ -1341,6 +1366,11 @@ int main( int, char *[] )
std::cerr << "Failed test for BOOST_NO_CXX11_SMART_PTR at: " << __FILE__ << ":" << __LINE__ << std::endl;
++error_count;
}
if(0 != boost_no_cxx11_trailing_result_types::test())
{
std::cerr << "Failed test for BOOST_NO_CXX11_TRAILING_RESULT_TYPES at: " << __FILE__ << ":" << __LINE__ << std::endl;
++error_count;
}
if(0 != boost_no_cxx11_user_defined_literals::test())
{
std::cerr << "Failed test for BOOST_NO_CXX11_USER_DEFINED_LITERALS at: " << __FILE__ << ":" << __LINE__ << std::endl;

View File

@ -32,6 +32,6 @@
int main( int, char *[] )
{
return boost_no_auto_declarations::test();
return boost_no_cxx11_auto_declarations::test();
}

View File

@ -27,11 +27,11 @@
#ifndef BOOST_NO_CXX11_AUTO_DECLARATIONS
#include "boost_no_auto_declarations.ipp"
#else
namespace boost_no_auto_declarations = empty_boost;
namespace boost_no_cxx11_auto_declarations = empty_boost;
#endif
int main( int, char *[] )
{
return boost_no_auto_declarations::test();
return boost_no_cxx11_auto_declarations::test();
}

View File

@ -32,6 +32,6 @@
int main( int, char *[] )
{
return boost_no_auto_multideclarations::test();
return boost_no_cxx11_auto_multideclarations::test();
}

View File

@ -27,11 +27,11 @@
#ifndef BOOST_NO_CXX11_AUTO_MULTIDECLARATIONS
#include "boost_no_auto_multidecl.ipp"
#else
namespace boost_no_auto_multideclarations = empty_boost;
namespace boost_no_cxx11_auto_multideclarations = empty_boost;
#endif
int main( int, char *[] )
{
return boost_no_auto_multideclarations::test();
return boost_no_cxx11_auto_multideclarations::test();
}

View File

@ -32,6 +32,6 @@
int main( int, char *[] )
{
return boost_no_char16_t::test();
return boost_no_cxx11_char16_t::test();
}

View File

@ -27,11 +27,11 @@
#ifndef BOOST_NO_CXX11_CHAR16_T
#include "boost_no_char16_t.ipp"
#else
namespace boost_no_char16_t = empty_boost;
namespace boost_no_cxx11_char16_t = empty_boost;
#endif
int main( int, char *[] )
{
return boost_no_char16_t::test();
return boost_no_cxx11_char16_t::test();
}

View File

@ -32,6 +32,6 @@
int main( int, char *[] )
{
return boost_no_char32_t::test();
return boost_no_cxx11_char32_t::test();
}

View File

@ -27,11 +27,11 @@
#ifndef BOOST_NO_CXX11_CHAR32_T
#include "boost_no_char32_t.ipp"
#else
namespace boost_no_char32_t = empty_boost;
namespace boost_no_cxx11_char32_t = empty_boost;
#endif
int main( int, char *[] )
{
return boost_no_char32_t::test();
return boost_no_cxx11_char32_t::test();
}

View File

@ -32,6 +32,6 @@
int main( int, char *[] )
{
return boost_no_constexpr::test();
return boost_no_cxx11_constexpr::test();
}

View File

@ -27,11 +27,11 @@
#ifndef BOOST_NO_CXX11_CONSTEXPR
#include "boost_no_constexpr.ipp"
#else
namespace boost_no_constexpr = empty_boost;
namespace boost_no_cxx11_constexpr = empty_boost;
#endif
int main( int, char *[] )
{
return boost_no_constexpr::test();
return boost_no_cxx11_constexpr::test();
}

View File

@ -0,0 +1,37 @@
// This file was automatically generated on Sun Apr 28 18:36:48 2013
// by libs/config/tools/generate.cpp
// Copyright John Maddock 2002-4.
// Use, modification and distribution are subject to the
// Boost Software License, Version 1.0. (See accompanying file
// LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
// See http://www.boost.org/libs/config for the most recent version.//
// Revision $Id$
//
// Test file for macro BOOST_NO_CXX11_ALIGNAS
// This file should not compile, if it does then
// BOOST_NO_CXX11_ALIGNAS should not be defined.
// See file boost_no_cxx11_alignas.ipp for details
// Must not have BOOST_ASSERT_CONFIG set; it defeats
// the objective of this file:
#ifdef BOOST_ASSERT_CONFIG
# undef BOOST_ASSERT_CONFIG
#endif
#include <boost/config.hpp>
#include "test.hpp"
#ifdef BOOST_NO_CXX11_ALIGNAS
#include "boost_no_cxx11_alignas.ipp"
#else
#error "this file should not compile"
#endif
int main( int, char *[] )
{
return boost_no_cxx11_alignas::test();
}

View File

@ -0,0 +1,37 @@
// This file was automatically generated on Sun Apr 28 18:36:48 2013
// by libs/config/tools/generate.cpp
// Copyright John Maddock 2002-4.
// Use, modification and distribution are subject to the
// Boost Software License, Version 1.0. (See accompanying file
// LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
// See http://www.boost.org/libs/config for the most recent version.//
// Revision $Id$
//
// Test file for macro BOOST_NO_CXX11_ALIGNAS
// This file should compile, if it does not then
// BOOST_NO_CXX11_ALIGNAS should be defined.
// See file boost_no_cxx11_alignas.ipp for details
// Must not have BOOST_ASSERT_CONFIG set; it defeats
// the objective of this file:
#ifdef BOOST_ASSERT_CONFIG
# undef BOOST_ASSERT_CONFIG
#endif
#include <boost/config.hpp>
#include "test.hpp"
#ifndef BOOST_NO_CXX11_ALIGNAS
#include "boost_no_cxx11_alignas.ipp"
#else
namespace boost_no_cxx11_alignas = empty_boost;
#endif
int main( int, char *[] )
{
return boost_no_cxx11_alignas::test();
}

View File

@ -0,0 +1,37 @@
// This file was automatically generated on Sun Apr 28 18:36:48 2013
// by libs/config/tools/generate.cpp
// Copyright John Maddock 2002-4.
// Use, modification and distribution are subject to the
// Boost Software License, Version 1.0. (See accompanying file
// LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
// See http://www.boost.org/libs/config for the most recent version.//
// Revision $Id$
//
// Test file for macro BOOST_NO_CXX11_INLINE_NAMESPACES
// This file should not compile, if it does then
// BOOST_NO_CXX11_INLINE_NAMESPACES should not be defined.
// See file boost_no_cxx11_inline_namespaces.ipp for details
// Must not have BOOST_ASSERT_CONFIG set; it defeats
// the objective of this file:
#ifdef BOOST_ASSERT_CONFIG
# undef BOOST_ASSERT_CONFIG
#endif
#include <boost/config.hpp>
#include "test.hpp"
#ifdef BOOST_NO_CXX11_INLINE_NAMESPACES
#include "boost_no_cxx11_inline_namespaces.ipp"
#else
#error "this file should not compile"
#endif
int main( int, char *[] )
{
return boost_no_cxx11_inline_namespaces::test();
}

View File

@ -0,0 +1,37 @@
// This file was automatically generated on Sun Apr 28 18:36:48 2013
// by libs/config/tools/generate.cpp
// Copyright John Maddock 2002-4.
// Use, modification and distribution are subject to the
// Boost Software License, Version 1.0. (See accompanying file
// LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
// See http://www.boost.org/libs/config for the most recent version.//
// Revision $Id$
//
// Test file for macro BOOST_NO_CXX11_INLINE_NAMESPACES
// This file should compile, if it does not then
// BOOST_NO_CXX11_INLINE_NAMESPACES should be defined.
// See file boost_no_cxx11_inline_namespaces.ipp for details
// Must not have BOOST_ASSERT_CONFIG set; it defeats
// the objective of this file:
#ifdef BOOST_ASSERT_CONFIG
# undef BOOST_ASSERT_CONFIG
#endif
#include <boost/config.hpp>
#include "test.hpp"
#ifndef BOOST_NO_CXX11_INLINE_NAMESPACES
#include "boost_no_cxx11_inline_namespaces.ipp"
#else
namespace boost_no_cxx11_inline_namespaces = empty_boost;
#endif
int main( int, char *[] )
{
return boost_no_cxx11_inline_namespaces::test();
}

View File

@ -0,0 +1,37 @@
// This file was automatically generated on Sun Apr 28 18:36:48 2013
// by libs/config/tools/generate.cpp
// Copyright John Maddock 2002-4.
// Use, modification and distribution are subject to the
// Boost Software License, Version 1.0. (See accompanying file
// LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
// See http://www.boost.org/libs/config for the most recent version.//
// Revision $Id$
//
// Test file for macro BOOST_NO_CXX11_TRAILING_RESULT_TYPES
// This file should not compile, if it does then
// BOOST_NO_CXX11_TRAILING_RESULT_TYPES should not be defined.
// See file boost_no_cxx11_trailing_result_types.ipp for details
// Must not have BOOST_ASSERT_CONFIG set; it defeats
// the objective of this file:
#ifdef BOOST_ASSERT_CONFIG
# undef BOOST_ASSERT_CONFIG
#endif
#include <boost/config.hpp>
#include "test.hpp"
#ifdef BOOST_NO_CXX11_TRAILING_RESULT_TYPES
#include "boost_no_cxx11_trailing_result_types.ipp"
#else
#error "this file should not compile"
#endif
int main( int, char *[] )
{
return boost_no_cxx11_trailing_result_types::test();
}

View File

@ -0,0 +1,37 @@
// This file was automatically generated on Sun Apr 28 18:36:48 2013
// by libs/config/tools/generate.cpp
// Copyright John Maddock 2002-4.
// Use, modification and distribution are subject to the
// Boost Software License, Version 1.0. (See accompanying file
// LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
// See http://www.boost.org/libs/config for the most recent version.//
// Revision $Id$
//
// Test file for macro BOOST_NO_CXX11_TRAILING_RESULT_TYPES
// This file should compile, if it does not then
// BOOST_NO_CXX11_TRAILING_RESULT_TYPES should be defined.
// See file boost_no_cxx11_trailing_result_types.ipp for details
// Must not have BOOST_ASSERT_CONFIG set; it defeats
// the objective of this file:
#ifdef BOOST_ASSERT_CONFIG
# undef BOOST_ASSERT_CONFIG
#endif
#include <boost/config.hpp>
#include "test.hpp"
#ifndef BOOST_NO_CXX11_TRAILING_RESULT_TYPES
#include "boost_no_cxx11_trailing_result_types.ipp"
#else
namespace boost_no_cxx11_trailing_result_types = empty_boost;
#endif
int main( int, char *[] )
{
return boost_no_cxx11_trailing_result_types::test();
}

View File

@ -32,6 +32,6 @@
int main( int, char *[] )
{
return boost_no_decltype::test();
return boost_no_cxx11_decltype::test();
}

View File

@ -27,11 +27,11 @@
#ifndef BOOST_NO_CXX11_DECLTYPE
#include "boost_no_decltype.ipp"
#else
namespace boost_no_decltype = empty_boost;
namespace boost_no_cxx11_decltype = empty_boost;
#endif
int main( int, char *[] )
{
return boost_no_decltype::test();
return boost_no_cxx11_decltype::test();
}

View File

@ -32,6 +32,6 @@
int main( int, char *[] )
{
return boost_no_defaulted_functions::test();
return boost_no_cxx11_defaulted_functions::test();
}

View File

@ -27,11 +27,11 @@
#ifndef BOOST_NO_CXX11_DEFAULTED_FUNCTIONS
#include "boost_no_defaulted_functions.ipp"
#else
namespace boost_no_defaulted_functions = empty_boost;
namespace boost_no_cxx11_defaulted_functions = empty_boost;
#endif
int main( int, char *[] )
{
return boost_no_defaulted_functions::test();
return boost_no_cxx11_defaulted_functions::test();
}

View File

@ -32,6 +32,6 @@
int main( int, char *[] )
{
return boost_no_deleted_functions::test();
return boost_no_cxx11_deleted_functions::test();
}

View File

@ -27,11 +27,11 @@
#ifndef BOOST_NO_CXX11_DELETED_FUNCTIONS
#include "boost_no_deleted_functions.ipp"
#else
namespace boost_no_deleted_functions = empty_boost;
namespace boost_no_cxx11_deleted_functions = empty_boost;
#endif
int main( int, char *[] )
{
return boost_no_deleted_functions::test();
return boost_no_cxx11_deleted_functions::test();
}

View File

@ -32,6 +32,6 @@
int main( int, char *[] )
{
return boost_no_explicit_conversion_operators::test();
return boost_no_cxx11_explicit_conversion_operators::test();
}

View File

@ -27,11 +27,11 @@
#ifndef BOOST_NO_CXX11_EXPLICIT_CONVERSION_OPERATORS
#include "boost_no_explicit_cvt_ops.ipp"
#else
namespace boost_no_explicit_conversion_operators = empty_boost;
namespace boost_no_cxx11_explicit_conversion_operators = empty_boost;
#endif
int main( int, char *[] )
{
return boost_no_explicit_conversion_operators::test();
return boost_no_cxx11_explicit_conversion_operators::test();
}

View File

@ -32,6 +32,6 @@
int main( int, char *[] )
{
return boost_no_extern_template::test();
return boost_no_cxx11_extern_template::test();
}

View File

@ -27,11 +27,11 @@
#ifndef BOOST_NO_CXX11_EXTERN_TEMPLATE
#include "boost_no_extern_template.ipp"
#else
namespace boost_no_extern_template = empty_boost;
namespace boost_no_cxx11_extern_template = empty_boost;
#endif
int main( int, char *[] )
{
return boost_no_extern_template::test();
return boost_no_cxx11_extern_template::test();
}

View File

@ -32,6 +32,6 @@
int main( int, char *[] )
{
return boost_no_function_template_default_args::test();
return boost_no_cxx11_function_template_default_args::test();
}

View File

@ -27,11 +27,11 @@
#ifndef BOOST_NO_CXX11_FUNCTION_TEMPLATE_DEFAULT_ARGS
#include "boost_no_function_template_default_args.ipp"
#else
namespace boost_no_function_template_default_args = empty_boost;
namespace boost_no_cxx11_function_template_default_args = empty_boost;
#endif
int main( int, char *[] )
{
return boost_no_function_template_default_args::test();
return boost_no_cxx11_function_template_default_args::test();
}

View File

@ -32,6 +32,6 @@
int main( int, char *[] )
{
return boost_no_lambdas::test();
return boost_no_cxx11_lambdas::test();
}

View File

@ -27,11 +27,11 @@
#ifndef BOOST_NO_CXX11_LAMBDAS
#include "boost_no_lambdas.ipp"
#else
namespace boost_no_lambdas = empty_boost;
namespace boost_no_cxx11_lambdas = empty_boost;
#endif
int main( int, char *[] )
{
return boost_no_lambdas::test();
return boost_no_cxx11_lambdas::test();
}

View File

@ -32,6 +32,6 @@
int main( int, char *[] )
{
return boost_no_noexcept::test();
return boost_no_cxx11_noexcept::test();
}

View File

@ -27,11 +27,11 @@
#ifndef BOOST_NO_CXX11_NOEXCEPT
#include "boost_no_noexcept.ipp"
#else
namespace boost_no_noexcept = empty_boost;
namespace boost_no_cxx11_noexcept = empty_boost;
#endif
int main( int, char *[] )
{
return boost_no_noexcept::test();
return boost_no_cxx11_noexcept::test();
}

View File

@ -32,6 +32,6 @@
int main( int, char *[] )
{
return boost_no_nullptr::test();
return boost_no_cxx11_nullptr::test();
}

View File

@ -27,11 +27,11 @@
#ifndef BOOST_NO_CXX11_NULLPTR
#include "boost_no_nullptr.ipp"
#else
namespace boost_no_nullptr = empty_boost;
namespace boost_no_cxx11_nullptr = empty_boost;
#endif
int main( int, char *[] )
{
return boost_no_nullptr::test();
return boost_no_cxx11_nullptr::test();
}

View File

@ -32,6 +32,6 @@
int main( int, char *[] )
{
return boost_no_raw_literals::test();
return boost_no_cxx11_raw_literals::test();
}

View File

@ -27,11 +27,11 @@
#ifndef BOOST_NO_CXX11_RAW_LITERALS
#include "boost_no_raw_literals.ipp"
#else
namespace boost_no_raw_literals = empty_boost;
namespace boost_no_cxx11_raw_literals = empty_boost;
#endif
int main( int, char *[] )
{
return boost_no_raw_literals::test();
return boost_no_cxx11_raw_literals::test();
}

View File

@ -32,6 +32,6 @@
int main( int, char *[] )
{
return boost_no_rvalue_references::test();
return boost_no_cxx11_rvalue_references::test();
}

View File

@ -27,11 +27,11 @@
#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
#include "boost_no_rvalue_references.ipp"
#else
namespace boost_no_rvalue_references = empty_boost;
namespace boost_no_cxx11_rvalue_references = empty_boost;
#endif
int main( int, char *[] )
{
return boost_no_rvalue_references::test();
return boost_no_cxx11_rvalue_references::test();
}

View File

@ -32,6 +32,6 @@
int main( int, char *[] )
{
return boost_no_scoped_enums::test();
return boost_no_cxx11_scoped_enums::test();
}

View File

@ -27,11 +27,11 @@
#ifndef BOOST_NO_CXX11_SCOPED_ENUMS
#include "boost_no_scoped_enums.ipp"
#else
namespace boost_no_scoped_enums = empty_boost;
namespace boost_no_cxx11_scoped_enums = empty_boost;
#endif
int main( int, char *[] )
{
return boost_no_scoped_enums::test();
return boost_no_cxx11_scoped_enums::test();
}

View File

@ -32,6 +32,6 @@
int main( int, char *[] )
{
return boost_no_static_assert::test();
return boost_no_cxx11_static_assert::test();
}

View File

@ -27,11 +27,11 @@
#ifndef BOOST_NO_CXX11_STATIC_ASSERT
#include "boost_no_static_assert.ipp"
#else
namespace boost_no_static_assert = empty_boost;
namespace boost_no_cxx11_static_assert = empty_boost;
#endif
int main( int, char *[] )
{
return boost_no_static_assert::test();
return boost_no_cxx11_static_assert::test();
}

View File

@ -32,6 +32,6 @@
int main( int, char *[] )
{
return boost_no_local_class_template_parameters::test();
return boost_no_cxx11_local_class_template_parameters::test();
}

View File

@ -27,11 +27,11 @@
#ifndef BOOST_NO_CXX11_LOCAL_CLASS_TEMPLATE_PARAMETERS
#include "boost_no_tem_local_classes.ipp"
#else
namespace boost_no_local_class_template_parameters = empty_boost;
namespace boost_no_cxx11_local_class_template_parameters = empty_boost;
#endif
int main( int, char *[] )
{
return boost_no_local_class_template_parameters::test();
return boost_no_cxx11_local_class_template_parameters::test();
}

View File

@ -32,6 +32,6 @@
int main( int, char *[] )
{
return boost_no_template_aliases::test();
return boost_no_cxx11_template_aliases::test();
}

View File

@ -27,11 +27,11 @@
#ifndef BOOST_NO_CXX11_TEMPLATE_ALIASES
#include "boost_no_template_aliases.ipp"
#else
namespace boost_no_template_aliases = empty_boost;
namespace boost_no_cxx11_template_aliases = empty_boost;
#endif
int main( int, char *[] )
{
return boost_no_template_aliases::test();
return boost_no_cxx11_template_aliases::test();
}

View File

@ -32,6 +32,6 @@
int main( int, char *[] )
{
return boost_no_unicode_literals::test();
return boost_no_cxx11_unicode_literals::test();
}

View File

@ -27,11 +27,11 @@
#ifndef BOOST_NO_CXX11_UNICODE_LITERALS
#include "boost_no_unicode_literals.ipp"
#else
namespace boost_no_unicode_literals = empty_boost;
namespace boost_no_cxx11_unicode_literals = empty_boost;
#endif
int main( int, char *[] )
{
return boost_no_unicode_literals::test();
return boost_no_cxx11_unicode_literals::test();
}

View File

@ -32,6 +32,6 @@
int main( int, char *[] )
{
return boost_no_unified_initialization_syntax::test();
return boost_no_cxx11_unified_initialization_syntax::test();
}

View File

@ -27,11 +27,11 @@
#ifndef BOOST_NO_CXX11_UNIFIED_INITIALIZATION_SYNTAX
#include "boost_no_unified_init.ipp"
#else
namespace boost_no_unified_initialization_syntax = empty_boost;
namespace boost_no_cxx11_unified_initialization_syntax = empty_boost;
#endif
int main( int, char *[] )
{
return boost_no_unified_initialization_syntax::test();
return boost_no_cxx11_unified_initialization_syntax::test();
}

View File

@ -32,6 +32,6 @@
int main( int, char *[] )
{
return boost_no_variadic_macros::test();
return boost_no_cxx11_variadic_macros::test();
}

View File

@ -27,11 +27,11 @@
#ifndef BOOST_NO_CXX11_VARIADIC_MACROS
#include "boost_no_variadic_macros.ipp"
#else
namespace boost_no_variadic_macros = empty_boost;
namespace boost_no_cxx11_variadic_macros = empty_boost;
#endif
int main( int, char *[] )
{
return boost_no_variadic_macros::test();
return boost_no_cxx11_variadic_macros::test();
}

View File

@ -32,6 +32,6 @@
int main( int, char *[] )
{
return boost_no_variadic_templates::test();
return boost_no_cxx11_variadic_templates::test();
}

View File

@ -27,11 +27,11 @@
#ifndef BOOST_NO_CXX11_VARIADIC_TEMPLATES
#include "boost_no_variadic_templates.ipp"
#else
namespace boost_no_variadic_templates = empty_boost;
namespace boost_no_cxx11_variadic_templates = empty_boost;
#endif
int main( int, char *[] )
{
return boost_no_variadic_templates::test();
return boost_no_cxx11_variadic_templates::test();
}