Author: Aaron Ballman Date: 2021-06-14T16:43:44-04:00 New Revision: 00dbf8c83218829633b9f2ec1ee94a1f3b8dd29c
URL: https://github.com/llvm/llvm-project/commit/00dbf8c83218829633b9f2ec1ee94a1f3b8dd29c DIFF: https://github.com/llvm/llvm-project/commit/00dbf8c83218829633b9f2ec1ee94a1f3b8dd29c.diff LOG: Adding some of the documents for C11. This is not the complete set of language-related documents for C11, but is about 75% complete. Added: Modified: clang/www/c_status.html Removed: ################################################################################ diff --git a/clang/www/c_status.html b/clang/www/c_status.html index f68344c47c082..73321a9306202 100644 --- a/clang/www/c_status.html +++ b/clang/www/c_status.html @@ -91,6 +91,189 @@ <h2 id="c11">C11 implementation status</h2> <p>Clang implements a significant portion of the ISO 9899:2011 (C11) standard, but the status of individual proposals is still under investigation.</p> <p>You can use Clang in C11 mode with the <code>-std=c11</code> option (use <code>-std=c1x</code> in Clang 3.0 and earlier).</p> +<details> +<summary>List of features and minimum Clang version with support</summary> + +<table width="689" border="1" cellspacing="0"> + <tr> + <th>Language Feature</th> + <th>C11 Proposal</th> + <th>Available in Clang?</th> + </tr> + <tr> + <td>A finer-grained specification for sequencing</td> + <td><a href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1252.htm">N1252</a></td> + <td class="unknown" align="center">Unknown</td> + </tr> + <tr> + <td>Clarification of expressions</td> + <td><a href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1282.pdf">N1282</a></td> + <td class="unknown" align="center">Unknown</td> + </tr> + <tr> + <td>Extending the lifetime of temporary objects (factored approach)</td> + <td><a href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1285.htm">N1285</a></td> + <td class="unknown" align="center">Unknown</td> + </tr> + <tr> + <td>Requiring signed char to have no padding bits</td> + <td><a href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1310.htm">N1310</a></td> + <td class="unknown" align="center">Unknown</td> + </tr> + <tr> + <td>Initializing static or external variables</td> + <td><a href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1311.pdf">N1311</a></td> + <td class="unknown" align="center">Unknown</td> + </tr> + <tr> + <td>Conversion between pointers and floating types</td> + <td><a href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1316.htm">N1316</a></td> + <td class="full" align="center">Yes</td> + </tr> + <tr> + <td>Adding TR 19769 to the C Standard Library</td> + <td><a href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1326.pdf">N1326</a></td> + <td class="full" align="center">Clang 3.3</td> + </tr> + <tr> + <td>Static assertions</td> + <td><a href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1330.pdf">N1330</a></td> + <td class="full" align="center">Yes</td> + </tr> + <tr> + <td>Parallel memory sequencing model proposal</td> + <td><a href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1349.htm">N1349</a></td> + <td class="unknown" align="center">Unknown</td> + </tr> + <tr> + <td>Analyzability (#1, #4 - conditionally normative)</td> + <td><a href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1350.htm">N1350</a></td> + <td class="unknown" align="center">Unknown</td> + </tr> + <tr> + <td>FLT_EVAL_METHOD issues (first change only)</td> + <td><a href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1353.pdf">N1353</a></td> + <td class="unknown" align="center">Unknown</td> + </tr> + <tr> + <td>_Bool bit-fields</td> + <td><a href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1356.htm">N1356</a></td> + <td class="unknown" align="center">Unknown</td> + </tr> + <tr> + <td>Technical corrigendum for C1X</td> + <td><a href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1359.htm">N1359</a></td> + <td class="unknown" align="center">Unknown</td> + </tr> + <tr> + <td>Benign typedef redefinition</td> + <td><a href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1360.htm">N1360</a></td> + <td class="full" align="center">Clang 3.1</td> + </tr> + <tr> + <td>Thread-local storage</td> + <td><a href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1364.htm">N1364</a></td> + <td class="full" align="center">Clang 3.3</td> + </tr> + <tr> + <td>Constant expressions</td> + <td><a href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1365.htm">N1365</a></td> + <td class="unknown" align="center">Unknown</td> + </tr> + <tr> + <td>Contractions and expression evaluation methods</td> + <td><a href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1367.htm">N1367</a></td> + <td class="unknown" align="center">Unknown</td> + </tr> + <tr> + <td>FLT_EVAL_METHOD and return</td> + <td><a href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1382.htm">N1382</a></td> + <td class="unknown" align="center">Unknown</td> + </tr> + <tr> + <td>Floating-point to int/_Bool conversions</td> + <td><a href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1391.htm">N1391</a></td> + <td class="unknown" align="center">Unknown</td> + </tr> + <tr> + <td>Analyzability (along the lines)</td> + <td><a href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1394.htm">N1394</a></td> + <td class="unknown" align="center">Unknown</td> + </tr> + <tr> + <td>Wide function returns (alternate proposal)</td> + <td><a href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1396.htm">N1396</a></td> + <td class="unknown" align="center">Unknown</td> + </tr> + <tr id="alignment"> + <td rowspan="3">Alignment</td> + </tr> + <tr> + <td><a href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1397.htm">N1397</a></td> + <td class="full" align="center">Clang 3.2</td> + </tr> + <tr> + <td><a href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1447.htm">N1447</a></td> + <td class="full" align="center">Clang 3.2</td> + </tr> + <tr> + <td>Anonymous member-structures and unions (modulo "name lookup")</td> + <td><a href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1406.pdf">N1406</a></td> + <td class="full" align="center">Yes</td> + </tr> + <tr> + <td>Completeness of types</td> + <td><a href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1439.pdf">N1439</a></td> + <td class="unknown" align="center">Unknown</td> + </tr> + <tr> + <td>Generic macro facility</td> + <td><a href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1441.htm">N1441</a></td> + <td class="full" align="center">Yes</td> + </tr> + <tr> + <td>Dependency ordering for C memory model</td> + <td><a href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1444.htm">N1444</a></td> + <td class="unknown" align="center">Unknown</td> + </tr> + <tr> + <td>Subsetting the standard</td> + <td><a href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1460.htm">N1460</a></td> + <td class="unknown" align="center">Unknown</td> + </tr> + <tr> + <td>Assumed types in F.9.2</td> + <td><a href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1468.htm">N1468</a></td> + <td class="unknown" align="center">Unknown</td> + </tr> + <tr> + <td>Supporting the 'noreturn' property in C1x</td> + <td><a href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1478.htm">N1478</a></td> + <td class="full" align="center">Clang 3.3</td> + </tr> + <tr> + <td>Updates to C++ memory model based on formalization</td> + <td><a href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1480.htm">N1480</a></td> + <td class="unknown" align="center">Unknown</td> + </tr> + <tr> + <td>Explicit initializers for atomics</td> + <td><a href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1482.htm">N1482</a></td> + <td class="unknown" align="center">Unknown</td> + </tr> + <tr> + <td>Atomics proposal (minus ternary op)</td> + <td><a href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1485.pdf">N1485</a></td> + <td class="full" align="center">Yes</td> + </tr> + <tr> + <td>UTF-8 string literals</td> + <td><a href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1488.htm">N1488</a></td> + <td class="full" align="center">Clang 3.3</td> + </tr> +</table> +</details> + <h2 id="c17">C17 implementation status</h2> <p>There are no major changes in this edition, only technical corrections and clarifications that are tracked by Defect Report.</p> _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits