Re: [PATCH] Fix PR56480 aka DR374. Allow explicit specialization in enclosing namespace.

2014-11-18 Thread Jason Merrill
On 11/12/2014 06:53 AM, Markus Trippelsdorf wrote: Anyway, I will defer working on this until next stage1, because I don't have time to implement this before stage1 closes on Saturday. I think this should be OK for stage 3, especially given that you first sent the patch before the end of stage

Re: [PATCH] Fix PR56480 aka DR374. Allow explicit specialization in enclosing namespace.

2014-11-11 Thread Jason Merrill
On 11/11/2014 03:06 PM, Markus Trippelsdorf wrote: On 2014.11.11 at 13:39 -0500, Jason Merrill wrote: On 11/11/2014 10:37 AM, Markus Trippelsdorf wrote: On 2014.11.11 at 10:11 -0500, Jason Merrill wrote: On 11/08/2014 06:57 AM, Markus Trippelsdorf wrote: +++ b/gcc/testsuite/g++.old-deja/g++.p

Re: [PATCH] Fix PR56480 aka DR374. Allow explicit specialization in enclosing namespace.

2014-11-11 Thread Markus Trippelsdorf
On 2014.11.11 at 13:39 -0500, Jason Merrill wrote: > On 11/11/2014 10:37 AM, Markus Trippelsdorf wrote: > > On 2014.11.11 at 10:11 -0500, Jason Merrill wrote: > >> On 11/08/2014 06:57 AM, Markus Trippelsdorf wrote: > >>> +++ b/gcc/testsuite/g++.old-deja/g++.pt/explicit73.C > >>> @@ -7,9 +7,9 @@ > >

Re: [PATCH] Fix PR56480 aka DR374. Allow explicit specialization in enclosing namespace.

2014-11-11 Thread Jason Merrill
On 11/11/2014 10:37 AM, Markus Trippelsdorf wrote: On 2014.11.11 at 10:11 -0500, Jason Merrill wrote: On 11/08/2014 06:57 AM, Markus Trippelsdorf wrote: +++ b/gcc/testsuite/g++.old-deja/g++.pt/explicit73.C @@ -7,9 +7,9 @@ // the template namespace N { - template class foo; // { dg-error

Re: [PATCH] Fix PR56480 aka DR374. Allow explicit specialization in enclosing namespace.

2014-11-11 Thread Mike Stump
On Nov 11, 2014, at 7:37 AM, Markus Trippelsdorf wrote: > Both EGG and clang currently accept it. EDG… I think you mean.

Re: [PATCH] Fix PR56480 aka DR374. Allow explicit specialization in enclosing namespace.

2014-11-11 Thread Markus Trippelsdorf
On 2014.11.11 at 10:11 -0500, Jason Merrill wrote: > On 11/08/2014 06:57 AM, Markus Trippelsdorf wrote: > > +++ b/gcc/testsuite/g++.old-deja/g++.pt/explicit73.C > > @@ -7,9 +7,9 @@ > > // the template > > > > namespace N { > > - template class foo;// { dg-error "" } referenced below > > +

Re: [PATCH] Fix PR56480 aka DR374. Allow explicit specialization in enclosing namespace.

2014-11-11 Thread Jason Merrill
On 11/08/2014 06:57 AM, Markus Trippelsdorf wrote: +++ b/gcc/testsuite/g++.old-deja/g++.pt/explicit73.C @@ -7,9 +7,9 @@ // the template namespace N { - template class foo; // { dg-error "" } referenced below + template class foo; // { dg-error "" "" { target { ! c++11 } } } referenced b

[PATCH] Fix PR56480 aka DR374. Allow explicit specialization in enclosing namespace.

2014-11-08 Thread Markus Trippelsdorf
DR374: http://www.open-std.org/jtc1/sc22/wg21/docs/cwg_defects.html#374 allows explicit specialization of templates in the enclosing namespace. This is implemented by consolidating check_specialization_namespace and check_explicit_instantiation_namespace into a new function and pedwarning only for

Re: [PATCH] Fix PR56480 aka DR374. Allow explicit specialization in enclosing namespace.

2014-11-02 Thread Markus Trippelsdorf
On 2014.11.02 at 13:58 +0100, Markus Trippelsdorf wrote: > diff --git a/gcc/testsuite/g++.dg/template/spec25.C > b/gcc/testsuite/g++.dg/template/spec25.C > index 385d19ada0c4..d41c5fce1297 100644 > --- a/gcc/testsuite/g++.dg/template/spec25.C > +++ b/gcc/testsuite/g++.dg/template/spec25.C > @@ -1,

[PATCH] Fix PR56480 aka DR374. Allow explicit specialization in enclosing namespace.

2014-11-02 Thread Markus Trippelsdorf
DR374: http://www.open-std.org/jtc1/sc22/wg21/docs/cwg_defects.html#374 allows explicit specialization of templates in the enclosing namespace. Because this idiom is currently already accepted with -fpermissive, the fix is easy: Just skip the calls to permerror() for C++11 and up. Tested on powerp