diff --git a/boost/config/compiler/borland.hpp b/boost/config/compiler/borland.hpp index 1ff0e87..77513cc 100644 --- a/boost/config/compiler/borland.hpp +++ b/boost/config/compiler/borland.hpp @@ -177,6 +177,7 @@ #define BOOST_NO_FUNCTION_TEMPLATE_DEFAULT_ARGS #define BOOST_NO_INITIALIZER_LISTS #define BOOST_NO_LAMBDAS +#define BOOST_NO_NOEXCEPT #define BOOST_NO_NULLPTR #define BOOST_NO_RAW_LITERALS #define BOOST_NO_RVALUE_REFERENCES diff --git a/boost/config/compiler/clang.hpp b/boost/config/compiler/clang.hpp index 4bb0d1f..3762978 100644 --- a/boost/config/compiler/clang.hpp +++ b/boost/config/compiler/clang.hpp @@ -49,6 +49,7 @@ #define BOOST_NO_INITIALIZER_LISTS #define BOOST_NO_LAMBDAS +#define BOOST_NO_NOEXCEPT #define BOOST_NO_NULLPTR #define BOOST_NO_RAW_LITERALS diff --git a/boost/config/compiler/codegear.hpp b/boost/config/compiler/codegear.hpp index 628afc2..857438f 100644 --- a/boost/config/compiler/codegear.hpp +++ b/boost/config/compiler/codegear.hpp @@ -100,6 +100,7 @@ #define BOOST_NO_FUNCTION_TEMPLATE_DEFAULT_ARGS #define BOOST_NO_INITIALIZER_LISTS #define BOOST_NO_LAMBDAS +#define BOOST_NO_NOEXCEPT #define BOOST_NO_NULLPTR #define BOOST_NO_RAW_LITERALS #define BOOST_NO_RVALUE_REFERENCES diff --git a/boost/config/compiler/common_edg.hpp b/boost/config/compiler/common_edg.hpp index e55fb71..2a8edc4 100644 --- a/boost/config/compiler/common_edg.hpp +++ b/boost/config/compiler/common_edg.hpp @@ -81,6 +81,7 @@ #define BOOST_NO_EXPLICIT_CONVERSION_OPERATORS #define BOOST_NO_FUNCTION_TEMPLATE_DEFAULT_ARGS #define BOOST_NO_LAMBDAS +#define BOOST_NO_NOEXCEPT #define BOOST_NO_NULLPTR #define BOOST_NO_RAW_LITERALS #define BOOST_NO_RVALUE_REFERENCES diff --git a/boost/config/compiler/digitalmars.hpp b/boost/config/compiler/digitalmars.hpp index ca560e9..ded8253 100644 --- a/boost/config/compiler/digitalmars.hpp +++ b/boost/config/compiler/digitalmars.hpp @@ -72,6 +72,7 @@ #define BOOST_NO_EXTERN_TEMPLATE #define BOOST_NO_INITIALIZER_LISTS #define BOOST_NO_LAMBDAS +#define BOOST_NO_NOEXCEPT #define BOOST_NO_NULLPTR #define BOOST_NO_RAW_LITERALS #define BOOST_NO_RVALUE_REFERENCES diff --git a/boost/config/compiler/gcc.hpp b/boost/config/compiler/gcc.hpp index 62ef0af..7554ded 100644 --- a/boost/config/compiler/gcc.hpp +++ b/boost/config/compiler/gcc.hpp @@ -212,6 +212,7 @@ // #if __GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 6) || !defined(__GXX_EXPERIMENTAL_CXX0X__) #define BOOST_NO_CONSTEXPR +#define BOOST_NO_NOEXCEPT #define BOOST_NO_NULLPTR #endif diff --git a/boost/config/compiler/gcc_xml.hpp b/boost/config/compiler/gcc_xml.hpp index a456463..b6a6377 100644 --- a/boost/config/compiler/gcc_xml.hpp +++ b/boost/config/compiler/gcc_xml.hpp @@ -50,6 +50,7 @@ # define BOOST_NO_LAMBDAS # define BOOST_NO_RAW_LITERALS # define BOOST_NO_UNICODE_LITERALS +# define BOOST_NO_NOEXCEPT #define BOOST_COMPILER "GCC-XML C++ version " __GCCXML__ diff --git a/boost/config/compiler/hp_acc.hpp b/boost/config/compiler/hp_acc.hpp index 1515ae7..cc0c0af 100644 --- a/boost/config/compiler/hp_acc.hpp +++ b/boost/config/compiler/hp_acc.hpp @@ -105,6 +105,7 @@ #define BOOST_NO_FUNCTION_TEMPLATE_DEFAULT_ARGS #define BOOST_NO_INITIALIZER_LISTS #define BOOST_NO_LAMBDAS +#define BOOST_NO_NOEXCEPT #define BOOST_NO_NULLPTR #define BOOST_NO_RAW_LITERALS #define BOOST_NO_RVALUE_REFERENCES diff --git a/boost/config/compiler/metrowerks.hpp b/boost/config/compiler/metrowerks.hpp index 4b9619f..94fb3ec 100644 --- a/boost/config/compiler/metrowerks.hpp +++ b/boost/config/compiler/metrowerks.hpp @@ -105,6 +105,7 @@ #define BOOST_NO_FUNCTION_TEMPLATE_DEFAULT_ARGS #define BOOST_NO_INITIALIZER_LISTS #define BOOST_NO_LAMBDAS +#define BOOST_NO_NOEXCEPT #define BOOST_NO_NULLPTR #define BOOST_NO_RAW_LITERALS #define BOOST_NO_SCOPED_ENUMS diff --git a/boost/config/compiler/mpw.hpp b/boost/config/compiler/mpw.hpp index a8c3aae..b9768dc 100644 --- a/boost/config/compiler/mpw.hpp +++ b/boost/config/compiler/mpw.hpp @@ -53,6 +53,7 @@ #define BOOST_NO_FUNCTION_TEMPLATE_DEFAULT_ARGS #define BOOST_NO_INITIALIZER_LISTS #define BOOST_NO_LAMBDAS +#define BOOST_NO_NOEXCEPT #define BOOST_NO_NULLPTR #define BOOST_NO_RAW_LITERALS #define BOOST_NO_RVALUE_REFERENCES diff --git a/boost/config/compiler/pathscale.hpp b/boost/config/compiler/pathscale.hpp index 8d986f3..c8e7588 100644 --- a/boost/config/compiler/pathscale.hpp +++ b/boost/config/compiler/pathscale.hpp @@ -43,6 +43,7 @@ # define BOOST_NO_RAW_LITERALS # define BOOST_NO_NULLPTR # define BOOST_NO_NUMERIC_LIMITS_LOWEST +# define BOOST_NO_NOEXCEPT # define BOOST_NO_LAMBDAS # define BOOST_NO_INITIALIZER_LISTS # define BOOST_NO_MS_INT64_NUMERIC_LIMITS diff --git a/boost/config/compiler/pgi.hpp b/boost/config/compiler/pgi.hpp index 0078e98..b9a2fe1 100644 --- a/boost/config/compiler/pgi.hpp +++ b/boost/config/compiler/pgi.hpp @@ -60,6 +60,7 @@ #define BOOST_NO_FUNCTION_TEMPLATE_DEFAULT_ARGS #define BOOST_NO_INITIALIZER_LISTS #define BOOST_NO_LAMBDAS +#define BOOST_NO_NOEXCEPT #define BOOST_NO_NULLPTR #define BOOST_NO_RAW_LITERALS #define BOOST_NO_RVALUE_REFERENCES diff --git a/boost/config/compiler/sunpro_cc.hpp b/boost/config/compiler/sunpro_cc.hpp index 86f3f24..030dc47 100644 --- a/boost/config/compiler/sunpro_cc.hpp +++ b/boost/config/compiler/sunpro_cc.hpp @@ -112,6 +112,7 @@ #define BOOST_NO_FUNCTION_TEMPLATE_DEFAULT_ARGS #define BOOST_NO_INITIALIZER_LISTS #define BOOST_NO_LAMBDAS +#define BOOST_NO_NOEXCEPT #define BOOST_NO_NULLPTR #define BOOST_NO_RAW_LITERALS #define BOOST_NO_RVALUE_REFERENCES diff --git a/boost/config/compiler/vacpp.hpp b/boost/config/compiler/vacpp.hpp index 419c420..42d8139 100644 --- a/boost/config/compiler/vacpp.hpp +++ b/boost/config/compiler/vacpp.hpp @@ -96,6 +96,7 @@ #endif #define BOOST_NO_INITIALIZER_LISTS #define BOOST_NO_LAMBDAS +#define BOOST_NO_NOEXCEPT #define BOOST_NO_NULLPTR #define BOOST_NO_RAW_LITERALS #define BOOST_NO_RVALUE_REFERENCES diff --git a/boost/config/compiler/visualc.hpp b/boost/config/compiler/visualc.hpp index 8707c71..7a8c48d 100644 --- a/boost/config/compiler/visualc.hpp +++ b/boost/config/compiler/visualc.hpp @@ -195,6 +195,7 @@ #define BOOST_NO_EXPLICIT_CONVERSION_OPERATORS #define BOOST_NO_FUNCTION_TEMPLATE_DEFAULT_ARGS #define BOOST_NO_INITIALIZER_LISTS +#define BOOST_NO_NOEXCEPT #define BOOST_NO_RAW_LITERALS #define BOOST_NO_SCOPED_ENUMS #define BOOST_NO_TEMPLATE_ALIASES diff --git a/libs/config/doc/macro_reference.qbk b/libs/config/doc/macro_reference.qbk index 40c0ff6..46b64ed 100644 --- a/libs/config/doc/macro_reference.qbk +++ b/libs/config/doc/macro_reference.qbk @@ -597,6 +597,8 @@ The C++ compiler does not support C++0x initializer lists. ]] [[`BOOST_NO_LONG_LONG`][The compiler does not support `long long`. ]] +[[`BOOST_NO_NOEXCEPT`][The compiler does not support `noexcept`. +]] [[`BOOST_NO_NULLPTR`][The compiler does not support 'nullptr'. ]] [[`BOOST_NO_RAW_LITERALS`][The compiler does not support diff --git a/libs/config/test/boost_no_noexcept.ipp b/libs/config/test/boost_no_noexcept.ipp new file mode 100644 index 0000000..91f2b01 --- /dev/null +++ b/libs/config/test/boost_no_noexcept.ipp @@ -0,0 +1,23 @@ +// Copyright (C) 2011 Takaya Saito +// 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 most recent version. + +// MACRO: BOOST_NO_NOEXCEPT +// TITLE: C++0x noexcept unavailable +// DESCRIPTION: The compiler does not support C++0x noexcept + +namespace boost_no_noexcept { + +int f() noexcept ; +int g() noexcept( noexcept( f() ) ) ; + +int test() +{ + bool b = noexcept( g() ); + return 0; +} + +}