Add <experimental/algorithm> and <experimental/functional>.
[official-gcc.git] / libstdc++-v3 / doc / xml / manual / status_cxx2014.xml
blobf7d18a2a340d75719d4b329ab0989ae6b6733af2
1 <section xmlns="http://docbook.org/ns/docbook" version="5.0" 
2          xml:id="status.iso.2014" xreflabel="Status C++ 2014">
3 <?dbhtml filename="status_iso_cxx2014.html"?>
5 <info><title>C++ 2014</title>
6   <keywordset>
7     <keyword>ISO C++</keyword>
8     <keyword>2014</keyword>
9   </keywordset>
10 </info>
12 <para>
13 In this implementation <literal>-std=gnu++1y</literal> or
14 <literal>-std=c++1y</literal> flags must be used to enable language
15 and library
16 features. See <link linkend="manual.intro.using.flags">dialect</link>
17 options. The pre-defined symbol
18 <constant>__cplusplus</constant> is used to check for the
19 presence of the required flag.
20 </para>
22 <para>
23 This page describes the C++14 and library TS support in mainline GCC SVN,
24 not in any particular release.
25 </para>
27 <table frame="all" xml:id="table.cxx14_status">
28 <title>C++ 2014 Implementation Status</title>
30 <tgroup cols="4" align="left" colsep="0" rowsep="1">
31 <colspec colname="c1"/>
32 <colspec colname="c2"/>
33 <colspec colname="c3"/>
34 <colspec colname="c4"/>
35   <thead>
36     <row>
37       <entry>Paper</entry>
38       <entry>Title</entry>
39       <entry>Status</entry>
40       <entry>Comments</entry>
41     </row>
42   </thead>
44   <tbody>
46     <row>
47       <entry>
48         <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://www.open-std.org/JTC1/sc22/WG21/docs/papers/2013/n3669.pdf">
49           N3669
50         </link>
51       </entry>
52       <entry>Fixing constexpr member functions without const</entry>
53       <entry>Y</entry>
54       <entry/>
55     </row>
57     <row>
58       <entry>
59         <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://www.open-std.org/JTC1/sc22/WG21/docs/papers/2013/n3668.html">
60           N3668
61         </link>
62       </entry>
63       <entry><code>exchange()</code> utility function</entry>
64       <entry>Y</entry>
65       <entry/>
66     </row>
68     <row>
69       <entry>
70         <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://www.open-std.org/JTC1/sc22/WG21/docs/papers/2013/n3670.html">
71           N3670
72         </link>
73       </entry>
74       <entry>Wording for Addressing Tuples by Type</entry>
75       <entry>Y</entry>
76       <entry/>
77     </row>
79     <row>
80       <entry>
81         <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://www.open-std.org/JTC1/sc22/WG21/docs/papers/2013/n3656.htm">
82           N3656
83         </link>
84       </entry>
85       <entry><code>make_unique</code></entry>
86       <entry>Y</entry>
87       <entry/>
88     </row>
90     <row>
91       <entry>
92         <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://www.open-std.org/JTC1/sc22/WG21/docs/papers/2012/n3462.html">
93           N3462
94         </link>
95       </entry>
96       <entry><code>std::result_of</code> and SFINAE</entry>
97       <entry>Y</entry>
98       <entry/>
99     </row>
101     <row>
102       <entry>
103         <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://www.open-std.org/JTC1/sc22/WG21/docs/papers/2013/n3545.pdf">
104           N3545
105         </link>
106       </entry>
107       <entry>An Incremental Improvement to <code>integral_constant</code></entry>
108       <entry>Y</entry>
109       <entry/>
110     </row>
112     <row>
113       <entry>
114         <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://www.open-std.org/JTC1/sc22/WG21/docs/papers/2013/n3642.pdf">
115           N3642
116         </link>
117       </entry>
118       <entry>User-defined Literals for Standard Library Types</entry>
119       <entry>Y</entry>
120       <entry/>
121     </row>
123     <row>
124       <entry>
125         <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://www.open-std.org/JTC1/sc22/WG21/docs/papers/2013/n3671.html">
126           N3671
127         </link>
128       </entry>
129       <entry>Making non-modifying sequence operations more robust</entry>
130       <entry>Y</entry>
131       <entry/>
132     </row>
134     <row>
135       <entry>
136         <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://www.open-std.org/JTC1/sc22/WG21/docs/papers/2013/n3654.html">
137           N3654
138         </link>
139       </entry>
140       <entry>Quoted Strings Library Proposal</entry>
141       <entry>Y</entry>
142       <entry/>
143     </row>
146     <row>
147       <entry>
148         <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://www.open-std.org/JTC1/sc22/WG21/docs/papers/2012/n3469.html">
149           N3469
150         </link>
151       </entry>
152       <entry>Constexpr Library Additions: chrono</entry>
153       <entry>Y</entry>
154       <entry/>
155     </row>
157     <row>
158       <entry>
159         <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://www.open-std.org/JTC1/sc22/WG21/docs/papers/2012/n3470.html">
160           N3470
161         </link>
162       </entry>
163       <entry>Constexpr Library Additions: containers</entry>
164       <entry>Y</entry>
165       <entry/>
166     </row>
168     <row>
169       <entry>
170         <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://www.open-std.org/JTC1/sc22/WG21/docs/papers/2012/n3471.html">
171           N3471
172         </link>
173       </entry>
174       <entry>Constexpr Library Additions: utilities</entry>
175       <entry>Y</entry>
176       <entry/>
177     </row>
180     <row>
181       <entry>
182         <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://www.open-std.org/JTC1/sc22/WG21/docs/papers/2013/n3658.html">
183           N3658
184         </link>
185       </entry>
186       <entry>Compile-time integer sequences</entry>
187       <entry>Y</entry>
188       <entry/>
189     </row>
191     <row>
192       <entry>
193         <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://www.open-std.org/JTC1/sc22/WG21/docs/papers/2013/n3659.html">
194           N3659
195         </link>
196       </entry>
197       <entry>Shared Locking in C++</entry>
198       <entry>Y</entry>
199       <entry>Need tests</entry>
200     </row>
203     <row>
204       <entry>
205         <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://www.open-std.org/JTC1/sc22/WG21/docs/papers/2012/n3421.htm">
206           N3421
207         </link>
208       </entry>
209       <entry>Making Operator Functors greater&lt;&gt;</entry>
210       <entry>Y</entry>
211       <entry/>
212     </row>
214     <row>
215       <?dbhtml bgcolor="#C8C8B0" ?>
216       <entry>
217         <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://www.open-std.org/JTC1/sc22/WG21/docs/papers/2013/n3657.htm">
218           N3657
219         </link>
220       </entry>
221       <entry>Adding heterogeneous comparison lookup to associative containers</entry>
222       <entry>WIP</entry>
223       <entry/>
224     </row>
226     <row>
227       <entry>
228         <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://www.open-std.org/JTC1/sc22/WG21/docs/papers/2013/n3655.pdf">
229           N3655
230         </link>
231       </entry>
232       <entry>TransformationTraits Redux</entry>
233       <entry>Y</entry>
234       <entry/>
235     </row>
237     <row>
238       <?dbhtml bgcolor="#C8B0B0" ?>
239       <entry>
240         <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://www.open-std.org/JTC1/sc22/WG21/docs/papers/2013/n3644.pdf">
241           N3644
242         </link>
243       </entry>
244       <entry>Null Forward Iterators</entry>
245       <entry>N</entry>
246       <entry/>
247     </row>
249   </tbody>
250 </tgroup>
251 </table>
254 <table frame="all" xml:id="table.ts_status">
255 <title>C++ Technical Specifications Implementation Status</title>
257 <tgroup cols="4" align="left" colsep="0" rowsep="1">
258 <colspec colname="c1"/>
259 <colspec colname="c2"/>
260 <colspec colname="c3"/>
261 <colspec colname="c4"/>
262   <thead>
263     <row>
264       <entry>Paper</entry>
265       <entry>Title</entry>
266       <entry>Status</entry>
267       <entry>Comments</entry>
268     </row>
269   </thead>
271   <tbody>
273     <row>
274       <?dbhtml bgcolor="#C8B0B0" ?>
275       <entry>
276         <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://www.open-std.org/JTC1/sc22/WG21/docs/papers/2013/n3662.html">
277           N3662
278         </link>
279       </entry>
280       <entry>C++ Dynamic Arrays</entry>
281       <entry>N</entry>
282       <entry>Array Extensions TS</entry>
283     </row>
285     <row>
286       <?dbhtml bgcolor="#C8B0B0" ?>
287       <entry>
288         <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://www.open-std.org/JTC1/SC22/WG21/docs/papers/2013/n3783.pdf">
289           N3783
290         </link>
291       </entry>
292       <entry>Network byte order conversion</entry>
293       <entry>N</entry>
294       <entry>Library Fundamentals TS</entry>
295     </row>
297     <row>
298       <entry>
299         <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://www.open-std.org/JTC1/SC22/WG21/docs/papers/2013/n3793.html">
300           N3793
301         </link>
302       </entry>
303       <entry>A proposal to add a utility class to represent optional objects</entry>
304       <entry>Y</entry>
305       <entry>Library Fundamentals TS</entry>
306     </row>
308     <row>
309       <entry>
310         <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://www.open-std.org/JTC1/SC22/WG21/docs/papers/2013/n3804.html">
311           N3804
312         </link>
313       </entry>
314       <entry>Any library proposal</entry>
315       <entry>Y</entry>
316       <entry>Library Fundamentals TS</entry>
317     </row>
319     <row>
320       <?dbhtml bgcolor="#C8B0B0" ?>
321       <entry>
322         <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://www.open-std.org/JTC1/SC22/WG21/docs/papers/2014/n3866.html">
323           N3866
324         </link>
325       </entry>
326       <entry>Invocation type traits, but dropping function_call_operator.</entry>
327       <entry>N</entry>
328       <entry>Library Fundamentals TS</entry>
329     </row>
331     <row>
332       <entry>
333         <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="">
334           N3905
335         </link>
336       </entry>
337       <entry>Faster string searching (Boyer-Moore et al.)</entry>
338       <entry>Y</entry>
339       <entry>Library Fundamentals TS</entry>
340     </row>
342     <row>
343       <entry>
344         <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2014/n3915.pdf">
345           N3915
346         </link>
347       </entry>
348       <entry>apply() call a function with arguments from a tuple</entry>
349       <entry>Y</entry>
350       <entry>Library Fundamentals TS</entry>
351     </row>
353     <row>
354       <?dbhtml bgcolor="#C8B0B0" ?>
355       <entry>
356         <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2014/n3916.pdf">
357           N3916
358         </link>
359       </entry>
360       <entry>Polymorphic memory resources</entry>
361       <entry>N</entry>
362       <entry>Library Fundamentals TS</entry>
363     </row>
365     <row>
366       <?dbhtml bgcolor="#C8B0B0" ?>
367       <entry>
368         <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2014/n3920.html">
369           N3920
370         </link>
371       </entry>
372       <entry>Extending shared_ptr to support arrays</entry>
373       <entry>N</entry>
374       <entry>Library Fundamentals TS</entry>
375     </row>
377     <row>
378       <entry>
379         <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2014/n3921.html">
380           N3921
381         </link>
382       </entry>
383       <entry><code>string_view</code>: a non-owning reference to a string</entry>
384       <entry>Y</entry>
385       <entry>Library Fundamentals TS</entry>
386     </row>
388     <row>
389       <entry>
390         <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2014/n3925.pdf">
391           N3925
392         </link>
393       </entry>
394       <entry>A sample proposal</entry>
395       <entry>Y</entry>
396       <entry>Library Fundamentals TS</entry>
397     </row>
399     <row>
400       <?dbhtml bgcolor="#C8C8B0" ?>
401       <entry>
402         <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2014/n3932.htm">
403           N3932
404         </link>
405       </entry>
406       <entry>Variable Templates For Type Traits</entry>
407       <entry>Partial</entry>
408       <entry>Library Fundamentals TS</entry>
409     </row>
411     <row>
412       <?dbhtml bgcolor="#C8C8B0" ?>
413       <entry>
414         <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2014/n3932.htm">
415           N3940
416         </link>
417       </entry>
418       <entry>File System</entry>
419       <entry>WIP</entry>
420       <entry></entry>
421     </row>
424   </tbody>
425 </tgroup>
426 </table>
428 </section>