mirror of
https://github.com/boostorg/config.git
synced 2025-07-31 12:57:16 +02:00
Merge branch 'inline_variable' of https://github.com/Lastique/config into develop
Fixed Conflicts: doc/macro_reference.qbk
This commit is contained in:
@@ -74,6 +74,8 @@
|
|||||||
that allow use of C++14 features with C++11 or earlier compilers</a></span></dt>
|
that allow use of C++14 features with C++11 or earlier compilers</a></span></dt>
|
||||||
<dt><span class="section"><a href="boost_config/boost_macro_reference.html#boost_config.boost_macro_reference.macros_that_describe_c__17_features_not_supported">Macros
|
<dt><span class="section"><a href="boost_config/boost_macro_reference.html#boost_config.boost_macro_reference.macros_that_describe_c__17_features_not_supported">Macros
|
||||||
that describe C++17 features not supported</a></span></dt>
|
that describe C++17 features not supported</a></span></dt>
|
||||||
|
<dt><span class="section"><a href="boost_config/boost_macro_reference.html#boost_config.boost_macro_reference.macros_that_allow_use_of_c__17_features_with_c__14_or_earlier_compilers">Macros
|
||||||
|
that allow use of C++17 features with C++14 or earlier compilers</a></span></dt>
|
||||||
<dt><span class="section"><a href="boost_config/boost_macro_reference.html#boost_config.boost_macro_reference.macros_that_describe_features_that_have_been_removed_from_the_standard_">Macros
|
<dt><span class="section"><a href="boost_config/boost_macro_reference.html#boost_config.boost_macro_reference.macros_that_describe_features_that_have_been_removed_from_the_standard_">Macros
|
||||||
that describe features that have been removed from the standard.</a></span></dt>
|
that describe features that have been removed from the standard.</a></span></dt>
|
||||||
<dt><span class="section"><a href="boost_config/boost_macro_reference.html#boost_config.boost_macro_reference.boost_helper_macros">Boost
|
<dt><span class="section"><a href="boost_config/boost_macro_reference.html#boost_config.boost_macro_reference.boost_helper_macros">Boost
|
||||||
@@ -988,7 +990,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
|
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
|
||||||
<td align="left"><p><small>Last revised: October 29, 2019 at 09:32:56 GMT</small></p></td>
|
<td align="left"><p><small>Last revised: October 29, 2019 at 16:54:06 GMT</small></p></td>
|
||||||
<td align="right"><div class="copyright-footer"></div></td>
|
<td align="right"><div class="copyright-footer"></div></td>
|
||||||
</tr></table>
|
</tr></table>
|
||||||
<hr>
|
<hr>
|
||||||
|
@@ -940,7 +940,7 @@ provide compliant C++14 support.
|
|||||||
|
|
||||||
[table
|
[table
|
||||||
[[Macro ][ Description ]]
|
[[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.]]
|
[[`BOOST_CXX14_CONSTEXPR`][This macro works similar to `BOOST_CONSTEXPR`, but expands to `constexpr` only if the C++14 "relaxed" `constexpr` is available.]]
|
||||||
]
|
]
|
||||||
|
|
||||||
[endsect]
|
[endsect]
|
||||||
@@ -959,7 +959,21 @@ that are not yet supported by a particular compiler or library.
|
|||||||
[[`BOOST_NO_CXX17_STD_INVOKE`][The compiler does not support `std::invoke()`.]]
|
[[`BOOST_NO_CXX17_STD_INVOKE`][The compiler does not support `std::invoke()`.]]
|
||||||
[[`BOOST_NO_CXX17_ITERATOR_TRAITS`][The compiler does not support SFINAE-friendly `std::iterator_traits`.]]
|
[[`BOOST_NO_CXX17_ITERATOR_TRAITS`][The compiler does not support SFINAE-friendly `std::iterator_traits`.]]
|
||||||
[[`BOOST_NO_CXX17_IF_CONSTEXPR`][The compiler does not support `if constexpr`.]]
|
[[`BOOST_NO_CXX17_IF_CONSTEXPR`][The compiler does not support `if constexpr`.]]
|
||||||
[[`BOOST_NO_CXX17_INLINE_VARIABLES`][The compiler does not support C++17 inline variables.]]
|
[[`BOOST_NO_CXX17_INLINE_VARIABLES`][The compiler does not support `inline` variables.]]
|
||||||
|
]
|
||||||
|
|
||||||
|
[endsect]
|
||||||
|
|
||||||
|
[#config_17_for_14]
|
||||||
|
|
||||||
|
[section Macros that allow use of C++17 features with C++14 or earlier compilers]
|
||||||
|
|
||||||
|
The following macros allow use of C++17 features even with compilers that do not yet
|
||||||
|
provide compliant C++17 support.
|
||||||
|
|
||||||
|
[table
|
||||||
|
[[Macro ][ Description ]]
|
||||||
|
[[`BOOST_INLINE_VARIABLE`][This macro expands to `inline` on compilers that support C++17 inline variables and to nothing otherwise. Users may need to check for `BOOST_NO_CXX17_INLINE_VARIABLES` for further adjustments to the code.]]
|
||||||
]
|
]
|
||||||
|
|
||||||
[endsect]
|
[endsect]
|
||||||
|
@@ -994,6 +994,15 @@ namespace std{ using ::type_info; }
|
|||||||
#define BOOST_CXX14_CONSTEXPR constexpr
|
#define BOOST_CXX14_CONSTEXPR constexpr
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
//
|
||||||
|
// C++17 inline variables
|
||||||
|
//
|
||||||
|
#if !defined(BOOST_NO_CXX17_INLINE_VARIABLES)
|
||||||
|
#define BOOST_INLINE_VARIABLE inline
|
||||||
|
#else
|
||||||
|
#define BOOST_INLINE_VARIABLE
|
||||||
|
#endif
|
||||||
|
|
||||||
//
|
//
|
||||||
// Unused variable/typedef workarounds:
|
// Unused variable/typedef workarounds:
|
||||||
//
|
//
|
||||||
|
Reference in New Issue
Block a user