[clang] 00dbf8c - Adding some of the documents for C11.

Aaron Ballman via cfe-commits cfe-commits at lists.llvm.org
Mon Jun 14 13:43:53 PDT 2021


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>


        


More information about the cfe-commits mailing list