On 11/10/2013 11:54 AM, Jonathan Wakely wrote:
On 10 November 2013 16:52, Jonathan Wakely <jwakely....@gmail.com> wrote:
I thought I'd already made similar changes to gcc-4.9/changes.html for
the C++14 changes but I never committed it.  The only comment I have
is that "chrono" isn't a type, but the change is fine as far as I'm
concerned, thanks.
Oh, and optional isn't part of C++14.
Right. i guess there are interesting conversations to be had about how we document and flag all these TSs and constraints...
   Here's what I had, although it
doesn't mention all the changes:

Index: changes.html
===================================================================
RCS file: /cvs/gcc/wwwdocs/htdocs/gcc-4.9/changes.html,v
retrieving revision 1.31
diff -u -r1.31 changes.html
--- changes.html        31 Oct 2013 18:03:28 -0000      1.31
+++ changes.html        10 Nov 2013 16:53:19 -0000
@@ -142,8 +142,20 @@

    <ul>
      <li><a 
href="http://gcc.gnu.org/onlinedocs/libstdc++/manual/status.html#status.iso.2011";>
-       Improved support for C++11</a>, including support for &lt;regex&gt;.
+       Improved support for C++11</a>, including support for
<code>&lt;regex&gt;</code>.
      </li>
+    <li>Experimental support for most C++1y library features, including:
+      <ul>
+        <li>User-defined literals for strings, durations and complex
numbers.</li>
+        <li>Additional overloads for <code>std::equal</code>,
<code>std::mismatch</code>
+            and <code>std::is_permutation</code>.</li>
+        <li><code>std::make_unique</code></li>
+        <li><code>std::quoted</code></li>
+        <li><code>std::shared_lock</code></li>
+        <li><code>std::integer_sequence</code></li>
+      </ul>
+    </li>
+    <li>An implementation of <code>std::experimental::optional</code>.</li>
      <li>The non-standard function <code>std::copy_exception</code>
has been deprecated
          and will be removed in a future version.
<code>std::make_exception_ptr</code>
          should be used instead.


OK, I folded our versions together. Thank you. I also fixed up my code examples.

OK?

Ed

Index: htdocs/projects/cxx1y.html
===================================================================
RCS file: /cvs/gcc/wwwdocs/htdocs/projects/cxx1y.html,v
retrieving revision 1.8
diff -r1.8 cxx1y.html
113,114c113,115
<       <td><a href="http://isocpp.org/files/papers/n3760.htm";>N3760</a></td>
<       <td class="unsupported" align="center">No</td>
---
>       <td><a 
> href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2013/n3760.html";>N3760</a></td>
>       <td class="supported" align="center">
>         <a href="../gcc-4.9/changes.html#cxx">4.9</a> (N3797)</td>
118,119c119,121
<       <td><a href="http://isocpp.org/files/papers/N3781.pdf";>N3781</a></td>
<       <td class="unsupported" align="center">No</td>
---
>       <td><a 
> href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2013/n3781.pdf";>N3781</a></td>
>       <td class="supported" align="center">
>         <a href="../gcc-4.9/changes.html#cxx">4.9</a> (N3797)</td>
Index: htdocs/gcc-4.9/changes.html
===================================================================
RCS file: /cvs/gcc/wwwdocs/htdocs/gcc-4.9/changes.html,v
retrieving revision 1.32
diff -r1.32 changes.html
150a151,183
>   <li>
>     G++ supports the <a href="../projects/cxx1y.html">C++1y</a> [[deprecated]]
>     attribute modulo bugs in the underying [[gnu::deprecated]] attribute.  
> Classes
>     and functions can be marked deprecated and 
> <blockquote><pre>
> class A;
> int bar(int n);
> #if __cplusplus > 201103
> class [[deprecated("A is deprecated in C++14; Use B instead")]] A;
> [[deprecated("bar is unsafe; use foo() instead")]]
> int bar(int n);
> 
> int foo(int n);
> class B;
> #endif
> A aa; // warning: 'A' is deprecated : A is deprecated in C++14; Use B instead
> int j = bar(2); // warning: 'int bar(int)' is deprecated : bar is unsafe; use 
> foo() instead
> </pre></blockquote>
>   </li>
>   <li>
>     G++ supports <a href="../projects/cxx1y.html">C++1y</a> digit separators.
>     Long numeric literals can be subdivided with a single quote ' to enhance 
> readability:
> <blockquote><pre>
>   int i = 1048576;
>   int j = 1'048'576;
>   int k = 0x10'0000;
>   int m = 0'004'000'000;
>   int n = 0b0001'0000'0000'0000'0000'0000;
> 
>   double x = 1.602'176'565e-19;
>   double y = 1.602'176'565e-1'9;
> </pre></blockquote>
>   </li>
157c190
<        Improved support for C++11</a>, including support for &lt;regex&gt;.
---
>        Improved support for C++11</a>, including support for 
> <code>&lt;regex&gt;</code>.
158a192,217
>     <li><a 
> href="http://gcc.gnu.org/onlinedocs/libstdc++/manual/status.html#status.iso.2014";>
>        Improved experimental support for the upcoming ISO C++ standard, 
> C++14</a>,
>        including:
>       <ul>
>         <li> fixing <code>constexpr</code> member functions without 
> <code>const</code>; </li>
>         <li> implementation of the <code>std::exchange()</code> utility 
> function; </li>
>         <li> addressing tuples by type; </li>
>         <li> implemention of <code>std::make_unique</code>; </li>
>         <li> implemention of <code>std::shared_lock</code>; </li>
>         <li> making <code>std::result_of</code> SFINAE-friendly; </li>
>         <li> adding <code>operator()</code> to 
> <code>integral_constant</code>; </li>
>         <li> adding user-defined literals for standard library types
>              </code>std::basic_string</code>, 
> </code>std::chrono::duration</code>,
>              and </code>std::complex</code>; </li>
>         <li> adding two range overloads to non-modifying sequence oprations
>              <code>std::equal</code> and <code>std::mismatch</code>; </li>
>         <li> adding IO manipulators for quoted strings; </li>
>         <li> adding <code>constexpr</code> members to 
> <code>&lt;utility&gt;</code>,
>              <code>&lt;complex&gt;</code>, <code>&lt;chrono&gt;</code>, and 
> some containers; </li>
>         <li> adding compile-time <code>std::integer_sequence</code>; </li>
>         <li> adding cleaner transformation traits; </li>
>         <li> making <code>&lt;functional&gt;</code>s operator functors easier 
> to use
>              and more generic; </li>
>       </ul>
>     </li>
>     <li>An implementation of <code>std::experimental::optional</code>.</li>

Reply via email to