On 10/02/2014 10:24 AM, Jonathan Wakely wrote:
On 02/10/14 10:09 -0400, Ed Smith-Rowland wrote:
On 10/02/2014 06:14 AM, Jonathan Wakely wrote:
On 02/10/14 11:12 +0100, Jonathan Wakely wrote:
Note Ed's recent changes. Committed to CVS.

And fix a markup error that I expected xmllint to catch :-(
Thank you! I tried to do this and couldn't for permissions. I'm probably not doing it right.

If I remember my cvs-fu you need CVS_RHS=ssh and use
CVSROOT=:ext:$u...@gcc.gnu.org:/cvs/gcc (with your sourceware.org
username as $USER) and then it should work over SSH just like svn and
git.

Anyway, the real thing I wanted to suggest is we put a line for C-family about the availability of __has_include and __has_include_next. We could mention clang has it.

Good idea, I'm happy to commit a patch if you can prepare something.


OK, here is a patch for both using typename as a class key for template template parms and for __has_include, etc.
Are these too wordy?

Ed

Index: htdocs/gcc-5/changes.html
===================================================================
RCS file: /cvs/gcc/wwwdocs/htdocs/gcc-5/changes.html,v
retrieving revision 1.14
diff -r1.14 changes.html
56a57,81
>     <li>New preprocessor constructs, <code>__has_include_next</code>
>         and <code>__has_include_next</code>, to test the availability of 
> headers
>         have been added.<br/>
>         This demonstrates a way to include the header 
> <code>&lt;optional&gt;</code>
>         only if it is available:<br/>
> <blockquote><pre>
> #ifdef __has_include
> #  if __has_include(&lt;optional&gt;)
> #    include &lt;optional&gt;
> #    define have_optional 1
> #  elif __has_include(&lt;experimental/optional&gt;)
> #    include &lt;experimental/optional&gt;
> #    define have_optional 1
> #    define experimental_optional
> #  else
> #    define have_optional 0
> #  endif
> #endif
> </pre></blockquote>
>         The header search paths for <code>__has_include_next</code>
>         and <code>__has_include_next</code> are equivalent to those
>         of the standard directive <code>#include</code>
>         and the extension <code>#include_next</code> respectively.
>     </li>
> 
88a114,117
>   <li>G++ now allows <code>typename</code> in a template template parameter.
>     <blockquote><pre>
>       template&lt;template&lt;typename&gt; <b>typename</b> X&gt; struct D; // 
> OK
>     </pre></blockquote></li>

Reply via email to