1 <section xmlns="http://docbook.org/ns/docbook" version="5.0"
2 xml:id="status.iso.2011" xreflabel="Status C++ 2011">
3 <?dbhtml filename="status_iso_cxx2011.html"?>
5 <info><title>C++ 2011</title>
17 This table is based on the table of contents of ISO/IEC
18 JTC1 SC22 WG21 Doc No: N3290 Date: 2011-04-11
19 Final Draft International Standard, Standard for Programming Language C++
23 In this implementation <literal>-std=gnu++11</literal> or
24 <literal>-std=c++11</literal> flags must be used to enable language
26 features. See <link linkend="manual.intro.using.flags">dialect</link>
27 options. The pre-defined symbol
28 <constant>__GXX_EXPERIMENTAL_CXX0X__</constant> is used to check for the
29 presence of the required flag.
33 This page describes the C++11 support in mainline GCC SVN, not in any
37 <!-- Status is Yes or No, Broken/Partial-->
42 <?dbhtml bgcolor="#C8B0B0" ?>
44 <?dbhtml bgcolor="#B0B0B0" ?>
47 <title>C++ 2011 Implementation Status</title>
49 <tgroup cols="4" align="left" colsep="0" rowsep="1">
50 <colspec colname="c1"/>
51 <colspec colname="c2"/>
52 <colspec colname="c3"/>
53 <colspec colname="c4"/>
56 <entry>Section</entry>
57 <entry>Description</entry>
59 <entry>Comments</entry>
67 <emphasis>18</emphasis>
69 <entry namest="c2" nameend="c4" align="left">
70 <emphasis>Language support</emphasis>
76 <entry>General</entry>
81 <?dbhtml bgcolor="#B0B0B0" ?>
84 <entry>Partial</entry>
85 <entry>Missing offsetof, max_align_t</entry>
89 <entry>Implementation properties</entry>
96 <entry>Numeric Limits</entry>
101 <entry>18.3.2.3</entry>
102 <entry>Class template <code>numeric_limits</code></entry>
107 <entry>18.3.2.4</entry>
108 <entry><code>numeric_limits</code> members</entry>
113 <?dbhtml bgcolor="#C8B0B0" ?>
114 <entry>18.3.2.5</entry>
115 <entry><code>float_round_style</code></entry>
120 <?dbhtml bgcolor="#C8B0B0" ?>
121 <entry>18.3.2.6</entry>
122 <entry><code>float_denorm_style</code></entry>
127 <entry>18.3.2.7</entry>
128 <entry><code>numeric_limits</code> specializations</entry>
134 <entry>18.3.3</entry>
135 <entry>C Library</entry>
142 <entry>Integer types</entry>
147 <entry>18.4.1</entry>
148 <entry>Header <code><cstdint></code> synopsis</entry>
153 <?dbhtml bgcolor="#B0B0B0" ?>
155 <entry>Start and termination</entry>
156 <entry>Partial</entry>
157 <entry>C library dependency for quick_exit, at_quick_exit</entry>
161 <entry>Dynamic memory management</entry>
167 <entry>Type identification</entry>
172 <entry>18.7.1</entry>
173 <entry>Class type_info</entry>
178 <entry>18.7.2</entry>
179 <entry>Class bad_cast</entry>
184 <entry>18.7.3</entry>
185 <entry>Class bad_typeid</entry>
191 <entry>Exception handling</entry>
196 <entry>18.8.1</entry>
197 <entry>Class exception</entry>
202 <entry>18.8.2</entry>
203 <entry>Class bad_exception</entry>
208 <entry>18.8.3</entry>
209 <entry>Abnormal termination</entry>
214 <entry>18.8.4</entry>
215 <entry><code>uncaught_exception</code></entry>
220 <entry>18.8.5</entry>
221 <entry>Exception Propagation</entry>
226 <entry>18.8.6</entry>
227 <entry><code>nested_exception</code></entry>
233 <entry>Initializer lists</entry>
238 <entry>18.9.1</entry>
239 <entry>Initializer list constructors</entry>
244 <entry>18.9.2</entry>
245 <entry>Initializer list access</entry>
250 <entry>18.9.3</entry>
251 <entry>Initializer list range access</entry>
256 <?dbhtml bgcolor="#B0B0B0" ?>
258 <entry>Other runtime support</entry>
259 <entry>Partial</entry>
260 <entry>Missing <filename class="headerfile"><cstdalign></filename> </entry>
264 <emphasis>19</emphasis>
266 <entry namest="c2" nameend="c4" align="left">
267 <emphasis>Diagnostics</emphasis>
272 <entry>General</entry>
278 <entry>Exception classes</entry>
284 <entry>Assertions</entry>
290 <entry>Error numbers</entry>
296 <entry>System error support</entry>
301 <entry>19.5.1</entry>
302 <entry>Class <code>error_category</code></entry>
307 <entry>19.5.2</entry>
308 <entry>Class <code>error_code</code></entry>
313 <entry>19.5.3</entry>
314 <entry>Class <code>error_condition</code></entry>
319 <entry>19.5.4</entry>
320 <entry>Comparison operators</entry>
325 <entry>19.5.5</entry>
326 <entry>Class <code>system_error</code></entry>
332 <emphasis>20</emphasis>
334 <entry namest="c2" nameend="c4" align="left">
335 <emphasis>General utilities</emphasis>
340 <entry>General</entry>
346 <entry>Utility components</entry>
351 <entry>20.2.1</entry>
352 <entry>Operators</entry>
357 <entry>20.2.2</entry>
363 <entry>20.2.3</entry>
364 <entry><code>forward</code> and <code>move</code> helpers</entry>
369 <entry>20.2.4</entry>
370 <entry>Function template <code>declval</code></entry>
381 <entry>20.3.1</entry>
382 <entry>In general</entry>
387 <entry>20.3.2</entry>
388 <entry>Class template <code>pair</code></entry>
393 <entry>20.3.3</entry>
394 <entry>Specialized algorithms</entry>
399 <entry>20.3.4</entry>
400 <entry>Tuple-like access to <code>pair</code></entry>
405 <entry>20.3.5</entry>
406 <entry>Piecewise construction</entry>
412 <entry>Tuples</entry>
417 <entry>20.4.1</entry>
418 <entry>In general</entry>
423 <entry>20.4.2</entry>
424 <entry>Class template <code>tuple</code></entry>
429 <entry>20.4.2.1</entry>
430 <entry>Construction</entry>
435 <entry>20.4.2.2</entry>
436 <entry>Assignment</entry>
441 <entry>20.4.2.3</entry>
447 <entry>20.4.2.4</entry>
448 <entry>Tuple creation functions</entry>
453 <entry>20.4.2.5</entry>
454 <entry>Tuple helper classes</entry>
459 <entry>20.4.2.6</entry>
460 <entry>Element access</entry>
465 <entry>20.4.2.7</entry>
466 <entry>Relational operators</entry>
471 <entry>20.4.2.8</entry>
472 <entry>Tuple traits</entry>
477 <entry>20.4.2.9</entry>
478 <entry>Tuple specialized algorithms</entry>
484 <entry>Class template <code>bitset</code></entry>
489 <entry>20.5.1</entry>
490 <entry><code>bitset</code> constructors</entry>
495 <entry>20.5.2</entry>
496 <entry><code>bitset</code> members</entry>
501 <entry>20.5.3</entry>
502 <entry><code>bitset</code> hash support</entry>
507 <entry>20.5.4</entry>
508 <entry><code>bitset</code> operators</entry>
514 <entry>Memory</entry>
519 <entry>20.6.1</entry>
520 <entry>In general</entry>
525 <entry>20.6.2</entry>
526 <entry>Header <code><memory></code> synopsis</entry>
531 <?dbhtml bgcolor="#B0B0B0" ?>
532 <entry>20.6.3</entry>
533 <entry>Pointer traits</entry>
534 <entry>Partial</entry>
535 <entry>Missing rebind</entry>
538 <?dbhtml bgcolor="#B0B0B0" ?>
539 <entry>20.6.4</entry>
540 <entry>Pointer safety</entry>
541 <entry>Partial</entry>
545 <?dbhtml bgcolor="#C8B0B0" ?>
546 <entry>20.6.5</entry>
552 <entry>20.6.6</entry>
553 <entry>Allocator argument tag</entry>
558 <entry>20.6.7</entry>
559 <entry><code>uses_allocator</code></entry>
564 <?dbhtml bgcolor="#B0B0B0" ?>
565 <entry>20.6.8</entry>
566 <entry>Allocator traits</entry>
567 <entry>Partial</entry>
568 <entry>Missing rebind_alloc and rebind_traits</entry>
571 <entry>20.6.9</entry>
572 <entry>The default allocator</entry>
577 <entry>20.6.10</entry>
578 <entry>Raw storage iterator</entry>
583 <entry>20.6.11</entry>
584 <entry>Temporary buffers</entry>
589 <entry>20.6.12</entry>
590 <entry>Specialized algorithms</entry>
595 <entry>20.6.12.1</entry>
596 <entry><code>addressof</code></entry>
601 <entry>20.6.12.2</entry>
602 <entry><code>uninitialized_copy</code></entry>
607 <entry>20.6.12.3</entry>
608 <entry><code>uninitialized_fill</code></entry>
613 <entry>20.6.12.4</entry>
614 <entry><code>uninitialized_fill_n</code></entry>
619 <entry>20.6.13</entry>
620 <entry>C library</entry>
626 <entry>Smart pointers</entry>
631 <entry>20.7.1</entry>
632 <entry>Class template <code>unique_ptr</code></entry>
637 <entry>20.7.2</entry>
638 <entry>Shared-ownership pointers</entry>
643 <entry>20.7.2.1</entry>
644 <entry>Class <code>bad_weak_ptr</code></entry>
649 <entry>20.7.2.2</entry>
650 <entry>Class template <code>shared_ptr</code></entry>
655 <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://www.boost.org/libs/smart_ptr/shared_ptr.htm">boost::shared_ptr</link>.
660 <entry>20.7.2.3</entry>
661 <entry>Class template <code>weak_ptr</code></entry>
666 <entry>20.7.2.4</entry>
667 <entry>Class template <code>emable_shared_from_this</code></entry>
672 <?dbhtml bgcolor="#B0B0B0" ?>
673 <entry>20.7.2.5</entry>
674 <entry><code>shared_ptr</code> atomic access</entry>
675 <entry>Partial</entry>
679 <entry>20.7.2.6</entry>
680 <entry>Smart pointer hash support</entry>
686 <entry>Function objects</entry>
691 <entry>20.8.1</entry>
692 <entry>Definitions</entry>
697 <entry>20.8.2</entry>
698 <entry>Requirements</entry>
703 <entry>20.8.3</entry>
704 <entry>Class template <code>reference_wrapper</code></entry>
709 <entry>20.8.4</entry>
710 <entry>Arithmetic operation</entry>
715 <entry>20.8.5</entry>
716 <entry>Comparisons</entry>
721 <entry>20.8.6</entry>
722 <entry>Logical operations</entry>
727 <entry>20.8.7</entry>
728 <entry>Bitwise operations</entry>
733 <entry>20.8.8</entry>
734 <entry>Negators</entry>
739 <entry>20.8.9</entry>
740 <entry>Function template <code>bind</code></entry>
745 <?dbhtml bgcolor="#B0B0B0" ?>
746 <entry>20.8.10</entry>
747 <entry>Function template <code>mem_fn</code></entry>
748 <entry>Partial</entry>
749 <entry>Missing overloads for reference-qualified member functions</entry>
752 <entry>20.8.11</entry>
753 <entry>Polymorphic function wrappers</entry>
758 <entry>20.8.11.1</entry>
759 <entry>Class <code>bad_function_call</code></entry>
764 <?dbhtml bgcolor="#B0B0B0" ?>
765 <entry>20.8.11.2</entry>
766 <entry>Class template <code>function</code></entry>
767 <entry>Partial</entry>
768 <entry>Missing allocator support</entry>
771 <entry>20.8.12</entry>
772 <entry>Class template <code>hash</code></entry>
778 <entry>Metaprogramming and type traits</entry>
783 <entry>20.9.1</entry>
784 <entry>Requirements</entry>
789 <entry>20.9.2</entry>
790 <entry>Header <code><type_traits></code> synopsis</entry>
795 <entry>20.9.3</entry>
796 <entry>Helper classes</entry>
801 <entry>20.9.4</entry>
802 <entry>Unary Type Traits</entry>
807 <entry>20.9.4.1</entry>
808 <entry>Primary type categories</entry>
813 <entry>20.9.4.2</entry>
814 <entry>Composite type traits</entry>
819 <?dbhtml bgcolor="#B0B0B0" ?>
820 <entry>20.9.4.3</entry>
821 <entry>Type properties</entry>
822 <entry>Partial</entry>
823 <entry>Missing is_trivially_copyable,
824 is_assignable, is_copy_assignable, is_move_assignable,
825 is_trivially_constructible, is_trivially_default_constructible,
826 is_trivially_copy_constructible, is_trivially_move_constructible,
827 is_trivially_assignable, is_trivially_default_assignable,
828 is_trivially_copy_assignable, is_trivially_move_assignable,
829 is_trivially_destructible,
830 is_nothrow_assignable,
831 is_nothrow_copy_assignable, is_nothrow_move_assignable,
832 is_nothrow_destructible
836 <entry>20.9.5</entry>
837 <entry>Type property queries</entry>
842 <entry>20.9.6</entry>
843 <entry>Relationships between types</entry>
848 <entry>20.9.7</entry>
849 <entry>Transformations between types</entry>
854 <entry>20.9.7.1</entry>
855 <entry>Const-volatile modifications</entry>
860 <entry>20.9.7.2</entry>
861 <entry>Reference modifications</entry>
866 <entry>20.9.7.3</entry>
867 <entry>Sign modifications</entry>
872 <entry>20.9.7.4</entry>
873 <entry>Array modifications</entry>
878 <entry>20.9.7.5</entry>
879 <entry>Pointer modifications</entry>
884 <entry>20.9.7.6</entry>
885 <entry>Other transformations</entry>
891 <entry>Compile-time rational arithmetic</entry>
896 <entry>20.10.1</entry>
897 <entry>In general</entry>
902 <entry>20.10.2</entry>
903 <entry>Header <code><ratio></code> synopsis</entry>
908 <entry>20.10.3</entry>
909 <entry>Class template <code>ratio</code></entry>
914 <entry>20.10.4</entry>
915 <entry>Arithmetic on <code>ratio</code>s</entry>
920 <entry>20.10.5</entry>
921 <entry>Comparison of <code>ratio</code>s</entry>
926 <entry>20.10.6</entry>
927 <entry>SI types for <code>ratio</code></entry>
933 <entry>Time utilities</entry>
938 <entry>20.11.3</entry>
939 <entry>Clock requirements</entry>
944 <entry>20.11.4</entry>
945 <entry>Time-related traits</entry>
950 <entry>20.11.4.1</entry>
951 <entry><code>treat_as_floating_point</code></entry>
956 <entry>20.11.4.2</entry>
957 <entry><code>duration_values</code></entry>
962 <entry>20.11.4.3</entry>
963 <entry>Specializations of <code>common_type</code></entry>
968 <?dbhtml bgcolor="#B0B0B0" ?>
969 <entry>20.11.5</entry>
970 <entry>Class template <code>duration</code></entry>
971 <entry>Partial</entry>
972 <entry>Missing constexpr for non-member arithmetic operations</entry>
975 <entry>20.11.6</entry>
976 <entry>Class template <code>time_point</code></entry>
981 <entry>20.11.7</entry>
982 <entry>Clocks</entry>
987 <entry>20.11.7.1</entry>
988 <entry>Class <code>system_clock</code></entry>
993 <?dbhtml bgcolor="#C8B0B0" ?>
994 <entry>20.11.7.2</entry>
995 <entry>Class <code>steady_clock</code></entry>
997 <entry>Support old <code>monotonic_clock</code> spec instead</entry>
1000 <entry>20.11.7.3</entry>
1001 <entry>Class <code>high_resolution_clock</code></entry>
1006 <entry>20.11.8</entry>
1007 <entry>Date and time functions</entry>
1012 <?dbhtml bgcolor="#B0B0B0" ?>
1013 <entry>20.12</entry>
1014 <entry>Scoped allocator adaptor</entry>
1015 <entry>Partial</entry>
1019 <entry>20.12.1</entry>
1020 <entry>Header <code><scoped_allocator></code> synopsis</entry>
1025 <entry>20.12.2</entry>
1026 <entry>Scoped allocator adaptor member types</entry>
1031 <entry>20.12.3</entry>
1032 <entry>Scoped allocator adaptor constructors</entry>
1037 <?dbhtml bgcolor="#B0B0B0" ?>
1038 <entry>20.12.4</entry>
1039 <entry>Scoped allocator adaptor members</entry>
1040 <entry>Partial</entry>
1044 <entry>20.12.5</entry>
1045 <entry>Scoped allocator operators</entry>
1050 <entry>20.13</entry>
1051 <entry>Class <code>type_index</code></entry>
1057 <emphasis>21</emphasis>
1059 <entry namest="c2" nameend="c4" align="left">
1060 <emphasis>Strings</emphasis>
1065 <entry>General</entry>
1071 <entry>Character traits</entry>
1076 <entry>21.2.1</entry>
1077 <entry>Character traits requirements</entry>
1082 <entry>21.2.2</entry>
1083 <entry>traits typedefs</entry>
1088 <entry>21.2.3</entry>
1089 <entry><code>char_traits</code> specializations</entry>
1094 <?dbhtml bgcolor="#B0B0B0" ?>
1095 <entry>21.2.3.1</entry>
1096 <entry>struct <code>char_traits<char></code></entry>
1097 <entry>Partial</entry>
1098 <entry>Missing constexpr</entry>
1101 <?dbhtml bgcolor="#B0B0B0" ?>
1102 <entry>21.2.3.2</entry>
1103 <entry>struct <code>char_traits<char16_t></code></entry>
1104 <entry>Partial</entry>
1105 <entry>Missing constexpr</entry>
1108 <entry>21.2.3.3</entry>
1109 <entry>struct <code>char_traits<char32_t></code></entry>
1114 <entry>21.2.3.4</entry>
1115 <entry>struct <code>char_traits<wchar_t></code></entry>
1121 <entry>String classes</entry>
1126 <?dbhtml bgcolor="#B0B0B0" ?>
1128 <entry>Class template <code>basic_string</code></entry>
1129 <entry>Partial</entry>
1130 <entry>Missing pop_back</entry>
1134 <entry>Numeric Conversions</entry>
1140 <entry>Hash support</entry>
1145 <?dbhtml bgcolor="#B0B0B0" ?>
1147 <entry>Null-terminated sequence utilities</entry>
1148 <entry>Partial</entry>
1149 <entry>C library dependency.
1150 Missing <filename class="headerfile"><cuchar></filename>
1155 <emphasis>22</emphasis>
1157 <entry namest="c2" nameend="c4" align="left">
1158 <emphasis>Localization</emphasis>
1163 <entry>General</entry>
1169 <entry>Header <code><locale></code> synopsis</entry>
1175 <entry>Locales</entry>
1180 <entry>22.3.1</entry>
1181 <entry>Class <code>locale</code></entry>
1186 <entry>22.3.2</entry>
1187 <entry><code>locale</code> globals</entry>
1192 <entry>22.3.3</entry>
1193 <entry>Convenience interfaces</entry>
1198 <entry>22.3.3.1</entry>
1199 <entry>Character classification</entry>
1204 <entry>22.3.3.2</entry>
1205 <entry>Conversions</entry>
1210 <entry>22.3.3.2.1</entry>
1211 <entry>Character conversions</entry>
1216 <?dbhtml bgcolor="#C8B0B0" ?>
1217 <entry>22.3.3.2.2</entry>
1218 <entry><code>string</code> conversions</entry>
1223 <?dbhtml bgcolor="#C8B0B0" ?>
1224 <entry>22.3.3.2.3</entry>
1225 <entry>Buffer conversions</entry>
1231 <entry>Standard <code>locale</code> categories</entry>
1236 <entry>22.4.1</entry>
1237 <entry>The <code>ctype</code> category</entry>
1242 <entry>22.4.2</entry>
1243 <entry>The numeric category</entry>
1248 <entry>22.4.2.1</entry>
1249 <entry><code>num_get</code></entry>
1254 <entry>22.4.2.2</entry>
1255 <entry><code>num_put</code></entry>
1260 <entry>22.4.3</entry>
1261 <entry>The numeric punctuation facet</entry>
1266 <entry>22.4.4</entry>
1267 <entry>The collate category</entry>
1272 <entry>22.4.5</entry>
1273 <entry>The time category</entry>
1278 <entry>22.4.5.1</entry>
1279 <entry>Class template <code>time_get</code></entry>
1284 <entry>22.4.5.2</entry>
1285 <entry>Class template <code>time_get_byname</code></entry>
1290 <entry>22.4.5.3</entry>
1291 <entry>Class template <code>time_put</code></entry>
1296 <entry>22.4.5.3</entry>
1297 <entry>Class template <code>time_put_byname</code></entry>
1302 <entry>22.4.6</entry>
1303 <entry>The monetary category</entry>
1308 <entry>22.4.6.1</entry>
1309 <entry>Class template <code>money_get</code></entry>
1314 <entry>22.4.6.2</entry>
1315 <entry>Class template <code>money_put</code></entry>
1320 <entry>22.4.6.3</entry>
1321 <entry>Class template <code>money_punct</code></entry>
1326 <entry>22.4.6.4</entry>
1327 <entry>Class template <code>money_punct_byname</code></entry>
1332 <entry>22.4.7</entry>
1333 <entry>The message retrieval category</entry>
1338 <entry>22.4.8</entry>
1339 <entry>Program-defined facets</entry>
1344 <?dbhtml bgcolor="#C8B0B0" ?>
1346 <entry>Standard code conversion facets</entry>
1352 <entry>C Library Locales</entry>
1358 <emphasis>23</emphasis>
1360 <entry namest="c2" nameend="c4" align="left">
1361 <emphasis>Containers</emphasis>
1366 <entry>General</entry>
1372 <entry>Container requirements</entry>
1377 <entry>23.2.1</entry>
1378 <entry>General container requirements</entry>
1383 <entry>23.2.2</entry>
1384 <entry>Container data races</entry>
1389 <entry>23.2.3</entry>
1390 <entry>Sequence containers</entry>
1395 <?dbhtml bgcolor="#B0B0B0" ?>
1396 <entry>23.2.4</entry>
1397 <entry>Associative containers</entry>
1398 <entry>Partial</entry>
1399 <entry>Missing emplace members</entry>
1402 <?dbhtml bgcolor="#B0B0B0" ?>
1403 <entry>23.2.5</entry>
1404 <entry>Unordered associative containers</entry>
1405 <entry>Partial</entry>
1406 <entry>Missing emplace members</entry>
1410 <entry>Sequence containers</entry>
1415 <entry>23.3.2</entry>
1416 <entry>Class template <code>array</code></entry>
1421 <entry>23.3.3</entry>
1422 <entry>Class template <code>deque</code></entry>
1427 <entry>23.3.4</entry>
1428 <entry>Class template <code>forward_list</code></entry>
1433 <entry>23.3.5</entry>
1434 <entry>Class template <code>list</code></entry>
1439 <entry>23.3.6</entry>
1440 <entry>Class template <code>vector</code></entry>
1445 <entry>23.3.7</entry>
1446 <entry>Class <code>vector<bool></code></entry>
1452 <entry>Associative containers</entry>
1457 <entry>23.4.4</entry>
1458 <entry>Class template <code>map</code></entry>
1463 <entry>23.4.5</entry>
1464 <entry>Class template <code>multimap</code></entry>
1469 <entry>23.4.6</entry>
1470 <entry>Class template <code>set</code></entry>
1475 <entry>23.4.7</entry>
1476 <entry>Class template <code>multiset</code></entry>
1482 <entry>Unordered associative containers</entry>
1487 <entry>23.5.4</entry>
1488 <entry>Class template <code>unordered_map</code></entry>
1493 <entry>23.5.5</entry>
1494 <entry>Class template <code>unordered_multimap</code></entry>
1499 <entry>23.5.6</entry>
1500 <entry>Class template <code>unordered_set</code></entry>
1505 <entry>23.5.7</entry>
1506 <entry>Class template <code>unordered_multiset</code></entry>
1512 <entry>Container adaptors</entry>
1517 <entry>23.6.1</entry>
1518 <entry>Class template <code>queue</code></entry>
1523 <entry>23.6.2</entry>
1524 <entry>Class template <code>priority_queue</code></entry>
1529 <entry>23.6.3</entry>
1530 <entry>Class template <code>stack</code></entry>
1536 <emphasis>24</emphasis>
1538 <entry namest="c2" nameend="c4" align="left">
1539 <emphasis>Iterators</emphasis>
1544 <entry>General</entry>
1550 <entry>Iterator requirements</entry>
1556 <entry>Header <code><iterator></code> synopsis</entry>
1562 <entry>Iterator primitives</entry>
1568 <entry>Iterator adaptors</entry>
1573 <entry>24.5.1</entry>
1574 <entry>Reverse iterators</entry>
1579 <entry>24.5.2</entry>
1580 <entry>Insert iterators</entry>
1585 <entry>24.5.3</entry>
1586 <entry>Move iterators</entry>
1592 <entry>Stream iterators</entry>
1597 <entry>24.6.1</entry>
1598 <entry>Class template <code>istream_iterator</code></entry>
1603 <entry>24.6.2</entry>
1604 <entry>Class template <code>ostream_iterator</code></entry>
1609 <entry>24.6.3</entry>
1610 <entry>Class template <code>istreambuf_iterator</code></entry>
1615 <entry>24.6.4</entry>
1616 <entry>Class template <code>ostreambuf_iterator</code></entry>
1621 <entry>24.6.5</entry>
1622 <entry>range access</entry>
1628 <emphasis>25</emphasis>
1630 <entry namest="c2" nameend="c4" align="left">
1631 <emphasis>Algorithms</emphasis>
1636 <entry>General</entry>
1642 <entry>Non-modifying sequence operations</entry>
1648 <entry>Mutating sequence operations</entry>
1654 <entry>Sorting and related operations</entry>
1660 <entry>C library algorithms</entry>
1666 <emphasis>26</emphasis>
1668 <entry namest="c2" nameend="c4" align="left">
1669 <emphasis>Numerics</emphasis>
1674 <entry>General</entry>
1680 <entry>Numeric type requirements</entry>
1686 <entry>The floating-point environment</entry>
1692 <entry>Complex numbers</entry>
1693 <entry>Partial</entry>
1694 <entry>Missing constexpr</entry>
1698 <entry>Random number generation</entry>
1703 <entry>26.5.1</entry>
1704 <entry>Requirements</entry>
1709 <entry>26.5.2</entry>
1710 <entry>Header <code><random></code> synopsis</entry>
1715 <entry>26.5.3</entry>
1716 <entry>Random number engine class templates</entry>
1721 <entry>26.5.3.1</entry>
1722 <entry>Class template <code>linear_congruential_engine</code></entry>
1724 <entry>Missing constexpr</entry>
1727 <entry>26.5.3.2</entry>
1728 <entry>Class template <code>mersenne_twister_engine</code></entry>
1730 <entry>Missing constexpr</entry>
1733 <entry>26.5.3.3</entry>
1734 <entry>Class template <code>subtract_with_carry_engine</code></entry>
1736 <entry>Missing constexpr</entry>
1739 <entry>26.5.4</entry>
1740 <entry>Random number engine adaptor class templates</entry>
1745 <entry>26.5.4.2</entry>
1746 <entry>Class template <code>discard_block_engine</code></entry>
1748 <entry>Missing constexpr</entry>
1751 <entry>26.5.4.3</entry>
1752 <entry>Class template <code>independent_bits_engine</code></entry>
1754 <entry>Missing constexpr</entry>
1757 <entry>26.5.4.4</entry>
1758 <entry>Class template <code>shuffle_order_engine</code></entry>
1760 <entry>Missing constexpr</entry>
1763 <entry>26.5.5</entry>
1764 <entry>Engines and engine adaptors with predefined parameters</entry>
1769 <entry>26.5.6</entry>
1770 <entry>Class <code>random_device</code></entry>
1772 <entry>Missing constexpr</entry>
1775 <entry>26.5.7</entry>
1776 <entry>Utilities</entry>
1781 <entry>26.5.7.1</entry>
1782 <entry>Class <code>seed_seq</code></entry>
1787 <entry>26.5.7.2</entry>
1788 <entry>Function template <code>generate_canonical</code></entry>
1793 <entry>26.5.8</entry>
1794 <entry>Random number distribution class templates</entry>
1799 <entry>26.5.8.2</entry>
1800 <entry>Uniform distributions</entry>
1805 <entry>26.5.8.2.1</entry>
1806 <entry>Class template <code>uniform_int_distribution</code></entry>
1811 <entry>26.5.8.2.2</entry>
1812 <entry>Class template <code>uniform_real_distribution</code></entry>
1817 <entry>26.5.8.3</entry>
1818 <entry>Bernoulli distributions</entry>
1823 <entry>26.5.8.3.1</entry>
1824 <entry>Class <code>bernoulli_distribution</code></entry>
1829 <entry>26.5.8.3.2</entry>
1830 <entry>Class template <code>binomial_distribution</code></entry>
1835 <entry>26.5.8.3.3</entry>
1836 <entry>Class template <code>geometric_distribution</code></entry>
1841 <entry>26.5.8.3.4</entry>
1842 <entry>Class template <code>negative_binomial_distribution</code></entry>
1847 <entry>26.5.8.4</entry>
1848 <entry>Poisson distributions</entry>
1853 <entry>26.5.8.4.1</entry>
1854 <entry>Class template <code>poisson_distribution</code></entry>
1859 <entry>26.5.8.4.2</entry>
1860 <entry>Class template <code>exponential_distribution</code></entry>
1865 <entry>26.5.8.4.3</entry>
1866 <entry>Class template <code>gamma_distribution</code></entry>
1871 <entry>26.5.8.4.4</entry>
1872 <entry>Class template <code>weibull_distribution</code></entry>
1877 <entry>26.5.8.4.5</entry>
1878 <entry>Class template <code>extreme_value_distribution</code></entry>
1883 <entry>26.5.8.5</entry>
1884 <entry>Normal distributions</entry>
1889 <entry>26.5.8.5.1</entry>
1890 <entry>Class template <code>normal_distribution</code></entry>
1895 <entry>26.5.8.5.2</entry>
1896 <entry>Class template <code>lognormal_distribution</code></entry>
1901 <entry>26.5.8.5.3</entry>
1902 <entry>Class template <code>chi_squared_distribution</code></entry>
1907 <entry>26.5.8.5.4</entry>
1908 <entry>Class template <code>cauchy_distribution</code></entry>
1913 <entry>26.5.8.5.5</entry>
1914 <entry>Class template <code>fisher_f_distribution</code></entry>
1919 <entry>26.5.8.5.6</entry>
1920 <entry>Class template <code>student_t_distribution</code></entry>
1925 <entry>26.5.8.6</entry>
1926 <entry>Sampling distributions</entry>
1931 <entry>26.5.8.6.1</entry>
1932 <entry>Class template <code>discrete_distribution</code></entry>
1937 <entry>26.5.8.6.2</entry>
1938 <entry>Class template <code>piecewise_constant_distribution</code></entry>
1943 <entry>26.5.8.6.3</entry>
1944 <entry>Class template <code>piecewise_linear_distribution</code></entry>
1950 <entry>Numeric arrays</entry>
1955 <entry>26.6.1</entry>
1956 <entry>Header <code><valarray></code> synopsis</entry>
1961 <entry>26.6.2</entry>
1962 <entry>Class template <code>valarray</code></entry>
1967 <entry>26.6.3</entry>
1968 <entry><code>valarray</code> non-member operations</entry>
1973 <entry>26.6.4</entry>
1974 <entry>Class <code>slice</code></entry>
1979 <entry>26.6.5</entry>
1980 <entry>Class template <code>slice_array</code></entry>
1985 <entry>26.6.6</entry>
1986 <entry>The <code>gslice</code> class</entry>
1991 <entry>26.6.7</entry>
1992 <entry>Class template <code>gslice_array</code></entry>
1997 <entry>26.6.8</entry>
1998 <entry>Class template <code>mask_array</code></entry>
2003 <entry>26.6.9</entry>
2004 <entry>Class template <code>indirect_array</code></entry>
2009 <entry>26.6.10</entry>
2010 <entry><code>valarray</code> range access</entry>
2016 <entry>Generalized numeric operations</entry>
2021 <entry>26.7.1</entry>
2022 <entry>Header <code><numeric></code> synopsis</entry>
2027 <entry>26.7.2</entry>
2028 <entry><code>accumulate</code></entry>
2033 <entry>26.7.3</entry>
2034 <entry><code>inner_product</code></entry>
2039 <entry>26.7.4</entry>
2040 <entry><code>partial_sum</code></entry>
2045 <entry>26.7.5</entry>
2046 <entry><code>adjacent_difference</code></entry>
2051 <entry>26.7.6</entry>
2058 <entry>C Library</entry>
2064 <emphasis>27</emphasis>
2066 <entry namest="c2" nameend="c4" align="left">
2067 <emphasis>Input/output library</emphasis>
2072 <entry>General</entry>
2078 <entry>Iostreams requirements</entry>
2083 <entry>27.2.1</entry>
2084 <entry>Imbue Limitations</entry>
2089 <entry>27.2.2</entry>
2090 <entry>Positioning Type Limitations</entry>
2095 <?dbhtml bgcolor="#B0B0B0" ?>
2096 <entry>27.2.3</entry>
2097 <entry>Thread safety</entry>
2098 <entry>Partial</entry>
2103 <entry>Forward declarations</entry>
2109 <entry>Standard iostream objects</entry>
2114 <entry>27.4.1</entry>
2115 <entry>Overview</entry>
2120 <entry>27.4.2</entry>
2121 <entry>Narrow stream objects</entry>
2126 <entry>27.4.3</entry>
2127 <entry>Wide stream objects</entry>
2132 <?dbhtml bgcolor="#B0B0B0" ?>
2134 <entry>Iostreams base classes</entry>
2135 <entry>Partial</entry>
2137 Missing move and swap operations on <code>basic_ios</code>. Missing
2138 <code>make_error_code</code> and <code>make_error_condition</code>.
2143 <entry>Stream buffers</entry>
2148 <?dbhtml bgcolor="#B0B0B0" ?>
2150 <entry>Formatting and manipulators</entry>
2151 <entry>Partial</entry>
2152 <entry>Missing move and swap operations</entry>
2155 <?dbhtml bgcolor="#B0B0B0" ?>
2157 <entry>String-based streams</entry>
2158 <entry>Partial</entry>
2159 <entry>Missing move and swap operations</entry>
2162 <?dbhtml bgcolor="#B0B0B0" ?>
2164 <entry>File-based streams</entry>
2165 <entry>Partial</entry>
2166 <entry>Missing move and swap operations</entry>
2170 <emphasis>28</emphasis>
2172 <entry namest="c2" nameend="c4" align="left">
2173 <emphasis>Regular expressions</emphasis>
2177 <?dbhtml bgcolor="#C8B0B0" ?>
2179 <entry>General</entry>
2184 <?dbhtml bgcolor="#C8B0B0" ?>
2186 <entry>Definitions</entry>
2191 <?dbhtml bgcolor="#C8B0B0" ?>
2193 <entry>Requirements</entry>
2198 <?dbhtml bgcolor="#C8B0B0" ?>
2200 <entry>Header <code><regex></code> synopsis</entry>
2206 <entry>Namespace <code>std::regex_constants</code></entry>
2212 <entry>Class <code>regex_error</code></entry>
2217 <?dbhtml bgcolor="#B0B0B0" ?>
2219 <entry>Class template <code>regex_traits</code></entry>
2220 <entry>Partial</entry>
2224 <?dbhtml bgcolor="#B0B0B0" ?>
2226 <entry>Class template <code>basic_regex</code></entry>
2227 <entry>Partial</entry>
2231 <?dbhtml bgcolor="#B0B0B0" ?>
2233 <entry>Class template <code>sub_match</code></entry>
2234 <entry>Partial</entry>
2238 <?dbhtml bgcolor="#B0B0B0" ?>
2239 <entry>28.10</entry>
2240 <entry>Class template <code>match_results</code></entry>
2241 <entry>Partial</entry>
2245 <?dbhtml bgcolor="#C8B0B0" ?>
2246 <entry>28.11</entry>
2247 <entry>Regular expression algorithms</entry>
2252 <?dbhtml bgcolor="#C8B0B0" ?>
2253 <entry>28.12</entry>
2254 <entry>Regular expression Iterators</entry>
2259 <?dbhtml bgcolor="#C8B0B0" ?>
2260 <entry>28.13</entry>
2261 <entry>Modified ECMAScript regular expression grammar</entry>
2267 <emphasis>29</emphasis>
2269 <entry namest="c2" nameend="c4" align="left">
2270 <emphasis>Atomic operations</emphasis>
2275 <entry>General</entry>
2281 <entry>Header <code><atomic></code> synopsis</entry>
2286 <?dbhtml bgcolor="#C8B0B0" ?>
2288 <entry>Order and consistency</entry>
2293 <?dbhtml bgcolor="#B0B0B0" ?>
2295 <entry>Lock-free property</entry>
2296 <entry>Partial</entry>
2297 <entry>Missing <code>ATOMIC_BOOL_LOCK_FREE</code> and
2298 <code>ATOMIC_POINTER_LOCK_FREE</code>.
2299 Based on _GLIBCXX_ATOMIC_PROPERTY
2303 <?dbhtml bgcolor="#B0B0B0" ?>
2305 <entry>Atomic types</entry>
2306 <entry>Partial</entry>
2307 <entry>Missing constexpr</entry>
2311 <entry>Operations on atomic types</entry>
2317 <entry>Flag Type and operations</entry>
2322 <?dbhtml bgcolor="#C8B0B0" ?>
2324 <entry>Fences</entry>
2330 <emphasis>30</emphasis>
2332 <entry namest="c2" nameend="c4" align="left">
2333 <emphasis>Thread support</emphasis>
2338 <entry>General</entry>
2344 <entry>Requirements</entry>
2350 <entry>Threads</entry>
2355 <?dbhtml bgcolor="#B0B0B0" ?>
2356 <entry>30.3.1</entry>
2357 <entry>Class <code>thread</code></entry>
2358 <entry>Partial</entry>
2359 <entry><code>thread::id</code> comparisons not well-defined</entry>
2362 <entry>30.3.2</entry>
2363 <entry>Namespace <code>this_thread</code></entry>
2369 <entry>Mutual exclusion</entry>
2374 <entry>30.4.1</entry>
2375 <entry>Mutex requirements</entry>
2380 <entry>30.4.1.1</entry>
2381 <entry>In general</entry>
2386 <entry>30.4.1.2</entry>
2387 <entry>Mutex types</entry>
2392 <entry>30.4.1.2.1</entry>
2393 <entry>Class <code>mutex</code></entry>
2398 <entry>30.4.1.2.2</entry>
2399 <entry>Class <code>recursive_mutex</code></entry>
2404 <entry>30.4.1.3</entry>
2405 <entry>Timed mutex types</entry>
2410 <entry>30.4.1.3.1</entry>
2411 <entry>Class <code>timed_mutex</code></entry>
2416 <entry>30.4.1.3.2</entry>
2417 <entry>Class <code>recursive_timed_mutex</code></entry>
2422 <entry>30.4.2</entry>
2423 <entry>Locks</entry>
2428 <entry>30.4.2.1</entry>
2429 <entry>Class template <code>lock_guard</code></entry>
2434 <entry>30.4.2.2</entry>
2435 <entry>Class template <code>unique_lock</code></entry>
2440 <entry>30.4.3</entry>
2441 <entry>Generic locking algorithms</entry>
2446 <entry>30.4.4</entry>
2447 <entry>Call once</entry>
2452 <entry>30.4.4.1</entry>
2453 <entry>Struct <code>once_flag</code></entry>
2458 <entry>30.4.4.2</entry>
2459 <entry>Function <code>call_once</code></entry>
2464 <?dbhtml bgcolor="#B0B0B0" ?>
2466 <entry>Condition variables</entry>
2467 <entry>Partial</entry>
2468 <entry>Missing notify_all_at_thread_exit</entry>
2471 <entry>30.5.1</entry>
2472 <entry>Class <code>condition_variable</code></entry>
2477 <entry>30.5.2</entry>
2478 <entry>Class <code>condition_variable_any</code></entry>
2484 <entry>Futures</entry>
2489 <entry>30.6.1</entry>
2490 <entry>Overview</entry>
2495 <entry>30.6.2</entry>
2496 <entry>Error handling</entry>
2501 <entry>30.6.3</entry>
2502 <entry>Class <code>future_error</code></entry>
2507 <entry>30.6.4</entry>
2508 <entry>Shared state</entry>
2513 <?dbhtml bgcolor="#B0B0B0" ?>
2514 <entry>30.6.5</entry>
2515 <entry>Class template <code>promise</code></entry>
2516 <entry>Partial</entry>
2517 <entry>Missing set_*_at_thread_exit</entry>
2520 <?dbhtml bgcolor="#B0B0B0" ?>
2521 <entry>30.6.6</entry>
2522 <entry>Class template <code>future</code></entry>
2523 <entry>Partial</entry>
2524 <entry>Timed waiting functions do not return future_status</entry>
2527 <?dbhtml bgcolor="#B0B0B0" ?>
2528 <entry>30.6.7</entry>
2529 <entry>Class template <code>shared_future</code></entry>
2530 <entry>Partial</entry>
2531 <entry>Timed waiting functions do not return future_status</entry>
2534 <entry>30.6.8</entry>
2535 <entry>Function template <code>async</code></entry>
2540 <?dbhtml bgcolor="#B0B0B0" ?>
2541 <entry>30.6.9</entry>
2542 <entry>Class template <code>packaged_task</code></entry>
2543 <entry>Partial</entry>
2544 <entry>Missing make_ready_at_thread_exit</entry>
2548 <emphasis>Appendix D</emphasis>
2550 <entry namest="c2" nameend="c4" align="left">
2551 <emphasis>Compatibility features</emphasis>
2556 <entry>Increment operator with <code>bool</code> operand</entry>
2562 <entry><code>register</code> keyword</entry>
2568 <entry>Implicit declaration of copy functions</entry>
2574 <entry>Dynamic exception specifications</entry>
2580 <entry>C standard library headers</entry>
2586 <entry>Old iostreams members</entry>
2592 <entry><code>char*</code> streams</entry>
2598 <entry>Function objects</entry>
2604 <entry>Binders</entry>
2610 <entry><code>auto_ptr</code></entry>
2616 <entry>Violating exception-specifications</entry>