mirror of git://gcc.gnu.org/git/gcc.git
libstdc++: Document remaining C++17 implementation-defined behavior.
This also covers bad_function_call::what from C++11.
libstdc++-v3/ChangeLog:
* doc/html/manual/status.html: Regenerate.
* doc/xml/manual/status_cxx2011.xml: Add entry for bad_function_call.
* doc/xml/manual/status_cxx2017.xml: Add entries for bad_any_cast
and nullptr_t output. Update entry for sf.cmath. Fix stable name for
mem.res.
Reviewed-by: Jonathan Wakely <jwakely@redhat.com>
Signed-off-by: Tomasz Kamiński <tkaminsk@redhat.com>
(cherry picked from commit 39d7c4d42a
)
This commit is contained in:
parent
9e1e285549
commit
128f1602a0
|
@ -254,6 +254,9 @@ the GCC 13 release series.
|
||||||
</p><p>
|
</p><p>
|
||||||
<span class="emphasis"><em>20.7.2.0 [util.smartptr.weakptr]</em></span>
|
<span class="emphasis"><em>20.7.2.0 [util.smartptr.weakptr]</em></span>
|
||||||
<code class="code">what()</code> returns <code class="literal">"bad_weak_ptr"</code>.
|
<code class="code">what()</code> returns <code class="literal">"bad_weak_ptr"</code>.
|
||||||
|
</p><p>
|
||||||
|
<span class="emphasis"><em>20.8.11.1 [func.wrap.badcall]</em></span>
|
||||||
|
<code class="code">what()</code> returns <code class="literal">"bad_function_call"</code>.
|
||||||
</p><p>
|
</p><p>
|
||||||
<span class="emphasis"><em>20.8.9.1.3 [func.bind.place]/1</em></span> There are 29
|
<span class="emphasis"><em>20.8.9.1.3 [func.bind.place]/1</em></span> There are 29
|
||||||
placeholders defined and the placeholder types are
|
placeholders defined and the placeholder types are
|
||||||
|
@ -1054,7 +1057,11 @@ since C++14 and the implementation is complete.
|
||||||
<code class="literal">"std::visit: variant is valueless"</code>,
|
<code class="literal">"std::visit: variant is valueless"</code>,
|
||||||
or <code class="literal">"std::visit<R>: variant is valueless"</code>.
|
or <code class="literal">"std::visit<R>: variant is valueless"</code>.
|
||||||
</p><p>
|
</p><p>
|
||||||
<span class="emphasis"><em>23.12.5.2 [memory.resource.pool.options]</em></span>
|
<span class="emphasis"><em>23.8.2 [any.bad_any_cast]</em></span>
|
||||||
|
<code class="code">what()</code> returns <code class="literal">"bad any_cast"</code>.
|
||||||
|
</p><p>
|
||||||
|
<span class="emphasis"><em>23.12.5 [mem.res.pool.options]</em></span>,
|
||||||
|
<span class="emphasis"><em>23.12.5 [mem.res.pool.mem]</em></span>
|
||||||
Let S equal <code class="code">numeric_limits<size_t>::digits</code>.
|
Let S equal <code class="code">numeric_limits<size_t>::digits</code>.
|
||||||
The limit for maximum number of blocks in a chunk is given by
|
The limit for maximum number of blocks in a chunk is given by
|
||||||
<span class="mathphrase">2<sup>N</sup>-1</span>,
|
<span class="mathphrase">2<sup>N</sup>-1</span>,
|
||||||
|
@ -1065,7 +1072,7 @@ since C++14 and the implementation is complete.
|
||||||
otherwise 3072 when <span class="mathphrase">S > 16</span>,
|
otherwise 3072 when <span class="mathphrase">S > 16</span>,
|
||||||
otherwise 768.
|
otherwise 768.
|
||||||
</p><p>
|
</p><p>
|
||||||
<span class="emphasis"><em>23.12.6.1 [memory.resource.monotonic.buffer.ctor]</em></span>
|
<span class="emphasis"><em>23.12.6.1 [mem.res.monotonic.buffer.ctor]</em></span>
|
||||||
The default <code class="code">next_buffer_size</code> is <code class="code">128 * sizeof(void*)</code>.
|
The default <code class="code">next_buffer_size</code> is <code class="code">128 * sizeof(void*)</code>.
|
||||||
The default growth factor is <code class="code">1.5</code>.
|
The default growth factor is <code class="code">1.5</code>.
|
||||||
</p><p>
|
</p><p>
|
||||||
|
@ -1100,8 +1107,11 @@ since C++14 and the implementation is complete.
|
||||||
races depends on the target C library that provides the function.
|
races depends on the target C library that provides the function.
|
||||||
</p><p>
|
</p><p>
|
||||||
<span class="emphasis"><em>29.9.5 [sf.cmath]</em></span>
|
<span class="emphasis"><em>29.9.5 [sf.cmath]</em></span>
|
||||||
The effect of calling the mathematical special functions with large
|
Calling the mathematical special functions with large inputs is supported
|
||||||
inputs should be documented here.
|
but the results may be imprecise.
|
||||||
|
</p><p>
|
||||||
|
<span class="emphasis"><em>30.7.5.2.3 [ostream.inserters]</em></span>
|
||||||
|
NTCTS for <code class="code">nullptr_t</code> is <code class="literal">"nullptr"</code>.
|
||||||
</p><p>
|
</p><p>
|
||||||
<span class="emphasis"><em>30.10.2.1 [fs.conform.9945]</em></span>,
|
<span class="emphasis"><em>30.10.2.1 [fs.conform.9945]</em></span>,
|
||||||
<span class="emphasis"><em>30.10.2.2 [fs.conform.os]</em></span>
|
<span class="emphasis"><em>30.10.2.2 [fs.conform.os]</em></span>
|
||||||
|
|
|
@ -2613,6 +2613,11 @@ the GCC 13 release series.
|
||||||
<code>what()</code> returns <literal>"bad_weak_ptr"</literal>.
|
<code>what()</code> returns <literal>"bad_weak_ptr"</literal>.
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
<emphasis>20.8.11.1 [func.wrap.badcall]</emphasis>
|
||||||
|
<code>what()</code> returns <literal>"bad_function_call"</literal>.
|
||||||
|
</para>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
<emphasis>20.8.9.1.3 [func.bind.place]/1</emphasis> There are 29
|
<emphasis>20.8.9.1.3 [func.bind.place]/1</emphasis> There are 29
|
||||||
placeholders defined and the placeholder types are
|
placeholders defined and the placeholder types are
|
||||||
|
|
|
@ -2918,7 +2918,13 @@ since C++14 and the implementation is complete.
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
<emphasis>23.12.5.2 [memory.resource.pool.options]</emphasis>
|
<emphasis>23.8.2 [any.bad_any_cast]</emphasis>
|
||||||
|
<code>what()</code> returns <literal>"bad any_cast"</literal>.
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
<emphasis>23.12.5 [mem.res.pool.options]</emphasis>,
|
||||||
|
<emphasis>23.12.5 [mem.res.pool.mem]</emphasis>
|
||||||
Let S equal <code>numeric_limits<size_t>::digits</code>.
|
Let S equal <code>numeric_limits<size_t>::digits</code>.
|
||||||
The limit for maximum number of blocks in a chunk is given by
|
The limit for maximum number of blocks in a chunk is given by
|
||||||
<inlineequation><mathphrase>2<superscript>N</superscript>-1</mathphrase></inlineequation>,
|
<inlineequation><mathphrase>2<superscript>N</superscript>-1</mathphrase></inlineequation>,
|
||||||
|
@ -2931,7 +2937,7 @@ since C++14 and the implementation is complete.
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
<emphasis>23.12.6.1 [memory.resource.monotonic.buffer.ctor]</emphasis>
|
<emphasis>23.12.6.1 [mem.res.monotonic.buffer.ctor]</emphasis>
|
||||||
The default <code>next_buffer_size</code> is <code>128 * sizeof(void*)</code>.
|
The default <code>next_buffer_size</code> is <code>128 * sizeof(void*)</code>.
|
||||||
The default growth factor is <code>1.5</code>.
|
The default growth factor is <code>1.5</code>.
|
||||||
</para>
|
</para>
|
||||||
|
@ -2981,8 +2987,13 @@ since C++14 and the implementation is complete.
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
<emphasis>29.9.5 [sf.cmath]</emphasis>
|
<emphasis>29.9.5 [sf.cmath]</emphasis>
|
||||||
The effect of calling the mathematical special functions with large
|
Calling the mathematical special functions with large inputs is supported
|
||||||
inputs should be documented here.
|
but the results may be imprecise.
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
<emphasis>30.7.5.2.3 [ostream.inserters]</emphasis>
|
||||||
|
NTCTS for <code>nullptr_t</code> is <literal>"nullptr"</literal>.
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
|
|
Loading…
Reference in New Issue