Continuing fixes in the series... I'll add () where they influence the semantics of what is tested. I'll see about removing them when they are unnecessary because the underlying issue is fixed.
Index: testsuite/g++.dg/cpp0x/regress/template-function1.C =================================================================== --- testsuite/g++.dg/cpp0x/regress/template-function1.C (revision 188225) +++ testsuite/g++.dg/cpp0x/regress/template-function1.C (working copy) @@ -23,7 +23,8 @@ char c1[1]; C<c1, 0> c; template<const char *, int> struct D {}; -template<int N> struct D<__func__, N> {}; // { dg-error "cannot appear|is invalid|is not a valid|function scope|constant expression" } +template<int N> struct D<__func__, N> {}; // { dg-error "(cannot appear|is invalid|is not a valid|function scope|constant expression)" } + // { dg-warning "function scope" "function scope" { target *-*-* } 26 } char d1[1]; D<d1, 0> d;