aboutsummaryrefslogtreecommitdiff
path: root/www/cxx_status.html
diff options
context:
space:
mode:
authorDimitry Andric <dim@FreeBSD.org>2015-01-18 16:23:48 +0000
committerDimitry Andric <dim@FreeBSD.org>2015-01-18 16:23:48 +0000
commit06d4ba388873e6d1cfa9cd715a8935ecc8cd2097 (patch)
tree3eb853da77d46cc77c4b017525a422f9ddb1385b /www/cxx_status.html
parent30d791273d07fac9c0c1641a0731191bca6e8606 (diff)
downloadsrc-06d4ba388873e6d1cfa9cd715a8935ecc8cd2097.tar.gz
src-06d4ba388873e6d1cfa9cd715a8935ecc8cd2097.zip
Vendor import of clang RELEASE_360/rc1 tag r226102 (effectively, 3.6.0 RC1):vendor/clang/clang-release_360-r226102
Notes
Notes: svn path=/vendor/clang/dist/; revision=277325 svn path=/vendor/clang/clang-release_360-r226102/; revision=277326; tag=vendor/clang/clang-release_360-r226102
Diffstat (limited to 'www/cxx_status.html')
-rw-r--r--www/cxx_status.html82
1 files changed, 64 insertions, 18 deletions
diff --git a/www/cxx_status.html b/www/cxx_status.html
index 9d1d29c7e6b7..a494469bb6e8 100644
--- a/www/cxx_status.html
+++ b/www/cxx_status.html
@@ -25,11 +25,11 @@
<!--*************************************************************************-->
<h1>C++ Support in Clang</h1>
<!--*************************************************************************-->
-<p>Last updated: $Date: 2014-06-22 18:00:05 +0200 (Sun, 22 Jun 2014) $</p>
+<p>Last updated: $Date: 2014-11-27 02:54:27 +0100 (Thu, 27 Nov 2014) $</p>
<p>Clang fully implements all published ISO C++ standards including <a
-href="#cxx11">C++11</a>, as well as the upcoming standard provisionally named <a
-href="#cxx14">C++14</a>, and some parts of the fledgling <a
+href="#cxx11">C++11</a>, as well as the upcoming <a
+href="#cxx14">C++14</a> standard, and some parts of the fledgling <a
href="#cxx17">C++1z</a> standard,
and is considered a production-quality C++ compiler.
@@ -422,20 +422,21 @@ because changing <code>intmax_t</code> would be an ABI-incompatible
change.</span>
</p>
-<h2 id="cxx14">C++1y implementation status</h2>
+<h2 id="cxx14">C++14 implementation status</h2>
<p>Clang 3.4 and later implement all of the Draft International Standard (see <a
href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2013/n3797.pdf">most
recent publicly available draft</a>)
-of the upcoming C++ language standard, provisionally named C++1y. The following
-table describes the Clang version in which each feature became available.</p>
+of the upcoming C++14 language standard. The following table describes the
+Clang version in which each feature became available.</p>
-<p>You can use Clang in C++1y mode with the <code>-std=c++1y</code> option.</p>
+<p>You can use Clang in C++14 mode with the <code>-std=c++14</code> option
+(use <code>-std=c++1y</code> in Clang 3.4 and earlier).</p>
<table width="689" border="1" cellspacing="0">
<tr>
<th>Language Feature</th>
- <th>C++1y Proposal</th>
+ <th>C++14 Proposal</th>
<th>Available in Clang?</th>
</tr>
<tr>
@@ -507,7 +508,7 @@ table describes the Clang version in which each feature became available.</p>
<h2 id="cxx17">C++1z implementation status</h2>
<p>Clang has <b>highly experimental</b> support for some proposed features of
-the C++ standard following C++1y,
+the C++ standard following C++14,
provisionally named C++1z. The following table describes which C++1z features
have been implemented in Clang and in which Clang version they became
available.</p>
@@ -523,24 +524,62 @@ as the draft C++1z standard evolves.</p>
<th>C++1z Proposal</th>
<th>Available in Clang?</th>
</tr>
+ <!-- Issaquah papers -->
<tr>
<td><tt>static_assert</tt> with no message</td>
<td><a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2014/n3928.pdf">N3928</a></td>
- <td class="svn" align="center">SVN</td>
+ <td class="full" align="center">Clang 3.5</td>
</tr>
+ <!-- Rapperswil papers -->
<tr>
<td>Disabling trigraph expansion by default</td>
- <td><a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2014/n3981.html">N3981</a></td>
- <td class="svn" align="center">SVN</td>
+ <td><a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2014/n4086.html">N4086</a></td>
+ <td class="full" align="center">Clang 3.5</td>
</tr>
+ <!--
<tr>
- <td>Terse range-based for loops</td>
- <td><a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2014/n3994.htm">N3994</a></td>
- <td class="svn" align="center">SVN</td>
+ <td rowspan="2">Terse range-based for loops (removed from C++1z)</td>
+ <td rowspan="2"><a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2014/n3994.htm">N3994</a></td>
+ <td class="none" align="center">Clang 3.5: Yes</td>
</tr>
<tr>
+ <td class="svn" align="center">SVN: No</td>
+ </tr>
+ -->
+ <tr>
<td><tt>typename</tt> in a template template parameter</td>
<td><a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2014/n4051.html">N4051</a></td>
+ <td class="full" align="center">Clang 3.5</td>
+ </tr>
+ <tr>
+ <td>New <tt>auto</tt> rules for direct-list-initialization
+ <td><a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2014/n3922.html">N3922</a></td>
+ <td class="none" align="center">No</td>
+ </tr>
+ <!-- Urbana papers -->
+ <tr>
+ <td>Fold expressions</td>
+ <td><!--<a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2014/n4295.html">-->N4295<!--</a>--></td>
+ <td class="svn" align="center">SVN</td>
+ </tr>
+ <tr>
+ <td><tt>u8</tt> character literals</td>
+ <td><!--<a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2014/n4267.html">-->N4267<!--</a>--></td>
+ <td class="svn" align="center">SVN</td>
+ </tr>
+ <tr>
+ <td>Nested namespace definition</td>
+ <td><!--<a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2014/n4230.html">-->N4230<!--</a>--></td>
+ <td class="svn" align="center">SVN</td>
+ </tr>
+ <tr>
+ <td>Attributes for namespaces and enumerators</td>
+ <td><!--<a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2014/n4266.html">-->N4266<!--</a>--></td>
+ <td class="svn" align="center">SVN</td>
+ </tr>
+ <tr>
+ <td>Allow constant evaluation for all non-type template arguments</td>
+ <td><!--<a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2014/n4268.html">-->N4268<!--</a>--></td>
<td class="svn" align="center">SVN</td>
</tr>
</table>
@@ -559,9 +598,16 @@ Clang version they became available:</p>
<th>Available in Clang?</th>
</tr>
<tr>
- <td>SD-6: SG10 feature test recommendations</td>
- <td><a href="http://isocpp.org/std/standing-documents/sd-6-sg10-feature-test-recommendations">SD-6</a></td>
- <td class="full" align="center">Clang 3.4 (<a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2013/n3745">N3745</a>)</td>
+ <td rowspan="2">SD-6: SG10 feature test recommendations</td>
+ <td rowspan="2"><a href="http://isocpp.org/std/standing-documents/sd-6-sg10-feature-test-recommendations">SD-6</a></td>
+ <td class="full" align="center">
+ Clang 3.4 (<a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2013/n3745">N3745</a>)</br>
+ </td>
+ </tr>
+ <tr>
+ <td class="svn" align="center">
+ SVN (<a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2014/n4200">N4200</a>)</a>
+ </td>
</tr>
<tr>
<td>[DRAFT TS] Array extensions (arrays of runtime bound)</td>