blob: 1c2e3a2447c37738645297e93490c78cbbdd343f [file] [log] [blame]
Marshall Clowbbec82d2014-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 Fiselier360bf492015-02-02 21:10:21 +00007 <title>libc++ Fundamentals TS Status</title>
Marshall Clowbbec82d2014-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. Lavavej1e7fbda2017-08-31 17:59:42 +000015 <a href="https://llvm.org/">LLVM Home</a>
Marshall Clowbbec82d2014-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. Lavavej1e7fbda2017-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 Fiselier5d604012017-02-17 08:37:03 +000027 <a href="https://bugs.llvm.org/">Bug Reports</a>
James Y Knightf18eebf2019-01-29 16:37:27 +000028 <a href="https://github.com/llvm/llvm-project/tree/master/libcxx/">Browse Sources</a>
Marshall Clowbbec82d2014-06-02 23:37:13 +000029 </div>
30</div>
31
32<div id="content">
33 <!--*********************************************************************-->
34 <h1>Post-C++14 TS Implementation Status</h1>
35 <!--*********************************************************************-->
36
Marshall Clow4b119102015-12-08 00:08:23 +000037 <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>
38 <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. Lavavej1e7fbda2017-08-31 17:59:42 +000039 <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 Clowbbec82d2014-06-02 23:37:13 +000040
41 <h3>Technical Specifications</h3>
42 <table id="TS" border="1">
Marshall Clow5ac35df2014-11-10 15:43:20 +000043 <tr><th>Paper Number</th><th>Paper Title</th><th>TS</th></tr>
Marshall Clowbbec82d2014-06-02 23:37:13 +000044
Stephan T. Lavavej5b318bd2017-08-31 17:59:39 +000045 <tr><td><a href="https://wg21.link/n4023">4023</a></td><td>C++ Extensions for Library Fundamentals</td><td>Library Fundamentals 1</td></tr>
46 <tr><td><a href="https://wg21.link/n3940">3940</a></td><td>Technical Specification - File System</td><td>File System</td></tr>
Marshall Clow5ac35df2014-11-10 15:43:20 +000047 <tr><td></td><td></td><td></td></tr>
48
Stephan T. Lavavej5b318bd2017-08-31 17:59:39 +000049 <tr><td><a href="https://wg21.link/n4273">4273</a></td><td>Uniform Container Erasure.</td><td>Library Fundamentals 2</td></tr>
50 <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>
51 <tr><td><a href="https://wg21.link/n4257">4257</a></td><td>Delimited iterators.</td><td>Library Fundamentals 2</td></tr>
52 <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 Clow5ac35df2014-11-10 15:43:20 +000053 <tr><td></td><td></td><td></td></tr>
54
Marshall Clowbbec82d2014-06-02 23:37:13 +000055 </table>
56
Marshall Clow5ac35df2014-11-10 15:43:20 +000057 <h3>Features in Library Fundamentals 1</h3>
Marshall Clowbbec82d2014-06-02 23:37:13 +000058 <table id="Features" border="1">
59 <tr><th>Feature Name</th><th>Status</th></tr>
60 <tr><td>Uses-allocator construction</td><td>Not started</td></tr>
61 <tr><td>Changes to std::shared_ptr and weak_ptr</td><td>Not started</td></tr>
62 <tr><td>Additions to std::function</td><td>Not started</td></tr>
Marshall Clowbbec82d2014-06-02 23:37:13 +000063 <tr><td>Additions to std::promise</td><td>Not started</td></tr>
64 <tr><td>Additions to std::packaged_task</td><td>Not started</td></tr>
65 <tr><td></td><td></td></tr>
Eric Fiselier360bf492015-02-02 21:10:21 +000066 <tr><td>Class erased_type</td><td>Complete</td></tr>
Eric Fiselier503fab42015-03-17 18:28:14 +000067 <tr><td>Calling a function with a tuple of arguments</td><td>Complete</td></tr>
Marshall Clowf55e2642015-07-21 14:29:31 +000068 <tr><td>Type traits (_v)</td><td>Complete</td></tr>
Marshall Clowbbec82d2014-06-02 23:37:13 +000069 <tr><td>Other type transformations</td><td>Not started</td></tr>
Eric Fiselier360bf492015-02-02 21:10:21 +000070 <tr><td>Compile-time Rational Arithmetic</td><td>Implementation in progress</td></tr>
71 <tr><td>Time Utilities</td><td>Complete</td></tr>
Eric Fiselierf419bbd2015-02-03 16:04:45 +000072 <tr><td>System Error Support</td><td>Complete</td></tr>
Marshall Clowbbec82d2014-06-02 23:37:13 +000073 <tr><td></td><td></td></tr>
Eric Fiselier2090e182016-05-07 03:24:31 +000074 <tr><td>Class memory_resource</td><td>Complete</td></tr>
75 <tr><td>Class template polymorphic_allocator</td><td>Complete</td></tr>
76 <tr><td>Template alias resource_adaptor</td><td>Complete</td></tr>
77 <tr><td>Global memory resources</td><td>Complete</td></tr>
78 <tr><td>Pool resource classes</td><td>Implementation in progress</td></tr>
79 <tr><td>Class monotonic_buffer_resource</td><td>Implementation in progress</td></tr>
80 <tr><td>Alias templates using polymorphic memory resource</td><td>Complete</td></tr>
81 <tr><td></td><td></td></tr>
Marshall Clow7a0952b2015-09-08 17:59:09 +000082 <tr><td>Searchers</td><td>Complete</td></tr>
Marshall Clowbbec82d2014-06-02 23:37:13 +000083 <tr><td>Optional Objects</td><td>Initial implementation complete</td></tr>
Eric Fiselier37c80ba2015-07-31 02:29:11 +000084 <tr><td>class any</td><td>Complete</td></tr>
Marshall Clowf55e2642015-07-21 14:29:31 +000085 <tr><td>string_view</td><td>Complete</td></tr>
Eric Fiselier360bf492015-02-02 21:10:21 +000086 <tr><td>memory</td><td>Implementation in progress</td></tr>
Marshall Clowf55e2642015-07-21 14:29:31 +000087 <tr><td>Algorithms library</td><td>Complete</td></tr>
Marshall Clowbbec82d2014-06-02 23:37:13 +000088
89 </table>
90
Marshall Clow5ac35df2014-11-10 15:43:20 +000091 <h3>Features in Library Fundamentals 2</h3>
92 <table id="Features" border="1">
93 <tr><th>Feature Name</th><th>Status</th></tr>
94<!-- <tr><td></td><td></td></tr> -->
95
96 </table>
Stephan T. Lavavejff510982017-08-31 17:59:48 +000097
Marshall Clowbbec82d2014-06-02 23:37:13 +000098 <h3>Features in Filesystem</h3>
99 <table id="Features" border="1">
Eric Fiselier435db152016-06-17 19:46:40 +0000100 <tr><th>Feature Name</th><th>Status</th><th>First released version</th></tr>
101 <tr><td>All features</td><td>Complete</td><td>3.9</td></tr>
Marshall Clowbbec82d2014-06-02 23:37:13 +0000102
103 </table>
104
Eric Fiselier435db152016-06-17 19:46:40 +0000105 <p>Last Updated: 17-June-2016</p>
Marshall Clowbbec82d2014-06-02 23:37:13 +0000106</div>
107</body>
108</html>