On Tue, Dec 08, 2015 at 09:15:33AM -0500, Jason Merrill wrote: > On 12/08/2015 06:54 AM, Bernd Schmidt wrote: > >On 12/07/2015 06:49 PM, Marek Polacek wrote: > > > >>diff --git gcc/testsuite/g++.dg/cpp0x/pr68116.C > >>gcc/testsuite/g++.dg/cpp0x/pr68116.C > >>index e69de29..04ed901 100644 > >>--- gcc/testsuite/g++.dg/cpp0x/pr68116.C > >>+++ gcc/testsuite/g++.dg/cpp0x/pr68116.C > >>@@ -0,0 +1,12 @@ > >>+// PR c++/68116 > >>+// { dg-do compile { target c++11 } } > >>+ > >>+class C { > >>+ void foo (); > >>+ typedef void (C::*T) (int); > >>+ static T b[]; > >>+}; > >>+C::T C::b[] > >>+{ > >>+ T (&C::foo) > >>+}; > > > >The problem I have with approving C++ testcases is that I have no idea > >whether this is valid or not or what it expresses. You should Cc Jason > >(which I've now done). > > That's odd code--I don't approve of the cast in the initializer--but it is > well-formed. OK.
Certainly we shouldn't ICE on this, as we used to, which is what I'm trying to ensure here. The code looks weird indeed, but it's C++... ;) Thanks, Marek