blob: ff14c4c356a81bdc471560ed2d2680ee2f69f4bf [file] [log] [blame]
<section xmlns="http://docbook.org/ns/docbook" version="5.0"
xml:id="status.iso.2014" xreflabel="Status C++ 2014">
<?dbhtml filename="status_iso_cxx2014.html"?>
<info><title>C++ 2014</title>
<keywordset>
<keyword>ISO C++</keyword>
<keyword>2014</keyword>
</keywordset>
</info>
<para>
In this implementation <literal>-std=gnu++1y</literal> or
<literal>-std=c++1y</literal> flags must be used to enable language
and library
features. See <link linkend="manual.intro.using.flags">dialect</link>
options. The pre-defined symbol
<constant>__cplusplus</constant> is used to check for the
presence of the required flag.
</para>
<para>
This page describes the C++14 and library TS support in mainline GCC SVN,
not in any particular release.
</para>
<table frame="all">
<title>C++ 2014 Implementation Status</title>
<tgroup cols="4" align="left" colsep="0" rowsep="1">
<colspec colname="c1"/>
<colspec colname="c2"/>
<colspec colname="c3"/>
<colspec colname="c4"/>
<thead>
<row>
<entry>Paper</entry>
<entry>Title</entry>
<entry>Status</entry>
<entry>Comments</entry>
</row>
</thead>
<tbody>
<row>
<entry>
<link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://www.open-std.org/JTC1/sc22/WG21/docs/papers/2013/n3669.pdf">
N3669
</link>
</entry>
<entry>Fixing constexpr member functions without const</entry>
<entry>Y</entry>
<entry/>
</row>
<row>
<entry>
<link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://www.open-std.org/JTC1/sc22/WG21/docs/papers/2013/n3668.html">
N3668
</link>
</entry>
<entry><code>exchange()</code> utility function</entry>
<entry>Y</entry>
<entry/>
</row>
<row>
<entry>
<link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://www.open-std.org/JTC1/sc22/WG21/docs/papers/2013/n3670.html">
N3670
</link>
</entry>
<entry>Wording for Addressing Tuples by Type</entry>
<entry>Y</entry>
<entry/>
</row>
<row>
<entry>
<link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://www.open-std.org/JTC1/sc22/WG21/docs/papers/2013/n3656.htm">
N3656
</link>
</entry>
<entry><code>make_unique</code></entry>
<entry>Y</entry>
<entry/>
</row>
<row>
<entry>
<link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://www.open-std.org/JTC1/sc22/WG21/docs/papers/2012/n3462.html">
N3462
</link>
</entry>
<entry><code>std::result_of</code> and SFINAE</entry>
<entry>Y</entry>
<entry/>
</row>
<row>
<entry>
<link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://www.open-std.org/JTC1/sc22/WG21/docs/papers/2013/n3545.pdf">
N3545
</link>
</entry>
<entry>An Incremental Improvement to <code>integral_constant</code></entry>
<entry>Y</entry>
<entry/>
</row>
<row>
<entry>
<link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://www.open-std.org/JTC1/sc22/WG21/docs/papers/2013/n3642.pdf">
N3642
</link>
</entry>
<entry>User-defined Literals for Standard Library Types</entry>
<entry>Y</entry>
<entry/>
</row>
<row>
<entry>
<link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://www.open-std.org/JTC1/sc22/WG21/docs/papers/2013/n3671.html">
N3671
</link>
</entry>
<entry>Making non-modifying sequence operations more robust</entry>
<entry>Y</entry>
<entry/>
</row>
<row>
<entry>
<link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://www.open-std.org/JTC1/sc22/WG21/docs/papers/2013/n3654.html">
N3654
</link>
</entry>
<entry>Quoted Strings Library Proposal</entry>
<entry>Y</entry>
<entry/>
</row>
<row>
<entry>
<link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://www.open-std.org/JTC1/sc22/WG21/docs/papers/2012/n3469.html">
N3469
</link>
</entry>
<entry>Constexpr Library Additions: chrono</entry>
<entry>Y</entry>
<entry/>
</row>
<row>
<entry>
<link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://www.open-std.org/JTC1/sc22/WG21/docs/papers/2012/n3470.html">
N3470
</link>
</entry>
<entry>Constexpr Library Additions: containers</entry>
<entry>Y</entry>
<entry/>
</row>
<row>
<entry>
<link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://www.open-std.org/JTC1/sc22/WG21/docs/papers/2012/n3471.html">
N3471
</link>
</entry>
<entry>Constexpr Library Additions: utilities</entry>
<entry>Y</entry>
<entry/>
</row>
<row>
<entry>
<link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://www.open-std.org/JTC1/sc22/WG21/docs/papers/2013/n3658.html">
N3658
</link>
</entry>
<entry>Compile-time integer sequences</entry>
<entry>Y</entry>
<entry/>
</row>
<row>
<entry>
<link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://www.open-std.org/JTC1/sc22/WG21/docs/papers/2013/n3659.html">
N3659
</link>
</entry>
<entry>Shared Locking in C++</entry>
<entry>Y</entry>
<entry>Need tests</entry>
</row>
<row>
<entry>
<link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://www.open-std.org/JTC1/sc22/WG21/docs/papers/2012/n3421.htm">
N3421
</link>
</entry>
<entry>Making Operator Functors greater&lt;&gt;</entry>
<entry>Y</entry>
<entry/>
</row>
<row>
<?dbhtml bgcolor="#C8C8B0" ?>
<entry>
<link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://www.open-std.org/JTC1/sc22/WG21/docs/papers/2013/n3657.htm">
N3657
</link>
</entry>
<entry>Adding heterogeneous comparison lookup to associative containers</entry>
<entry>WIP</entry>
<entry/>
</row>
<row>
<entry>
<link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://www.open-std.org/JTC1/sc22/WG21/docs/papers/2013/n3655.pdf">
N3655
</link>
</entry>
<entry>TransformationTraits Redux</entry>
<entry>Y</entry>
<entry/>
</row>
<row>
<?dbhtml bgcolor="#C8B0B0" ?>
<entry>
<link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://www.open-std.org/JTC1/sc22/WG21/docs/papers/2013/n3644.pdf">
N3644
</link>
</entry>
<entry>Null Forward Iterators</entry>
<entry>N</entry>
<entry/>
</row>
</tbody>
</tgroup>
</table>
<table frame="all">
<title>C++ Technical Specifications Implementation Status</title>
<tgroup cols="4" align="left" colsep="0" rowsep="1">
<colspec colname="c1"/>
<colspec colname="c2"/>
<colspec colname="c3"/>
<colspec colname="c4"/>
<thead>
<row>
<entry>Paper</entry>
<entry>Title</entry>
<entry>Status</entry>
<entry>Comments</entry>
</row>
</thead>
<tbody>
<row>
<?dbhtml bgcolor="#C8B0B0" ?>
<entry>
<link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://www.open-std.org/JTC1/sc22/WG21/docs/papers/2013/n3662.html">
N3662
</link>
</entry>
<entry>C++ Dynamic Arrays</entry>
<entry>N</entry>
<entry>Array Extensions TS</entry>
</row>
<row>
<?dbhtml bgcolor="#C8B0B0" ?>
<entry>
<link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://www.open-std.org/JTC1/SC22/WG21/docs/papers/2013/n3783.pdf">
N3783
</link>
</entry>
<entry>Network byte order conversion</entry>
<entry>N</entry>
<entry>Library Fundamentals TS</entry>
</row>
<row>
<entry>
<link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://www.open-std.org/JTC1/SC22/WG21/docs/papers/2013/n3793.html">
N3793
</link>
</entry>
<entry>A proposal to add a utility class to represent optional objects</entry>
<entry>Y</entry>
<entry>Library Fundamentals TS</entry>
</row>
<row>
<?dbhtml bgcolor="#C8B0B0" ?>
<entry>
<link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://www.open-std.org/JTC1/SC22/WG21/docs/papers/2013/n3804.html">
N3804
</link>
</entry>
<entry>Any library proposal</entry>
<entry>N</entry>
<entry>Library Fundamentals TS</entry>
</row>
<row>
<?dbhtml bgcolor="#C8B0B0" ?>
<entry>
<link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://www.open-std.org/JTC1/SC22/WG21/docs/papers/2014/n3843.pdf">
N3843
</link>
</entry>
<entry>A SFINAE-Friendly std::common_type (option 2 was approved)</entry>
<entry>N</entry>
<entry>Library Fundamentals TS</entry>
</row>
<row>
<?dbhtml bgcolor="#C8B0B0" ?>
<entry>
<link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://www.open-std.org/JTC1/SC22/WG21/docs/papers/2014/n3866.html">
N3866
</link>
</entry>
<entry>Invocation type traits, but dropping function_call_operator.</entry>
<entry>N</entry>
<entry>Library Fundamentals TS</entry>
</row>
<row>
<?dbhtml bgcolor="#C8B0B0" ?>
<entry>
<link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="">
N3905
</link>
</entry>
<entry>Faster string searching (Boyer-Moore et al.)</entry>
<entry>N</entry>
<entry>Library Fundamentals TS</entry>
</row>
<row>
<?dbhtml bgcolor="#C8B0B0" ?>
<entry>
<link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2014/n3915.pdf">
N3915
</link>
</entry>
<entry>apply() call a function with arguments from a tuple</entry>
<entry>N</entry>
<entry>Library Fundamentals TS</entry>
</row>
<row>
<?dbhtml bgcolor="#C8B0B0" ?>
<entry>
<link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2014/n3916.pdf">
N3916
</link>
</entry>
<entry>Polymorphic memory resources</entry>
<entry>N</entry>
<entry>Library Fundamentals TS</entry>
</row>
<row>
<?dbhtml bgcolor="#C8B0B0" ?>
<entry>
<link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2014/n3920.html">
N3920
</link>
</entry>
<entry>Extending shared_ptr to support arrays</entry>
<entry>N</entry>
<entry>Library Fundamentals TS</entry>
</row>
<row>
<entry>
<link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2014/n3921.html">
N3921
</link>
</entry>
<entry><code>string_view</code>: a non-owning reference to a string</entry>
<entry>Y</entry>
<entry>Library Fundamentals TS</entry>
</row>
<row>
<?dbhtml bgcolor="#C8B0B0" ?>
<entry>
<link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2014/n3923.pdf">
N3923
</link>
</entry>
<entry>A SFINAE-Friendly std::iterator_traits</entry>
<entry>N</entry>
<entry>Library Fundamentals TS</entry>
</row>
<row>
<?dbhtml bgcolor="#C8B0B0" ?>
<entry>
<link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2014/n3925.pdf">
N3925
</link>
</entry>
<entry>A sample proposal</entry>
<entry>N</entry>
<entry>Library Fundamentals TS</entry>
</row>
<row>
<?dbhtml bgcolor="#C8B0B0" ?>
<entry>
<link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2014/n3932.htm">
N3932
</link>
</entry>
<entry>Variable Templates For Type Traits</entry>
<entry>N</entry>
<entry>Library Fundamentals TS</entry>
</row>
<row>
<?dbhtml bgcolor="#C8C8B0" ?>
<entry>
<link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2014/n3932.htm">
N3940
</link>
</entry>
<entry>File System</entry>
<entry>WIP</entry>
<entry></entry>
</row>
</tbody>
</tgroup>
</table>
</section>