blob: 22ad0d450c178582e0ddecea5c674307fbfb8eae [file] [log] [blame]
Marshall Clowd2f0b5c2014-06-02 23:37:13 +00001<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
2 "http://www.w3.org/TR/html4/strict.dtd">
3<!-- Material used from: HTML 4.01 specs: http://www.w3.org/TR/html401/ -->
4<html>
5<head>
6 <META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
Eric Fiselier9e019762015-02-02 21:10:21 +00007 <title>libc++ Fundamentals TS Status</title>
Marshall Clowd2f0b5c2014-06-02 23:37:13 +00008 <link type="text/css" rel="stylesheet" href="menu.css">
9 <link type="text/css" rel="stylesheet" href="content.css">
10</head>
11
12<body>
13<div id="menu">
14 <div>
Stephan T. Lavavejf966d3f2017-08-31 17:59:42 +000015 <a href="https://llvm.org/">LLVM Home</a>
Marshall Clowd2f0b5c2014-06-02 23:37:13 +000016 </div>
17
18 <div class="submenu">
19 <label>libc++ Info</label>
20 <a href="/index.html">About</a>
21 </div>
22
23 <div class="submenu">
24 <label>Quick Links</label>
Stephan T. Lavavejf966d3f2017-08-31 17:59:42 +000025 <a href="https://lists.llvm.org/mailman/listinfo/cfe-dev">cfe-dev</a>
26 <a href="https://lists.llvm.org/mailman/listinfo/cfe-commits">cfe-commits</a>
Eric Fiselierb7fd0be2017-02-17 08:37:03 +000027 <a href="https://bugs.llvm.org/">Bug Reports</a>
Stephan T. Lavavejf966d3f2017-08-31 17:59:42 +000028 <a href="https://llvm.org/svn/llvm-project/libcxx/trunk/">Browse SVN</a>
29 <a href="https://llvm.org/viewvc/llvm-project/libcxx/trunk/">Browse ViewVC</a>
Marshall Clowd2f0b5c2014-06-02 23:37:13 +000030 </div>
31</div>
32
33<div id="content">
34 <!--*********************************************************************-->
35 <h1>Post-C++14 TS Implementation Status</h1>
36 <!--*********************************************************************-->
37
Marshall Clow5be047d2015-12-08 00:08:23 +000038 <p>In November 2014, the C++ standard committee approved the draft for the next version of the C++ standard, known as "C++1z" (probably to be C++17)</p>
39 <p>In addition, there are several "Technical Specifications", that consist of new features that are proposed, but not yet accepted for C++1z.</p>
Stephan T. Lavavejf966d3f2017-08-31 17:59:42 +000040 <p>This page shows the status of libc++; the status of clang's support of the language features is <a href="https://clang.llvm.org/cxx_status.html">here</a>.</p>
Marshall Clowd2f0b5c2014-06-02 23:37:13 +000041
42 <h3>Technical Specifications</h3>
43 <table id="TS" border="1">
Marshall Clow1e895c12014-11-10 15:43:20 +000044 <tr><th>Paper Number</th><th>Paper Title</th><th>TS</th></tr>
Marshall Clowd2f0b5c2014-06-02 23:37:13 +000045
Stephan T. Lavavej1e708af2017-08-31 17:59:39 +000046 <tr><td><a href="https://wg21.link/n4023">4023</a></td><td>C++ Extensions for Library Fundamentals</td><td>Library Fundamentals 1</td></tr>
47 <tr><td><a href="https://wg21.link/n3940">3940</a></td><td>Technical Specification - File System</td><td>File System</td></tr>
Marshall Clow1e895c12014-11-10 15:43:20 +000048 <tr><td></td><td></td><td></td></tr>
49
Stephan T. Lavavej1e708af2017-08-31 17:59:39 +000050 <tr><td><a href="https://wg21.link/n4273">4273</a></td><td>Uniform Container Erasure.</td><td>Library Fundamentals 2</td></tr>
51 <tr><td><a href="https://wg21.link/n4061">4061</a></td><td>Greatest Common Divisor and Least Common Multiple.</td><td>Library Fundamentals 2</td></tr>
52 <tr><td><a href="https://wg21.link/n4257">4257</a></td><td>Delimited iterators.</td><td>Library Fundamentals 2</td></tr>
53 <tr><td><a href="https://wg21.link/n4282">4282</a></td><td>The World's Dumbest Smart Pointer.</td><td>Library Fundamentals 2</td></tr>
Marshall Clow1e895c12014-11-10 15:43:20 +000054 <tr><td></td><td></td><td></td></tr>
55
Marshall Clowd2f0b5c2014-06-02 23:37:13 +000056 </table>
57
Marshall Clow1e895c12014-11-10 15:43:20 +000058 <h3>Features in Library Fundamentals 1</h3>
Marshall Clowd2f0b5c2014-06-02 23:37:13 +000059 <table id="Features" border="1">
60 <tr><th>Feature Name</th><th>Status</th></tr>
61 <tr><td>Uses-allocator construction</td><td>Not started</td></tr>
62 <tr><td>Changes to std::shared_ptr and weak_ptr</td><td>Not started</td></tr>
63 <tr><td>Additions to std::function</td><td>Not started</td></tr>
Marshall Clowd2f0b5c2014-06-02 23:37:13 +000064 <tr><td>Additions to std::promise</td><td>Not started</td></tr>
65 <tr><td>Additions to std::packaged_task</td><td>Not started</td></tr>
66 <tr><td></td><td></td></tr>
Eric Fiselier9e019762015-02-02 21:10:21 +000067 <tr><td>Class erased_type</td><td>Complete</td></tr>
Eric Fiselier13858ee2015-03-17 18:28:14 +000068 <tr><td>Calling a function with a tuple of arguments</td><td>Complete</td></tr>
Marshall Clow40766f72015-07-21 14:29:31 +000069 <tr><td>Type traits (_v)</td><td>Complete</td></tr>
Marshall Clowd2f0b5c2014-06-02 23:37:13 +000070 <tr><td>Other type transformations</td><td>Not started</td></tr>
Eric Fiselier9e019762015-02-02 21:10:21 +000071 <tr><td>Compile-time Rational Arithmetic</td><td>Implementation in progress</td></tr>
72 <tr><td>Time Utilities</td><td>Complete</td></tr>
Eric Fiselier40f86952015-02-03 16:04:45 +000073 <tr><td>System Error Support</td><td>Complete</td></tr>
Marshall Clowd2f0b5c2014-06-02 23:37:13 +000074 <tr><td></td><td></td></tr>
Eric Fiselier1354c942016-05-07 03:24:31 +000075 <tr><td>Class memory_resource</td><td>Complete</td></tr>
76 <tr><td>Class template polymorphic_allocator</td><td>Complete</td></tr>
77 <tr><td>Template alias resource_adaptor</td><td>Complete</td></tr>
78 <tr><td>Global memory resources</td><td>Complete</td></tr>
79 <tr><td>Pool resource classes</td><td>Implementation in progress</td></tr>
80 <tr><td>Class monotonic_buffer_resource</td><td>Implementation in progress</td></tr>
81 <tr><td>Alias templates using polymorphic memory resource</td><td>Complete</td></tr>
82 <tr><td></td><td></td></tr>
Marshall Clowaf9a44f2015-09-08 17:59:09 +000083 <tr><td>Searchers</td><td>Complete</td></tr>
Marshall Clowd2f0b5c2014-06-02 23:37:13 +000084 <tr><td>Optional Objects</td><td>Initial implementation complete</td></tr>
Eric Fiselier65a1d452015-07-31 02:29:11 +000085 <tr><td>class any</td><td>Complete</td></tr>
Marshall Clow40766f72015-07-21 14:29:31 +000086 <tr><td>string_view</td><td>Complete</td></tr>
Eric Fiselier9e019762015-02-02 21:10:21 +000087 <tr><td>memory</td><td>Implementation in progress</td></tr>
Marshall Clow40766f72015-07-21 14:29:31 +000088 <tr><td>Algorithms library</td><td>Complete</td></tr>
Marshall Clowd2f0b5c2014-06-02 23:37:13 +000089
90 </table>
91
Marshall Clow1e895c12014-11-10 15:43:20 +000092 <h3>Features in Library Fundamentals 2</h3>
93 <table id="Features" border="1">
94 <tr><th>Feature Name</th><th>Status</th></tr>
95<!-- <tr><td></td><td></td></tr> -->
96
97 </table>
Stephan T. Lavavejb8813f32017-08-31 17:59:48 +000098
Marshall Clowd2f0b5c2014-06-02 23:37:13 +000099 <h3>Features in Filesystem</h3>
100 <table id="Features" border="1">
Eric Fiselier6e9a6942016-06-17 19:46:40 +0000101 <tr><th>Feature Name</th><th>Status</th><th>First released version</th></tr>
102 <tr><td>All features</td><td>Complete</td><td>3.9</td></tr>
Marshall Clowd2f0b5c2014-06-02 23:37:13 +0000103
104 </table>
105
Eric Fiselier6e9a6942016-06-17 19:46:40 +0000106 <p>Last Updated: 17-June-2016</p>
Marshall Clowd2f0b5c2014-06-02 23:37:13 +0000107</div>
108</body>
109</html>