Update C++17 library status docs

* doc/xml/manual/status_cxx2017.xml: Update C++17 status.
	* doc/html/*: Regenerate.

From-SVN: r266559
This commit is contained in:
Jonathan Wakely 2018-11-28 13:49:47 +00:00 committed by Jonathan Wakely
parent a257ad4668
commit 5916922e34
5 changed files with 48 additions and 20 deletions

View File

@ -1,3 +1,8 @@
2018-11-28 Jonathan Wakely <jwakely@redhat.com>
* doc/xml/manual/status_cxx2017.xml: Update C++17 status.
* doc/html/*: Regenerate.
2018-11-27 Jonathan Wakely <jwakely@redhat.com>
* testsuite/27_io/filesystem/operations/canonical.cc: Remove

View File

@ -238,7 +238,25 @@
use <code class="option">OPTION=gcc4-compatible</code> to set it to
<code class="literal">0</code>.
This option does not change the library ABI.
</p></dd><dt><span class="term"><code class="code">--enable-vtable-verify</code>[default]</span></dt><dd><p>Use <code class="code">-fvtable-verify=std</code> to compile the C++
</p></dd><dt><span class="term"><code class="code">--with-libstdcxx-lock-policy=OPTION</code></span></dt><dd><p>Sets the lock policy that controls how
<code class="classname">shared_ptr</code> reference counting is
synchronized.
The choice OPTION=atomic enables use of atomics for updates to
<code class="classname">shared_ptr</code> reference counts.
The choice OPTION=mutex enables use of a mutex to synchronize updates
to <code class="classname">shared_ptr</code> reference counts.
If the compiler's thread model is "single" then this option has no
effect, as no synchronization is used for the reference counts.
The default is OPTION=auto, which checks for the availability of
compiler built-ins for 2-byte and 4-byte atomic compare-and-swap,
and uses OPTION=atomic if they're available, OPTION=mutex otherwise.
This option can change the library ABI.
If the library is configured to use atomics and user programs are
compiled using a target that doesn't natively support the atomic
operations (e.g. the library is configured for armv7 and then code
is compiled with <code class="option">-march=armv5t</code>) then the program
might rely on support in libgcc to provide the atomics.
</p></dd><dt><span class="term"><code class="code">--enable-vtable-verify</code>[default]</span></dt><dd><p>Use <code class="code">-fvtable-verify=std</code> to compile the C++
runtime with instrumentation for vtable verification. All virtual
functions in the standard library will be verified at runtime.
Types impacted include <code class="classname">locale</code> and

View File

@ -324,7 +324,7 @@
The Hoard Memory Allocator
</a>
</em>. </span><span class="author"><span class="firstname">Emery</span> <span class="surname">Berger</span>. </span></p></div><div class="biblioentry"><a id="id-1.3.4.4.4.3.9.5"></a><p><span class="title"><em>
<a class="link" href="http://people.cs.umass.edu/~emery/pubs/berger-oopsla2002.pdf" target="_top">
<a class="link" href="https://people.cs.umass.edu/~emery/pubs/berger-oopsla2002.pdf" target="_top">
Reconsidering Custom Memory Allocation
</a>
</em>. </span><span class="author"><span class="firstname">Emery</span> <span class="surname">Berger</span>. </span><span class="author"><span class="firstname">Ben</span> <span class="surname">Zorn</span>. </span><span class="author"><span class="firstname">Kathryn</span> <span class="surname">McKinley</span>. </span><span class="copyright">Copyright © 2002 OOPSLA. </span></p></div><div class="biblioentry"><a id="id-1.3.4.4.4.3.9.6"></a><p><span class="title"><em>

View File

@ -576,11 +576,11 @@ Feature-testing recommendations for C++</a>.
</td><td align="center"> 7.1 </td><td align="left"> <code class="code">__has_include(&lt;string_view&gt;)</code>,
<code class="code">__cpp_lib_string_view &gt;= 201603</code>
(since 7.3, see Note 1)
</td></tr><tr bgcolor="#C8B0B0"><td align="left"> Library Fundamentals V1 TS Components: <code class="code">memory_resource</code> </td><td align="left">
</td></tr><tr><td align="left"> Library Fundamentals V1 TS Components: <code class="code">memory_resource</code> </td><td align="left">
<a class="link" href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2016/p0220r1.html" target="_top">
P0220R1
</a>
</td><td align="center"> No </td><td align="left"> <code class="code">__has_include(&lt;memory_resource&gt;)</code>,
</td><td align="center"> 9.1 </td><td align="left"> <code class="code">__has_include(&lt;memory_resource&gt;)</code>,
<code class="code">__cpp_lib_memory_resource &gt;= 201603</code>
</td></tr><tr><td align="left"> Library Fundamentals V1 TS Components: <code class="code">apply</code> </td><td align="left">
<a class="link" href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2016/p0220r1.html" target="_top">
@ -711,7 +711,7 @@ Feature-testing recommendations for C++</a>.
<a class="link" href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2016/p0426r1.html" target="_top">
P0426R1
</a>
</td><td align="center"> 8 </td><td align="left"><code class="code"> __cpp_lib_constexpr_char_traits &gt;= 201611 </code></td></tr><tr><td align="left"> Integrating <code class="code">std::string_view</code> and <code class="code">std::string</code> </td><td align="left">
</td><td align="center"> 8.1 </td><td align="left"><code class="code"> __cpp_lib_constexpr_char_traits &gt;= 201611 </code></td></tr><tr><td align="left"> Integrating <code class="code">std::string_view</code> and <code class="code">std::string</code> </td><td align="left">
<a class="link" href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2016/p0254r2.pdf" target="_top">
P0254R2
</a>
@ -784,22 +784,22 @@ Feature-testing recommendations for C++</a>.
<a class="link" href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2016/p0218r1.html" target="_top">
P0218R1
</a>
</td><td align="center"> 8 </td><td align="left"><code class="code"> __has_include(&lt;filesystem&gt;) </code>,
</td><td align="center"> 8.1 </td><td align="left"><code class="code"> __has_include(&lt;filesystem&gt;) </code>,
<code class="code"> __cpp_lib_filesystem &gt;= 201603 </code>
(requires linking with <code class="code">-lstdc++fs</code>)
</td></tr><tr><td align="left"> Relative Paths for Filesystem</td><td align="left">
<a class="link" href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2016/p0219r1.html" target="_top">
P0219R1
</a>
</td><td align="center"> 8 </td><td align="left"><code class="code"> __cpp_lib_filesystem &gt;= 201606 </code></td></tr><tr><td align="left"> Adapting string_view by filesystem paths </td><td align="left">
</td><td align="center"> 8.1 </td><td align="left"><code class="code"> __cpp_lib_filesystem &gt;= 201606 </code></td></tr><tr><td align="left"> Adapting string_view by filesystem paths </td><td align="left">
<a class="link" href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2016/p0392r0.pdf" target="_top">
P0392R0
</a>
</td><td align="center"> 8 </td><td align="left"><code class="code"> __cpp_lib_filesystem &gt;= 201606 </code></td></tr><tr><td align="left"> Directory Entry Caching for Filesystem </td><td align="left">
</td><td align="center"> 8.1 </td><td align="left"><code class="code"> __cpp_lib_filesystem &gt;= 201606 </code></td></tr><tr><td align="left"> Directory Entry Caching for Filesystem </td><td align="left">
<a class="link" href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2016/p0317r1.html" target="_top">
P0317R1
</a>
</td><td align="center"> 8 </td><td align="left"><code class="code"> __cpp_lib_filesystem &gt;= 201703 </code></td></tr><tr><td align="left"> constexpr <code class="code">atomic&lt;T&gt;::is_always_lock_free</code> </td><td align="left">
</td><td align="center"> 8.1 </td><td align="left"><code class="code"> __cpp_lib_filesystem &gt;= 201703 </code></td></tr><tr><td align="left"> constexpr <code class="code">atomic&lt;T&gt;::is_always_lock_free</code> </td><td align="left">
<a class="link" href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2016/p0152r1.html" target="_top">
P0152R1
</a>
@ -820,7 +820,7 @@ Feature-testing recommendations for C++</a>.
<a class="link" href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2016/p0067r5.html" target="_top">
P0067R5
</a>
</td><td align="center"> 8 (only integral types supported) </td><td align="left"><code class="code"> __has_include(&lt;charconv&gt;) </code>
</td><td align="center"> 8.1 (only integral types supported) </td><td align="left"><code class="code"> __has_include(&lt;charconv&gt;) </code>
<code class="code"> __cpp_lib_to_chars &gt;= 201611 </code></td></tr></tbody></table></div></div><br class="table-break" /><p>
Note 1: This feature is supported in GCC 7.1 and 7.2 but before GCC 7.3 the
<code class="code">__cpp_lib</code> macro is not defined, and compilation will fail if the
@ -874,7 +874,10 @@ and test for <code class="code">__STDCPP_MATH_SPEC_FUNCS__ &gt;= 201003L</code>.
<a class="link" href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2015/n4521.html" target="_top">
N4521
</a>
</td><td align="left"> Merge Fundamentals V1 into V2 </td><td align="left">N</td><td align="left">Library Fundamentals 2 TS</td></tr><tr><td align="left">
</td><td align="left"> Merge Fundamentals V1 into V2 </td><td align="left">
N (components from V1 are still in namespace
<code class="code">fundamentals_v1</code>)
</td><td align="left">Library Fundamentals 2 TS</td></tr><tr><td align="left">
<a class="link" href="http://open-std.org/JTC1/SC22/WG21/docs/papers/2015/p0013r1.html" target="_top">
P0013R1
</a>

View File

@ -147,14 +147,13 @@ Feature-testing recommendations for C++</link>.
</row>
<row>
<?dbhtml bgcolor="#C8B0B0" ?>
<entry> Library Fundamentals V1 TS Components: <code>memory_resource</code> </entry>
<entry>
<link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2016/p0220r1.html">
P0220R1
</link>
</entry>
<entry align="center"> No </entry>
<entry align="center"> 9.1 </entry>
<entry> <code>__has_include(&lt;memory_resource&gt;)</code>,
<code>__cpp_lib_memory_resource >= 201603</code>
</entry>
@ -504,7 +503,7 @@ Feature-testing recommendations for C++</link>.
P0426R1
</link>
</entry>
<entry align="center"> 8 </entry>
<entry align="center"> 8.1 </entry>
<entry><code> __cpp_lib_constexpr_char_traits >= 201611 </code></entry>
</row>
@ -690,7 +689,7 @@ Feature-testing recommendations for C++</link>.
P0218R1
</link>
</entry>
<entry align="center"> 8 </entry>
<entry align="center"> 8.1 </entry>
<entry><code> __has_include(&lt;filesystem&gt;) </code>,
<code> __cpp_lib_filesystem >= 201603 </code>
(requires linking with <code>-lstdc++fs</code>)
@ -704,7 +703,7 @@ Feature-testing recommendations for C++</link>.
P0219R1
</link>
</entry>
<entry align="center"> 8 </entry>
<entry align="center"> 8.1 </entry>
<entry><code> __cpp_lib_filesystem >= 201606 </code></entry>
</row>
@ -715,7 +714,7 @@ Feature-testing recommendations for C++</link>.
P0392R0
</link>
</entry>
<entry align="center"> 8 </entry>
<entry align="center"> 8.1 </entry>
<entry><code> __cpp_lib_filesystem >= 201606 </code></entry>
</row>
@ -726,7 +725,7 @@ Feature-testing recommendations for C++</link>.
P0317R1
</link>
</entry>
<entry align="center"> 8 </entry>
<entry align="center"> 8.1 </entry>
<entry><code> __cpp_lib_filesystem >= 201703 </code></entry>
</row>
@ -783,7 +782,7 @@ Feature-testing recommendations for C++</link>.
P0067R5
</link>
</entry>
<entry align="center"> 8 (only integral types supported) </entry>
<entry align="center"> 8.1 (only integral types supported) </entry>
<entry><code> __has_include(&lt;charconv&gt;) </code>
<code> __cpp_lib_to_chars >= 201611 </code></entry>
</row>
@ -939,7 +938,10 @@ and test for <code>__STDCPP_MATH_SPEC_FUNCS__ >= 201003L</code>.
</link>
</entry>
<entry> Merge Fundamentals V1 into V2 </entry>
<entry>N</entry>
<entry>
N (components from V1 are still in namespace
<code>fundamentals_v1</code>)
</entry>
<entry>Library Fundamentals 2 TS</entry>
</row>