From e725ad9776f06fa45d7f357d44498e3cb1eb81bb Mon Sep 17 00:00:00 2001 From: jzmaddock Date: Sun, 12 Oct 2014 17:01:03 +0100 Subject: [PATCH] Fix C++14 macro docs. Regen docs. --- .../boost_config/boost_macro_reference.html | 207 ++++++++++++++++++ doc/html/index.html | 6 +- doc/macro_reference.qbk | 21 +- 3 files changed, 223 insertions(+), 11 deletions(-) diff --git a/doc/html/boost_config/boost_macro_reference.html b/doc/html/boost_config/boost_macro_reference.html index 59607598..29ffe9db 100644 --- a/doc/html/boost_config/boost_macro_reference.html +++ b/doc/html/boost_config/boost_macro_reference.html @@ -37,6 +37,10 @@ that describe C++11 features not supported
Macros that allow use of C++11 features with C++03 compilers
+
Macros + that describe C++14 features not supported
+
Macros + that allow use of C++14 features with C++11 or earlier compilers
Boost Helper Macros
Boost @@ -3451,6 +3455,209 @@
+

+ The following macros describe features in the 2014 ISO C++ standard, formerly + known as C++0y, that are not yet supported by a particular compiler or library. +

+
++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+

+ Macro +

+
+

+ Description +

+
+

+ BOOST_NO_CXX14_AGGREGATE_NSDMI +

+
+

+ The compiler does not support member initializer for aggregates + as in the following example: +

+
+

+

+
struct Foo
+{
+  int x, y = 42;
+};
+
+Foo foo = { 0 };
+
+

+

+
+
+

+ BOOST_NO_CXX14_BINARY_LITERALS +

+
+

+ The compiler does not binary literals (e.g. 0b1010). +

+
+

+ BOOST_NO_CXX14_CONSTEXPR +

+
+

+ The compiler does not support relaxed constexpr. +

+
+

+ BOOST_NO_CXX14_DECLTYPE_AUTO +

+
+

+ The compiler does not support decltype(auto). +

+
+

+ BOOST_NO_CXX14_DIGIT_SEPARATOR +

+
+

+ The compiler does not support digit separators (e.g. 1'000'000). +

+
+

+ BOOST_NO_CXX14_GENERIC_LAMBDAS +

+
+

+ The compiler does not support generic lambda (e.g. [](auto + v){ + }). +

+
+

+ BOOST_NO_CXX14_INITIALIZED_LAMBDA_CAPTURE +

+
+

+ The compiler does not support initialized lambda capture (e.g. + [foo + = 42]{ }). +

+
+

+ BOOST_NO_CXX14_RETURN_TYPE_DEDUCTION +

+
+

+ The compiler does not support return type deduction for normal + functions (e.g. auto f() + { return + val; + }). +

+
+

+ BOOST_NO_CXX14_VARIABLE_TEMPLATES +

+
+

+ The compiler does not support variable template (e.g. template <class T> T + kibi = + T(1024);). +

+
+
+
+ +

+ The following macros allow use of C++14 features even with compilers that + do not yet provide compliant C++14 support. +

+
++++ + + + + + + + + +
+

+ Macro +

+
+

+ Description +

+
+

+ BOOST_CXX14_CONSTEXPR +

+
+

+ This macro works similar to BOOST_CONSTEXPR, but expands to constexpr only if the C++14 "relaxed" + constexpr is available. +

+
+
+
+ diff --git a/doc/html/index.html b/doc/html/index.html index 20964d13..c184e488 100644 --- a/doc/html/index.html +++ b/doc/html/index.html @@ -68,6 +68,10 @@ that describe C++11 features not supported
Macros that allow use of C++11 features with C++03 compilers
+
Macros + that describe C++14 features not supported
+
Macros + that allow use of C++14 features with C++11 or earlier compilers
Boost Helper Macros
Boost @@ -984,7 +988,7 @@ - +

Last revised: October 11, 2014 at 12:11:50 GMT

Last revised: October 12, 2014 at 16:00:14 GMT


diff --git a/doc/macro_reference.qbk b/doc/macro_reference.qbk index 67151578..72b41cde 100644 --- a/doc/macro_reference.qbk +++ b/doc/macro_reference.qbk @@ -878,6 +878,17 @@ that are not yet supported by a particular compiler or library. [table [[Macro ][Description ]] [[`BOOST_NO_CXX14_AGGREGATE_NSDMI`][The compiler does not support member initializer for aggregates as in the following example: +[: +`` +struct Foo +{ + int x, y = 42; +}; + +Foo foo = { 0 }; +`` +] +]] [[`BOOST_NO_CXX14_BINARY_LITERALS`][The compiler does not binary literals (e.g. `0b1010`).]] [[`BOOST_NO_CXX14_CONSTEXPR`][The compiler does not support relaxed `constexpr`.]] [[`BOOST_NO_CXX14_DECLTYPE_AUTO`][The compiler does not support `decltype(auto)`.]] @@ -886,16 +897,6 @@ that are not yet supported by a particular compiler or library. [[`BOOST_NO_CXX14_INITIALIZED_LAMBDA_CAPTURE`][The compiler does not support initialized lambda capture (e.g. `[foo = 42]{ }`).]] [[`BOOST_NO_CXX14_RETURN_TYPE_DEDUCTION`][The compiler does not support return type deduction for normal functions (e.g. `auto f() { return val; }`).]] [[`BOOST_NO_CXX14_VARIABLE_TEMPLATES`][The compiler does not support variable template (e.g. `template T kibi = T(1024);`).]] -[: -`` -struct Foo -{ -int x, y = 42; -}; -Foo foo = { 0 }; -`` -] -]] ] [endsect]