diff mbox

[testsuite] Add missing dg-require-effective-target alloca to gcc testsuite

Message ID ed553590-4c65-30de-b028-fe154fc363cd@mentor.com
State New
Headers show

Commit Message

Tom de Vries April 28, 2017, 1:47 p.m. UTC
On 04/27/2017 10:43 AM, Tom de Vries wrote:
> On 04/26/2017 01:57 PM, Jakub Jelinek wrote:
>> On Wed, Apr 26, 2017 at 01:48:03PM +0200, Tom de Vries wrote:
>>> [ reposting with patch removed, was too big for gcc-patches@ ]
>>
>> I see in various tests you've ended up with ... { target ... } . }
>> I think it would be better to just use ... { target ... } }
>> in that case, . is the default, and if target is *-*-*, also remove the {
>> target ... }.
>>
>
> I've written sed commands for both simplifications, untested patches
> attached.
>
> [ I suppose we could drop an empty comment as the last argument as well.
> { ... "" }. ]

Attached patch implements this. Tested with x86_64 -m64/-m32.

Committed as trivial.

Thanks,
- Tom
diff mbox

Patch

Remove superfluous "" in dg-(error|warning|message|bogus)

find $(find -type d -name testsuite) -type f \
     | xargs sed -ri 's#(dg-(error|warning|message|bogus).*)" "" \}#\1" }#'

2017-04-28  Tom de Vries  <tom@codesourcery.com>

	* g++.dg/abi/bitfield3.C: Remove superfluous "" in
	dg-(error|warning|message|bogus).
	* g++.dg/conversion/dr195-1.C: Same.
	* g++.dg/conversion/dr195.C: Same.
	* g++.dg/cpp0x/constexpr-reinterpret1.C: Same.
	* g++.dg/cpp0x/gen-attrs-14.C: Same.
	* g++.dg/cpp0x/inline-ns7.C: Same.
	* g++.dg/cpp0x/variadic105.C: Same.
	* g++.dg/cpp0x/variadic65.C: Same.
	* g++.dg/expr/call2.C: Same.
	* g++.dg/expr/member-of-incomplete-type-1.C: Same.
	* g++.dg/expr/pmf-1.C: Same.
	* g++.dg/ext/altivec-types-1.C: Same.
	* g++.dg/ext/altivec-types-2.C: Same.
	* g++.dg/ext/altivec-types-3.C: Same.
	* g++.dg/ext/attrib14.C: Same.
	* g++.dg/ext/complit1.C: Same.
	* g++.dg/ext/forscope2.C: Same.
	* g++.dg/ext/gnu-inline-global-reject.C: Same.
	* g++.dg/ext/label13.C: Same.
	* g++.dg/ext/member-attr.C: Same.
	* g++.dg/ext/visibility/anon7.C: Same.
	* g++.dg/ext/visibility/visibility-7.C: Same.
	* g++.dg/ext/vla2.C: Same.
	* g++.dg/inherit/access2.C: Same.
	* g++.dg/inherit/covariant12.C: Same.
	* g++.dg/inherit/covariant14.C: Same.
	* g++.dg/inherit/namespace-as-base.C: Same.
	* g++.dg/inherit/template-as-base.C: Same.
	* g++.dg/lookup/ambig1.C: Same.
	* g++.dg/lookup/ambig2.C: Same.
	* g++.dg/lookup/ambig3.C: Same.
	* g++.dg/lookup/class-member-1.C: Same.
	* g++.dg/lookup/conv-1.C: Same.
	* g++.dg/lookup/decl1.C: Same.
	* g++.dg/lookup/koenig1.C: Same.
	* g++.dg/lookup/scoped1.C: Same.
	* g++.dg/lookup/scoped2.C: Same.
	* g++.dg/lookup/two-stage4.C: Same.
	* g++.dg/lookup/used-before-declaration.C: Same.
	* g++.dg/lookup/using.C: Same.
	* g++.dg/lookup/using17.C: Same.
	* g++.dg/lookup/using2.C: Same.
	* g++.dg/other/abstract2.C: Same.
	* g++.dg/other/classkey1.C: Same.
	* g++.dg/other/component1.C: Same.
	* g++.dg/other/const1.C: Same.
	* g++.dg/other/const2.C: Same.
	* g++.dg/other/conversion1.C: Same.
	* g++.dg/other/do1.C: Same.
	* g++.dg/other/error1.C: Same.
	* g++.dg/other/error10.C: Same.
	* g++.dg/other/error3.C: Same.
	* g++.dg/other/error4.C: Same.
	* g++.dg/other/error5.C: Same.
	* g++.dg/other/error8.C: Same.
	* g++.dg/other/error9.C: Same.
	* g++.dg/other/field1.C: Same.
	* g++.dg/other/init1.C: Same.
	* g++.dg/other/ptrmem2.C: Same.
	* g++.dg/other/return1.C: Same.
	* g++.dg/overload/builtin3.C: Same.
	* g++.dg/overload/error1.C: Same.
	* g++.dg/overload/error2.C: Same.
	* g++.dg/overload/koenig2.C: Same.
	* g++.dg/overload/pmf1.C: Same.
	* g++.dg/parse/args1.C: Same.
	* g++.dg/parse/attr3.C: Same.
	* g++.dg/parse/constant4.C: Same.
	* g++.dg/parse/crash10.C: Same.
	* g++.dg/parse/crash18.C: Same.
	* g++.dg/parse/crash19.C: Same.
	* g++.dg/parse/crash20.C: Same.
	* g++.dg/parse/crash21.C: Same.
	* g++.dg/parse/crash22.C: Same.
	* g++.dg/parse/crash32.C: Same.
	* g++.dg/parse/decl-specifier-1.C: Same.
	* g++.dg/parse/error58.C: Same.
	* g++.dg/parse/local-class1.C: Same.
	* g++.dg/parse/non-dependent2.C: Same.
	* g++.dg/parse/parameter-declaration-1.C: Same.
	* g++.dg/parse/ptrmem2.C: Same.
	* g++.dg/parse/ptrmem3.C: Same.
	* g++.dg/parse/saved1.C: Same.
	* g++.dg/tc1/dr101.C: Same.
	* g++.dg/tc1/dr142.C: Same.
	* g++.dg/tc1/dr176.C: Same.
	* g++.dg/template/conv4.C: Same.
	* g++.dg/template/crash56.C: Same.
	* g++.dg/template/dependent-expr2.C: Same.
	* g++.dg/template/error1.C: Same.
	* g++.dg/template/error2.C: Same.
	* g++.dg/template/explicit6.C: Same.
	* g++.dg/template/init-list.C: Same.
	* g++.dg/template/local1.C: Same.
	* g++.dg/template/lookup2.C: Same.
	* g++.dg/template/meminit2.C: Same.
	* g++.dg/template/nontype25.C: Same.
	* g++.dg/template/ptrmem2.C: Same.
	* g++.dg/template/qualttp19.C: Same.
	* g++.dg/template/qualttp20.C: Same.
	* g++.dg/template/ttp3.C: Same.
	* g++.dg/template/unify4.C: Same.
	* g++.dg/template/unify6.C: Same.
	* g++.dg/template/unify7.C: Same.
	* g++.dg/template/warn1.C: Same.
	* g++.dg/tree-ssa/dom-invalid.C: Same.
	* g++.dg/ubsan/shift-1.C: Same.
	* g++.dg/warn/Wunused-2.C: Same.
	* g++.dg/warn/Wunused-4.C: Same.
	* g++.dg/warn/Wunused-6.C: Same.
	* g++.dg/warn/deprecated-6.C: Same.
	* g++.dg/warn/deprecated.C: Same.
	* g++.dg/warn/effc1.C: Same.
	* g++.dg/warn/effc3.C: Same.
	* g++.dg/warn/incomplete1.C: Same.
	* g++.dg/warn/inline1.C: Same.
	* g++.dg/warn/noeffect2.C: Same.
	* g++.dg/warn/noeffect4.C: Same.
	* g++.dg/warn/oldcast1.C: Same.
	* g++.dg/warn/sentinel.C: Same.
	* g++.dg/warn/unit-1.C: Same.
	* g++.old-deja/g++.pt/inherit2.C: Same.
	* g++.old-deja/g++.pt/overload8.C: Same.
	* gcc.dg/20000926-1.c: Same.
	* gcc.dg/20040223-1.c: Same.
	* gcc.dg/Warray-bounds-7.c: Same.
	* gcc.dg/alias-1.c: Same.
	* gcc.dg/alias-12.c: Same.
	* gcc.dg/alias-13.c: Same.
	* gcc.dg/alias-2.c: Same.
	* gcc.dg/array-13.c: Same.
	* gcc.dg/array-4.c: Same.
	* gcc.dg/attr-ifunc-2.c: Same.
	* gcc.dg/attr-invalid.c: Same.
	* gcc.dg/attr-noinline.c: Same.
	* gcc.dg/bitfld-2.c: Same.
	* gcc.dg/c90-const-expr-7.c: Same.
	* gcc.dg/c99-const-expr-7.c: Same.
	* gcc.dg/cpp/20000625-1.c: Same.
	* gcc.dg/cpp/charconst-4.c: Same.
	* gcc.dg/cpp/include2.c: Same.
	* gcc.dg/cpp/include2a.c: Same.
	* gcc.dg/decl-4.c: Same.
	* gcc.dg/deprecated-4.c: Same.
	* gcc.dg/deprecated.c: Same.
	* gcc.dg/dfp/altivec-types.c: Same.
	* gcc.dg/float-range-1.c: Same.
	* gcc.dg/pack-test-3.c: Same.
	* gcc.dg/pr11492.c: Same.
	* gcc.dg/pr15360-1.c: Same.
	* gcc.dg/pr37908.c: Same.
	* gcc.dg/pr53265.c: Same.
	* gcc.dg/pr57287-2.c: Same.
	* gcc.dg/pr57287.c: Same.
	* gcc.dg/redecl-1.c: Same.
	* gcc.dg/sync-3.c: Same.
	* gcc.dg/two-types-1.c: Same.
	* gcc.dg/two-types-2.c: Same.
	* gcc.dg/two-types-4.c: Same.
	* gcc.dg/two-types-5.c: Same.
	* gcc.dg/two-types-6.c: Same.
	* gcc.dg/two-types-7.c: Same.
	* gcc.dg/two-types-8.c: Same.
	* gcc.dg/two-types-9.c: Same.
	* gcc.dg/uninit-I.c: Same.
	* gcc.dg/uninit-pr19430.c: Same.
	* gcc.dg/visibility-7.c: Same.
	* gcc.dg/winline-10.c: Same.
	* gcc.dg/winline-2.c: Same.
	* gcc.dg/winline-3.c: Same.
	* gcc.dg/winline-9.c: Same.
	* gcc.target/i386/attr-returns_twice-1.c: Same.
	* gcc.target/i386/chkp-const-check-2.c: Same.
	* gcc.target/i386/chkp-label-address.c: Same.
	* gcc.target/i386/chkp-remove-bndint-2.c: Same.
	* gcc.target/i386/pr39162.c: Same.
	* gcc.target/i386/sse-5.c: Same.
	* gcc.target/powerpc/altivec-types-1.c: Same.
	* gcc.target/powerpc/altivec-types-2.c: Same.
	* gcc.target/powerpc/altivec-types-3.c: Same.
	* gcc.target/powerpc/float128-mix.c: Same.
	* gcc.target/powerpc/no-r11-3.c: Same.
	* gcc.target/spu/Wmain.c: Same.
	* gcc.target/spu/ea/errors2.c: Same.
	* gfortran.dg/assignment_1.f90: Same.
	* gfortran.dg/common_3.f90: Same.
	* gfortran.dg/der_io_1.f90: Same.
	* gfortran.dg/g77/20030326-1.f: Same.
	* gfortran.dg/g77/9263.f: Same.
	* gfortran.dg/g77/960317-1.f: Same.
	* gfortran.dg/g77/970625-2.f: Same.
	* gfortran.dg/g77/980615-0.f: Same.
	* gfortran.dg/g77/check0.f: Same.
	* gfortran.dg/g77/dnrm2.f: Same.
	* gfortran.dg/g77/pr9258.f: Same.
	* gfortran.dg/ichar_1.f90: Same.
	* gfortran.dg/interface_1.f90: Same.
	* gfortran.dg/namelist_1.f90: Same.
	* gfortran.dg/namelist_2.f90: Same.
	* gfortran.dg/namelist_3.f90: Same.
	* gfortran.dg/namelist_print_2.f: Same.
	* gfortran.dg/oldstyle_1.f90: Same.
	* gfortran.dg/runtime_warning_1.f90: Same.
	* gfortran.dg/underflow.f90: Same.
	* gnat.dg/specs/integer_value.ads: Same.
	* obj-c++.dg/fsf-package-0.m: Same.
	* objc.dg/two-types-1.m: Same.

---
 gcc/testsuite/g++.dg/abi/bitfield3.C               |   4 +-
 gcc/testsuite/g++.dg/conversion/dr195-1.C          |   4 +-
 gcc/testsuite/g++.dg/conversion/dr195.C            |   4 +-
 .../g++.dg/cpp0x/constexpr-reinterpret1.C          |   2 +-
 gcc/testsuite/g++.dg/cpp0x/gen-attrs-14.C          |   2 +-
 gcc/testsuite/g++.dg/cpp0x/inline-ns7.C            |   6 +-
 gcc/testsuite/g++.dg/cpp0x/variadic105.C           |   2 +-
 gcc/testsuite/g++.dg/cpp0x/variadic65.C            |   2 +-
 gcc/testsuite/g++.dg/expr/call2.C                  |   2 +-
 .../g++.dg/expr/member-of-incomplete-type-1.C      |   2 +-
 gcc/testsuite/g++.dg/expr/pmf-1.C                  |   6 +-
 gcc/testsuite/g++.dg/ext/altivec-types-1.C         | 110 ++++++++++-----------
 gcc/testsuite/g++.dg/ext/altivec-types-2.C         |  14 +--
 gcc/testsuite/g++.dg/ext/altivec-types-3.C         |  14 +--
 gcc/testsuite/g++.dg/ext/attrib14.C                |   2 +-
 gcc/testsuite/g++.dg/ext/complit1.C                |   2 +-
 gcc/testsuite/g++.dg/ext/forscope2.C               |   4 +-
 .../g++.dg/ext/gnu-inline-global-reject.C          |  36 +++----
 gcc/testsuite/g++.dg/ext/label13.C                 |   2 +-
 gcc/testsuite/g++.dg/ext/member-attr.C             |   4 +-
 gcc/testsuite/g++.dg/ext/visibility/anon7.C        |   2 +-
 gcc/testsuite/g++.dg/ext/visibility/visibility-7.C |   4 +-
 gcc/testsuite/g++.dg/ext/vla2.C                    |   2 +-
 gcc/testsuite/g++.dg/inherit/access2.C             |   2 +-
 gcc/testsuite/g++.dg/inherit/covariant12.C         |   4 +-
 gcc/testsuite/g++.dg/inherit/covariant14.C         |   4 +-
 gcc/testsuite/g++.dg/inherit/namespace-as-base.C   |   2 +-
 gcc/testsuite/g++.dg/inherit/template-as-base.C    |   2 +-
 gcc/testsuite/g++.dg/lookup/ambig1.C               |   4 +-
 gcc/testsuite/g++.dg/lookup/ambig2.C               |   4 +-
 gcc/testsuite/g++.dg/lookup/ambig3.C               |   4 +-
 gcc/testsuite/g++.dg/lookup/class-member-1.C       |   2 +-
 gcc/testsuite/g++.dg/lookup/conv-1.C               |   6 +-
 gcc/testsuite/g++.dg/lookup/decl1.C                |  10 +-
 gcc/testsuite/g++.dg/lookup/koenig1.C              |   4 +-
 gcc/testsuite/g++.dg/lookup/scoped1.C              |   4 +-
 gcc/testsuite/g++.dg/lookup/scoped2.C              |   2 +-
 gcc/testsuite/g++.dg/lookup/two-stage4.C           |   2 +-
 .../g++.dg/lookup/used-before-declaration.C        |   2 +-
 gcc/testsuite/g++.dg/lookup/using.C                |   2 +-
 gcc/testsuite/g++.dg/lookup/using17.C              |   2 +-
 gcc/testsuite/g++.dg/lookup/using2.C               |  10 +-
 gcc/testsuite/g++.dg/other/abstract2.C             |   2 +-
 gcc/testsuite/g++.dg/other/classkey1.C             |   8 +-
 gcc/testsuite/g++.dg/other/component1.C            |  12 +--
 gcc/testsuite/g++.dg/other/const1.C                |   2 +-
 gcc/testsuite/g++.dg/other/const2.C                |   2 +-
 gcc/testsuite/g++.dg/other/conversion1.C           |   2 +-
 gcc/testsuite/g++.dg/other/do1.C                   |   2 +-
 gcc/testsuite/g++.dg/other/error1.C                |   2 +-
 gcc/testsuite/g++.dg/other/error10.C               |   2 +-
 gcc/testsuite/g++.dg/other/error3.C                |   2 +-
 gcc/testsuite/g++.dg/other/error4.C                |   4 +-
 gcc/testsuite/g++.dg/other/error5.C                |   4 +-
 gcc/testsuite/g++.dg/other/error8.C                |   2 +-
 gcc/testsuite/g++.dg/other/error9.C                |   4 +-
 gcc/testsuite/g++.dg/other/field1.C                |   8 +-
 gcc/testsuite/g++.dg/other/init1.C                 |   2 +-
 gcc/testsuite/g++.dg/other/ptrmem2.C               |   4 +-
 gcc/testsuite/g++.dg/other/return1.C               |   2 +-
 gcc/testsuite/g++.dg/overload/builtin3.C           |   2 +-
 gcc/testsuite/g++.dg/overload/error1.C             |   4 +-
 gcc/testsuite/g++.dg/overload/error2.C             |   4 +-
 gcc/testsuite/g++.dg/overload/koenig2.C            |   2 +-
 gcc/testsuite/g++.dg/overload/pmf1.C               |   2 +-
 gcc/testsuite/g++.dg/parse/args1.C                 |   2 +-
 gcc/testsuite/g++.dg/parse/attr3.C                 |   4 +-
 gcc/testsuite/g++.dg/parse/constant4.C             |   4 +-
 gcc/testsuite/g++.dg/parse/crash10.C               |   2 +-
 gcc/testsuite/g++.dg/parse/crash18.C               |   2 +-
 gcc/testsuite/g++.dg/parse/crash19.C               |   2 +-
 gcc/testsuite/g++.dg/parse/crash20.C               |   4 +-
 gcc/testsuite/g++.dg/parse/crash21.C               |   4 +-
 gcc/testsuite/g++.dg/parse/crash22.C               |   4 +-
 gcc/testsuite/g++.dg/parse/crash32.C               |   2 +-
 gcc/testsuite/g++.dg/parse/decl-specifier-1.C      |   2 +-
 gcc/testsuite/g++.dg/parse/error58.C               |   2 +-
 gcc/testsuite/g++.dg/parse/local-class1.C          |   2 +-
 gcc/testsuite/g++.dg/parse/non-dependent2.C        |   8 +-
 .../g++.dg/parse/parameter-declaration-1.C         |   2 +-
 gcc/testsuite/g++.dg/parse/ptrmem2.C               |   2 +-
 gcc/testsuite/g++.dg/parse/ptrmem3.C               |   2 +-
 gcc/testsuite/g++.dg/parse/saved1.C                |   6 +-
 gcc/testsuite/g++.dg/tc1/dr101.C                   |   4 +-
 gcc/testsuite/g++.dg/tc1/dr142.C                   |  10 +-
 gcc/testsuite/g++.dg/tc1/dr176.C                   |   4 +-
 gcc/testsuite/g++.dg/template/conv4.C              |   2 +-
 gcc/testsuite/g++.dg/template/crash56.C            |   2 +-
 gcc/testsuite/g++.dg/template/dependent-expr2.C    |   2 +-
 gcc/testsuite/g++.dg/template/error1.C             |   4 +-
 gcc/testsuite/g++.dg/template/error2.C             |   6 +-
 gcc/testsuite/g++.dg/template/explicit6.C          |   2 +-
 gcc/testsuite/g++.dg/template/init-list.C          |   2 +-
 gcc/testsuite/g++.dg/template/local1.C             |   2 +-
 gcc/testsuite/g++.dg/template/lookup2.C            |   4 +-
 gcc/testsuite/g++.dg/template/meminit2.C           |   2 +-
 gcc/testsuite/g++.dg/template/nontype25.C          |   2 +-
 gcc/testsuite/g++.dg/template/ptrmem2.C            |   2 +-
 gcc/testsuite/g++.dg/template/qualttp19.C          |   2 +-
 gcc/testsuite/g++.dg/template/qualttp20.C          |   4 +-
 gcc/testsuite/g++.dg/template/ttp3.C               |   4 +-
 gcc/testsuite/g++.dg/template/unify4.C             |   2 +-
 gcc/testsuite/g++.dg/template/unify6.C             |   2 +-
 gcc/testsuite/g++.dg/template/unify7.C             |   2 +-
 gcc/testsuite/g++.dg/template/warn1.C              |   4 +-
 gcc/testsuite/g++.dg/tree-ssa/dom-invalid.C        |   2 +-
 gcc/testsuite/g++.dg/ubsan/shift-1.C               |  12 +--
 gcc/testsuite/g++.dg/warn/Wunused-2.C              |   2 +-
 gcc/testsuite/g++.dg/warn/Wunused-4.C              |   4 +-
 gcc/testsuite/g++.dg/warn/Wunused-6.C              |   4 +-
 gcc/testsuite/g++.dg/warn/deprecated-6.C           |  46 ++++-----
 gcc/testsuite/g++.dg/warn/deprecated.C             |  46 ++++-----
 gcc/testsuite/g++.dg/warn/effc1.C                  |   2 +-
 gcc/testsuite/g++.dg/warn/effc3.C                  |   6 +-
 gcc/testsuite/g++.dg/warn/incomplete1.C            |   4 +-
 gcc/testsuite/g++.dg/warn/inline1.C                |   4 +-
 gcc/testsuite/g++.dg/warn/noeffect2.C              |   6 +-
 gcc/testsuite/g++.dg/warn/noeffect4.C              |   8 +-
 gcc/testsuite/g++.dg/warn/oldcast1.C               |   2 +-
 gcc/testsuite/g++.dg/warn/sentinel.C               |   4 +-
 gcc/testsuite/g++.dg/warn/unit-1.C                 |   2 +-
 gcc/testsuite/g++.old-deja/g++.pt/inherit2.C       |   8 +-
 gcc/testsuite/g++.old-deja/g++.pt/overload8.C      |   2 +-
 gcc/testsuite/gcc.dg/20000926-1.c                  |   2 +-
 gcc/testsuite/gcc.dg/20040223-1.c                  |  10 +-
 gcc/testsuite/gcc.dg/Warray-bounds-7.c             |   2 +-
 gcc/testsuite/gcc.dg/alias-1.c                     |   4 +-
 gcc/testsuite/gcc.dg/alias-12.c                    |   2 +-
 gcc/testsuite/gcc.dg/alias-13.c                    |   2 +-
 gcc/testsuite/gcc.dg/alias-2.c                     |   2 +-
 gcc/testsuite/gcc.dg/array-13.c                    |   2 +-
 gcc/testsuite/gcc.dg/array-4.c                     |   2 +-
 gcc/testsuite/gcc.dg/attr-ifunc-2.c                |  10 +-
 gcc/testsuite/gcc.dg/attr-invalid.c                |  48 ++++-----
 gcc/testsuite/gcc.dg/attr-noinline.c               |  30 +++---
 gcc/testsuite/gcc.dg/bitfld-2.c                    |   8 +-
 gcc/testsuite/gcc.dg/c90-const-expr-7.c            |   2 +-
 gcc/testsuite/gcc.dg/c99-const-expr-7.c            |   2 +-
 gcc/testsuite/gcc.dg/cpp/20000625-1.c              |   2 +-
 gcc/testsuite/gcc.dg/cpp/charconst-4.c             |   4 +-
 gcc/testsuite/gcc.dg/cpp/include2.c                |   2 +-
 gcc/testsuite/gcc.dg/cpp/include2a.c               |   2 +-
 gcc/testsuite/gcc.dg/decl-4.c                      |   8 +-
 gcc/testsuite/gcc.dg/deprecated-4.c                |  38 +++----
 gcc/testsuite/gcc.dg/deprecated.c                  |  46 ++++-----
 gcc/testsuite/gcc.dg/dfp/altivec-types.c           |   6 +-
 gcc/testsuite/gcc.dg/float-range-1.c               |   2 +-
 gcc/testsuite/gcc.dg/pack-test-3.c                 |   6 +-
 gcc/testsuite/gcc.dg/pr11492.c                     |   2 +-
 gcc/testsuite/gcc.dg/pr15360-1.c                   |   4 +-
 gcc/testsuite/gcc.dg/pr37908.c                     |   2 +-
 gcc/testsuite/gcc.dg/pr53265.c                     |   6 +-
 gcc/testsuite/gcc.dg/pr57287-2.c                   |   2 +-
 gcc/testsuite/gcc.dg/pr57287.c                     |   2 +-
 gcc/testsuite/gcc.dg/redecl-1.c                    |   6 +-
 gcc/testsuite/gcc.dg/sync-3.c                      |   4 +-
 gcc/testsuite/gcc.dg/two-types-1.c                 |   2 +-
 gcc/testsuite/gcc.dg/two-types-2.c                 |   2 +-
 gcc/testsuite/gcc.dg/two-types-4.c                 |   2 +-
 gcc/testsuite/gcc.dg/two-types-5.c                 |   4 +-
 gcc/testsuite/gcc.dg/two-types-6.c                 |   4 +-
 gcc/testsuite/gcc.dg/two-types-7.c                 |   6 +-
 gcc/testsuite/gcc.dg/two-types-8.c                 |   4 +-
 gcc/testsuite/gcc.dg/two-types-9.c                 |   4 +-
 gcc/testsuite/gcc.dg/uninit-I.c                    |   2 +-
 gcc/testsuite/gcc.dg/uninit-pr19430.c              |   2 +-
 gcc/testsuite/gcc.dg/visibility-7.c                |   4 +-
 gcc/testsuite/gcc.dg/winline-10.c                  |   2 +-
 gcc/testsuite/gcc.dg/winline-2.c                   |   2 +-
 gcc/testsuite/gcc.dg/winline-3.c                   |   2 +-
 gcc/testsuite/gcc.dg/winline-9.c                   |   2 +-
 .../gcc.target/i386/attr-returns_twice-1.c         |   2 +-
 gcc/testsuite/gcc.target/i386/chkp-const-check-2.c |   2 +-
 gcc/testsuite/gcc.target/i386/chkp-label-address.c |   2 +-
 .../gcc.target/i386/chkp-remove-bndint-2.c         |   2 +-
 gcc/testsuite/gcc.target/i386/pr39162.c            |   2 +-
 gcc/testsuite/gcc.target/i386/sse-5.c              |   2 +-
 gcc/testsuite/gcc.target/powerpc/altivec-types-1.c | 108 ++++++++++----------
 gcc/testsuite/gcc.target/powerpc/altivec-types-2.c |  14 +--
 gcc/testsuite/gcc.target/powerpc/altivec-types-3.c |  14 +--
 gcc/testsuite/gcc.target/powerpc/float128-mix.c    |   4 +-
 gcc/testsuite/gcc.target/powerpc/no-r11-3.c        |   2 +-
 gcc/testsuite/gcc.target/spu/Wmain.c               |   2 +-
 gcc/testsuite/gcc.target/spu/ea/errors2.c          |   2 +-
 gcc/testsuite/gfortran.dg/assignment_1.f90         |   2 +-
 gcc/testsuite/gfortran.dg/common_3.f90             |   2 +-
 gcc/testsuite/gfortran.dg/der_io_1.f90             |   2 +-
 gcc/testsuite/gfortran.dg/g77/20030326-1.f         |   2 +-
 gcc/testsuite/gfortran.dg/g77/9263.f               |   6 +-
 gcc/testsuite/gfortran.dg/g77/960317-1.f           |   2 +-
 gcc/testsuite/gfortran.dg/g77/970625-2.f           |  14 +--
 gcc/testsuite/gfortran.dg/g77/980615-0.f           |   2 +-
 gcc/testsuite/gfortran.dg/g77/check0.f             |   4 +-
 gcc/testsuite/gfortran.dg/g77/dnrm2.f              |  10 +-
 gcc/testsuite/gfortran.dg/g77/pr9258.f             |   8 +-
 gcc/testsuite/gfortran.dg/ichar_1.f90              |  20 ++--
 gcc/testsuite/gfortran.dg/interface_1.f90          |   2 +-
 gcc/testsuite/gfortran.dg/namelist_1.f90           |   2 +-
 gcc/testsuite/gfortran.dg/namelist_2.f90           |   2 +-
 gcc/testsuite/gfortran.dg/namelist_3.f90           |   2 +-
 gcc/testsuite/gfortran.dg/namelist_print_2.f       |   2 +-
 gcc/testsuite/gfortran.dg/oldstyle_1.f90           |   6 +-
 gcc/testsuite/gfortran.dg/runtime_warning_1.f90    |   2 +-
 gcc/testsuite/gfortran.dg/underflow.f90            |   2 +-
 gcc/testsuite/gnat.dg/specs/integer_value.ads      |   2 +-
 gcc/testsuite/obj-c++.dg/fsf-package-0.m           |   2 +-
 gcc/testsuite/objc.dg/two-types-1.m                |   4 +-
 207 files changed, 625 insertions(+), 625 deletions(-)

diff --git a/gcc/testsuite/g++.dg/abi/bitfield3.C b/gcc/testsuite/g++.dg/abi/bitfield3.C
index 6908ab6..fe9528f 100644
--- a/gcc/testsuite/g++.dg/abi/bitfield3.C
+++ b/gcc/testsuite/g++.dg/abi/bitfield3.C
@@ -11,7 +11,7 @@ 
 struct A
 {
   char a;
-  int b : 224;	// { dg-warning "exceeds its type" "" }
+  int b : 224;	// { dg-warning "exceeds its type" }
   char c;
 } a, a4[4];
 
@@ -39,7 +39,7 @@  struct D
 struct E
 {
   char m;
-  long long n : 160;	// { dg-warning "exceeds its type" "" }
+  long long n : 160;	// { dg-warning "exceeds its type" }
   char o;
 } e, e4[4];
 
diff --git a/gcc/testsuite/g++.dg/conversion/dr195-1.C b/gcc/testsuite/g++.dg/conversion/dr195-1.C
index ca38580..8b3f285 100644
--- a/gcc/testsuite/g++.dg/conversion/dr195-1.C
+++ b/gcc/testsuite/g++.dg/conversion/dr195-1.C
@@ -29,6 +29,6 @@  void foo ()
   po = reinterpret_cast <PO>(pf);
 
   /* These will never be ok, as they are implicit.  */
-  pv = pf; // { dg-error "invalid conversion" "" }
-  pf = pv; // { dg-error "invalid conversion" "" }
+  pv = pf; // { dg-error "invalid conversion" }
+  pf = pv; // { dg-error "invalid conversion" }
 }
diff --git a/gcc/testsuite/g++.dg/conversion/dr195.C b/gcc/testsuite/g++.dg/conversion/dr195.C
index cb26623..f914214 100644
--- a/gcc/testsuite/g++.dg/conversion/dr195.C
+++ b/gcc/testsuite/g++.dg/conversion/dr195.C
@@ -27,6 +27,6 @@  void foo ()
   po = reinterpret_cast <PO>(pf);
 
   /* These will never be ok, as they are implicit.  */
-  pv = pf; // { dg-error "invalid conversion" "" }
-  pf = pv; // { dg-error "invalid conversion" "" }
+  pv = pf; // { dg-error "invalid conversion" }
+  pf = pv; // { dg-error "invalid conversion" }
 }
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-reinterpret1.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-reinterpret1.C
index 0ea42a0..d2ee2ba 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-reinterpret1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-reinterpret1.C
@@ -16,7 +16,7 @@  public:
 
   constexpr static Inner & getInner()
   /* I am surprised this is considered a constexpr */
-  { return *((Inner *)4); } // { dg-error "reinterpret_cast" "" }
+  { return *((Inner *)4); } // { dg-error "reinterpret_cast" }
 };
 
 B B::instance;
diff --git a/gcc/testsuite/g++.dg/cpp0x/gen-attrs-14.C b/gcc/testsuite/g++.dg/cpp0x/gen-attrs-14.C
index d646d27..a512df7 100644
--- a/gcc/testsuite/g++.dg/cpp0x/gen-attrs-14.C
+++ b/gcc/testsuite/g++.dg/cpp0x/gen-attrs-14.C
@@ -3,7 +3,7 @@ 
 // The bogus attribute is ignored, but was in TYPE_ATTRIBUTES during
 // parsing of the class, causing some variants to have it and some not.
 
-struct [[gnu::bogus]] A	// { dg-warning "ignored" "" }
+struct [[gnu::bogus]] A	// { dg-warning "ignored" }
 {
     virtual ~A();
     void foo(const A&);
diff --git a/gcc/testsuite/g++.dg/cpp0x/inline-ns7.C b/gcc/testsuite/g++.dg/cpp0x/inline-ns7.C
index d9f99a8..16240af 100644
--- a/gcc/testsuite/g++.dg/cpp0x/inline-ns7.C
+++ b/gcc/testsuite/g++.dg/cpp0x/inline-ns7.C
@@ -5,12 +5,12 @@ 
 
 namespace foo {
   inline namespace foo_impl {
-    class T; // { dg-message "T" "" }
+    class T; // { dg-message "T" }
   }
 }
 namespace bar {
   inline namespace bar_impl {
-    class T; // { dg-message "T" "" }
+    class T; // { dg-message "T" }
   }
   using namespace foo;
 }
@@ -21,4 +21,4 @@  namespace baz {
 
 foo::T *t1;
 bar::T *t2;
-baz::T *t3; // { dg-error "(ambiguous|does not name a type)" "" }
+baz::T *t3; // { dg-error "(ambiguous|does not name a type)" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic105.C b/gcc/testsuite/g++.dg/cpp0x/variadic105.C
index 4ba384c..1ffc0fc 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic105.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic105.C
@@ -20,6 +20,6 @@  struct call_sum {
 
 int main() {
   // This shouldn't be an error; this is bug 35722.
-  reverse<call_sum>(1,2);	// { dg-bogus "no match" "" }
+  reverse<call_sum>(1,2);	// { dg-bogus "no match" }
   // { dg-bogus "sorry, unimplemented" "candidate explanation" { target *-*-* } 6 }
 }
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic65.C b/gcc/testsuite/g++.dg/cpp0x/variadic65.C
index e2ef931..0eef2a5 100644
--- a/gcc/testsuite/g++.dg/cpp0x/variadic65.C
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic65.C
@@ -5,7 +5,7 @@  template<typename T1 = unused, typename T2 = unused, typename T3 = unused,
 struct tuple {};
 
 template<typename... Args>
-tuple<Args...> foo() { } // { dg-bogus "cannot expand" "" }
+tuple<Args...> foo() { } // { dg-bogus "cannot expand" }
 
 int main()
 {
diff --git a/gcc/testsuite/g++.dg/expr/call2.C b/gcc/testsuite/g++.dg/expr/call2.C
index 3b7398a..c4a2dac 100644
--- a/gcc/testsuite/g++.dg/expr/call2.C
+++ b/gcc/testsuite/g++.dg/expr/call2.C
@@ -10,5 +10,5 @@  class D;
 bool mm(D); 
  
 void g(C& f) { 
-  mm(f); // { dg-error "parameter" "" }
+  mm(f); // { dg-error "parameter" }
 }
diff --git a/gcc/testsuite/g++.dg/expr/member-of-incomplete-type-1.C b/gcc/testsuite/g++.dg/expr/member-of-incomplete-type-1.C
index 9fe65bc..2f6a04c 100644
--- a/gcc/testsuite/g++.dg/expr/member-of-incomplete-type-1.C
+++ b/gcc/testsuite/g++.dg/expr/member-of-incomplete-type-1.C
@@ -7,6 +7,6 @@  struct A;
 
 int main()
 {
-    A::g();           // { dg-error "incomplete" "" }
+    A::g();           // { dg-error "incomplete" }
 }
 
diff --git a/gcc/testsuite/g++.dg/expr/pmf-1.C b/gcc/testsuite/g++.dg/expr/pmf-1.C
index 90f3431..e6b7219 100644
--- a/gcc/testsuite/g++.dg/expr/pmf-1.C
+++ b/gcc/testsuite/g++.dg/expr/pmf-1.C
@@ -7,13 +7,13 @@ 
 struct A 
 {
   void f();
-  void foo(void (A::*)(int));       // { dg-message "void A::foo|no known conversion" "" }
+  void foo(void (A::*)(int));       // { dg-message "void A::foo|no known conversion" }
   template<typename T>
     void g(T);
   void h()
   {
     void (A::*p)() = &A::f;
-    void (A::*q)() = &(A::f);       // { dg-error "parenthesized" "" }
-    foo(&g<int>);                   // { dg-error "no matching" "" }
+    void (A::*q)() = &(A::f);       // { dg-error "parenthesized" }
+    foo(&g<int>);                   // { dg-error "no matching" }
   }
 };
diff --git a/gcc/testsuite/g++.dg/ext/altivec-types-1.C b/gcc/testsuite/g++.dg/ext/altivec-types-1.C
index f54aeec..afcd569 100644
--- a/gcc/testsuite/g++.dg/ext/altivec-types-1.C
+++ b/gcc/testsuite/g++.dg/ext/altivec-types-1.C
@@ -27,62 +27,62 @@  __vector float vf;
 
 /* These should be rejected as invalid AltiVec types.  */
 
-__vector bool vb;			/* { dg-error "AltiVec types" "" } */
-__vector long long vll;			/* { dg-error "AltiVec types" "" } */
-__vector unsigned long long vull;	/* { dg-error "AltiVec types" "" } */
-__vector signed long long vsll;		/* { dg-error "AltiVec types" "" } */
-__vector __bool long long vbll;		/* { dg-error "AltiVec types" "" } */
-__vector long long int vlli;		/* { dg-error "AltiVec types" "" } */
-__vector unsigned long long int vulli;	/* { dg-error "AltiVec types" "" } */
-__vector signed long long int vslli;	/* { dg-error "AltiVec types" "" } */
-__vector __bool long long int vblli;	/* { dg-error "AltiVec types" "" } */
-__vector double vd1;			/* { dg-error "AltiVec types" "" } */
-__vector long double vld;		/* { dg-error "AltiVec types" "" } */
-__vector _Complex float vcf;		/* { dg-error "AltiVec types" "" } */
-__vector _Complex double vcd;		/* { dg-error "AltiVec types" "" } */
-__vector _Complex long double vcld;	/* { dg-error "AltiVec types" "" } */
-__vector _Complex signed char vcsc;	/* { dg-error "AltiVec types" "" } */
-__vector _Complex unsigned char vcuc;	/* { dg-error "AltiVec types" "" } */
-__vector _Complex short vcss;		/* { dg-error "AltiVec types" "" } */
-__vector _Complex unsigned short vcus;	/* { dg-error "AltiVec types" "" } */
-__vector _Complex int vcsi;		/* { dg-error "AltiVec types" "" } */
-__vector _Complex unsigned int vcui;	/* { dg-error "AltiVec types" "" } */
-__vector _Complex long vcsl;		/* { dg-error "AltiVec types" "" } */
-__vector _Complex unsigned long vcul;	/* { dg-error "AltiVec types" "" } */
-__vector _Complex long long vcsll;	/* { dg-error "AltiVec types" "" } */
-__vector _Complex unsigned long long vcull; /* { dg-error "AltiVec types" "" } */
-__vector __complex float v_cf;		/* { dg-error "AltiVec types" "" } */
-__vector __complex double v_cd;		/* { dg-error "AltiVec types" "" } */
-__vector __complex long double v_cld;	/* { dg-error "AltiVec types" "" } */
-__vector __complex signed char v_csc;	/* { dg-error "AltiVec types" "" } */
-__vector __complex unsigned char v_cuc;	/* { dg-error "AltiVec types" "" } */
-__vector __complex short v_css;		/* { dg-error "AltiVec types" "" } */
-__vector __complex unsigned short v_cus; /* { dg-error "AltiVec types" "" } */
-__vector __complex int v_csi;		/* { dg-error "AltiVec types" "" } */
-__vector __complex unsigned int v_cui;	/* { dg-error "AltiVec types" "" } */
-__vector __complex long v_csl;		/* { dg-error "AltiVec types" "" } */
-__vector __complex unsigned long v_cul;	/* { dg-error "AltiVec types" "" } */
-__vector __complex long long v_csll;	/* { dg-error "AltiVec types" "" } */
-__vector __complex unsigned long long v_cull; /* { dg-error "AltiVec types" "" } */
+__vector bool vb;			/* { dg-error "AltiVec types" } */
+__vector long long vll;			/* { dg-error "AltiVec types" } */
+__vector unsigned long long vull;	/* { dg-error "AltiVec types" } */
+__vector signed long long vsll;		/* { dg-error "AltiVec types" } */
+__vector __bool long long vbll;		/* { dg-error "AltiVec types" } */
+__vector long long int vlli;		/* { dg-error "AltiVec types" } */
+__vector unsigned long long int vulli;	/* { dg-error "AltiVec types" } */
+__vector signed long long int vslli;	/* { dg-error "AltiVec types" } */
+__vector __bool long long int vblli;	/* { dg-error "AltiVec types" } */
+__vector double vd1;			/* { dg-error "AltiVec types" } */
+__vector long double vld;		/* { dg-error "AltiVec types" } */
+__vector _Complex float vcf;		/* { dg-error "AltiVec types" } */
+__vector _Complex double vcd;		/* { dg-error "AltiVec types" } */
+__vector _Complex long double vcld;	/* { dg-error "AltiVec types" } */
+__vector _Complex signed char vcsc;	/* { dg-error "AltiVec types" } */
+__vector _Complex unsigned char vcuc;	/* { dg-error "AltiVec types" } */
+__vector _Complex short vcss;		/* { dg-error "AltiVec types" } */
+__vector _Complex unsigned short vcus;	/* { dg-error "AltiVec types" } */
+__vector _Complex int vcsi;		/* { dg-error "AltiVec types" } */
+__vector _Complex unsigned int vcui;	/* { dg-error "AltiVec types" } */
+__vector _Complex long vcsl;		/* { dg-error "AltiVec types" } */
+__vector _Complex unsigned long vcul;	/* { dg-error "AltiVec types" } */
+__vector _Complex long long vcsll;	/* { dg-error "AltiVec types" } */
+__vector _Complex unsigned long long vcull; /* { dg-error "AltiVec types" } */
+__vector __complex float v_cf;		/* { dg-error "AltiVec types" } */
+__vector __complex double v_cd;		/* { dg-error "AltiVec types" } */
+__vector __complex long double v_cld;	/* { dg-error "AltiVec types" } */
+__vector __complex signed char v_csc;	/* { dg-error "AltiVec types" } */
+__vector __complex unsigned char v_cuc;	/* { dg-error "AltiVec types" } */
+__vector __complex short v_css;		/* { dg-error "AltiVec types" } */
+__vector __complex unsigned short v_cus; /* { dg-error "AltiVec types" } */
+__vector __complex int v_csi;		/* { dg-error "AltiVec types" } */
+__vector __complex unsigned int v_cui;	/* { dg-error "AltiVec types" } */
+__vector __complex long v_csl;		/* { dg-error "AltiVec types" } */
+__vector __complex unsigned long v_cul;	/* { dg-error "AltiVec types" } */
+__vector __complex long long v_csll;	/* { dg-error "AltiVec types" } */
+__vector __complex unsigned long long v_cull; /* { dg-error "AltiVec types" } */
 
 /* These should be rejected because the component types are invalid.  We
    don't care about the actual error messages here.  */
 
-__vector __bool unsigned char vbuc;	/* { dg-error "" "" } */
-__vector __bool signed char vbsc;	/* { dg-error "" "" } */
-__vector __bool unsigned short vbuh;	/* { dg-error "" "" } */
-__vector __bool signed short vbsh;	/* { dg-error "" "" } */
-__vector __bool unsigned int vbui;	/* { dg-error "" "" } */
-__vector __bool signed int vbsi;	/* { dg-error "" "" } */
-__vector __bool unsigned vbuj;		/* { dg-error "" "" } */
-__vector __bool signed vbsj;		/* { dg-error "" "" } */
-__vector signed float vsf;		/* { dg-error "" "" } */
-__vector unsigned float vuf;		/* { dg-error "" "" } */
-__vector short float vsf;		/* { dg-error "" "" } */
-__vector signed double vsd;		/* { dg-error "" "" } */
-__vector unsigned double vud;		/* { dg-error "" "" } */
-__vector short double vsd;		/* { dg-error "" "" } */
-__vector __bool float vbf;		/* { dg-error "" "" } */
-__vector __bool double vbd;		/* { dg-error "" "" } */
-__vector __bool short float blf;	/* { dg-error "" "" } */
-__vector __bool short double vlbd;	/* { dg-error "" "" } */
+__vector __bool unsigned char vbuc;	/* { dg-error "" } */
+__vector __bool signed char vbsc;	/* { dg-error "" } */
+__vector __bool unsigned short vbuh;	/* { dg-error "" } */
+__vector __bool signed short vbsh;	/* { dg-error "" } */
+__vector __bool unsigned int vbui;	/* { dg-error "" } */
+__vector __bool signed int vbsi;	/* { dg-error "" } */
+__vector __bool unsigned vbuj;		/* { dg-error "" } */
+__vector __bool signed vbsj;		/* { dg-error "" } */
+__vector signed float vsf;		/* { dg-error "" } */
+__vector unsigned float vuf;		/* { dg-error "" } */
+__vector short float vsf;		/* { dg-error "" } */
+__vector signed double vsd;		/* { dg-error "" } */
+__vector unsigned double vud;		/* { dg-error "" } */
+__vector short double vsd;		/* { dg-error "" } */
+__vector __bool float vbf;		/* { dg-error "" } */
+__vector __bool double vbd;		/* { dg-error "" } */
+__vector __bool short float blf;	/* { dg-error "" } */
+__vector __bool short double vlbd;	/* { dg-error "" } */
diff --git a/gcc/testsuite/g++.dg/ext/altivec-types-2.C b/gcc/testsuite/g++.dg/ext/altivec-types-2.C
index cee6c8f..4df12da 100644
--- a/gcc/testsuite/g++.dg/ext/altivec-types-2.C
+++ b/gcc/testsuite/g++.dg/ext/altivec-types-2.C
@@ -5,10 +5,10 @@ 
 
 /* These should get warnings for 32-bit code.  */
 
-__vector long vl;			/* { dg-warning "deprecated" "" } */
-__vector unsigned long vul;		/* { dg-warning "deprecated" "" } */
-__vector signed long vsl;		/* { dg-warning "deprecated" "" } */
-__vector __bool long int vbli;		/* { dg-warning "deprecated" "" } */
-__vector long int vli;			/* { dg-warning "deprecated" "" } */
-__vector unsigned long int vuli;	/* { dg-warning "deprecated" "" } */
-__vector signed long int vsli;		/* { dg-warning "deprecated" "" } */
+__vector long vl;			/* { dg-warning "deprecated" } */
+__vector unsigned long vul;		/* { dg-warning "deprecated" } */
+__vector signed long vsl;		/* { dg-warning "deprecated" } */
+__vector __bool long int vbli;		/* { dg-warning "deprecated" } */
+__vector long int vli;			/* { dg-warning "deprecated" } */
+__vector unsigned long int vuli;	/* { dg-warning "deprecated" } */
+__vector signed long int vsli;		/* { dg-warning "deprecated" } */
diff --git a/gcc/testsuite/g++.dg/ext/altivec-types-3.C b/gcc/testsuite/g++.dg/ext/altivec-types-3.C
index 6bea9a1..755de73 100644
--- a/gcc/testsuite/g++.dg/ext/altivec-types-3.C
+++ b/gcc/testsuite/g++.dg/ext/altivec-types-3.C
@@ -5,10 +5,10 @@ 
 
 /* These should be rejected for 64-bit code.  */
 
-__vector long vl;			/* { dg-error "invalid for 64" "" } */
-__vector unsigned long vul;		/* { dg-error "invalid for 64" "" } */
-__vector signed long vsl;		/* { dg-error "invalid for 64" "" } */
-__vector __bool long int vbli;		/* { dg-error "invalid for 64" "" } */
-__vector long int vli;			/* { dg-error "invalid for 64" "" } */
-__vector unsigned long int vuli;	/* { dg-error "invalid for 64" "" } */
-__vector signed long int vsli;		/* { dg-error "invalid for 64" "" } */
+__vector long vl;			/* { dg-error "invalid for 64" } */
+__vector unsigned long vul;		/* { dg-error "invalid for 64" } */
+__vector signed long vsl;		/* { dg-error "invalid for 64" } */
+__vector __bool long int vbli;		/* { dg-error "invalid for 64" } */
+__vector long int vli;			/* { dg-error "invalid for 64" } */
+__vector unsigned long int vuli;	/* { dg-error "invalid for 64" } */
+__vector signed long int vsli;		/* { dg-error "invalid for 64" } */
diff --git a/gcc/testsuite/g++.dg/ext/attrib14.C b/gcc/testsuite/g++.dg/ext/attrib14.C
index ebe0456..9db1f39 100644
--- a/gcc/testsuite/g++.dg/ext/attrib14.C
+++ b/gcc/testsuite/g++.dg/ext/attrib14.C
@@ -2,7 +2,7 @@ 
 // The bogus attribute is ignored, but was in TYPE_ATTRIBUTES during
 // parsing of the class, causing some variants to have it and some not.
 
-struct __attribute__((bogus)) A	// { dg-warning "ignored" "" }
+struct __attribute__((bogus)) A	// { dg-warning "ignored" }
 {
     virtual ~A();
     void foo(const A&);
diff --git a/gcc/testsuite/g++.dg/ext/complit1.C b/gcc/testsuite/g++.dg/ext/complit1.C
index ab2b038..1e4d08f 100644
--- a/gcc/testsuite/g++.dg/ext/complit1.C
+++ b/gcc/testsuite/g++.dg/ext/complit1.C
@@ -11,6 +11,6 @@  public:
 };
 
 Foo::Foo(int v0, int v1)
-  : val_((int[]) {v0, v1})  // { dg-error "" "" }
+  : val_((int[]) {v0, v1})  // { dg-error "" }
 {
 }
diff --git a/gcc/testsuite/g++.dg/ext/forscope2.C b/gcc/testsuite/g++.dg/ext/forscope2.C
index 4c63bab..460b2400 100644
--- a/gcc/testsuite/g++.dg/ext/forscope2.C
+++ b/gcc/testsuite/g++.dg/ext/forscope2.C
@@ -16,12 +16,12 @@  struct A
 
 void Go( )
 {
-  for (int i = 1;;)	// { dg-warning "using obsolete binding" "" }
+  for (int i = 1;;)	// { dg-warning "using obsolete binding" }
     {
       switch (1) {
       default: {}
       }
       A d;
     }
-  i;  // { dg-warning "name lookup" "" }
+  i;  // { dg-warning "name lookup" }
 }
diff --git a/gcc/testsuite/g++.dg/ext/gnu-inline-global-reject.C b/gcc/testsuite/g++.dg/ext/gnu-inline-global-reject.C
index 7e84fa7..d7f8074 100644
--- a/gcc/testsuite/g++.dg/ext/gnu-inline-global-reject.C
+++ b/gcc/testsuite/g++.dg/ext/gnu-inline-global-reject.C
@@ -10,47 +10,47 @@ 
 
 #undef fn
 #define fn pfx(func_decl_inline_before)
-decl(inline, fn) // { dg-message "previous" "" }
-gnuindef(fn, 0) // { dg-error "redeclared" "" }
+decl(inline, fn) // { dg-message "previous" }
+gnuindef(fn, 0) // { dg-error "redeclared" }
 
 #undef fn
 #define fn pfx(func_decl_inline_after)
-gnuindef(fn, 0) // { dg-message "previous" "" }
-decl(inline, fn) // { dg-error "redeclared" "" }
+gnuindef(fn, 0) // { dg-message "previous" }
+decl(inline, fn) // { dg-error "redeclared" }
 
 #undef fn
 #define fn pfx(func_def_gnuin_redef)
-gnuindef(fn, 0) // { dg-message "previous" "" }
-gnuindef(fn, 1) // { dg-error "redefinition" "" }
+gnuindef(fn, 0) // { dg-message "previous" }
+gnuindef(fn, 1) // { dg-error "redefinition" }
 
 #undef fn
 #define fn pfx(func_def_inline_redef)
-def(inline, fn, 0) // { dg-message "previous" "" }
-def(inline, fn, 1) // { dg-error "redefinition" "" }
+def(inline, fn, 0) // { dg-message "previous" }
+def(inline, fn, 1) // { dg-error "redefinition" }
 
 #undef fn
 #define fn pfx(func_def_inline_after)
-gnuindef(fn, 0) // { dg-message "previous" "" }
-def(inline, fn, 1) // { dg-error "redeclare" "" }
+gnuindef(fn, 0) // { dg-message "previous" }
+def(inline, fn, 1) // { dg-error "redeclare" }
 
 #undef fn
 #define fn pfx(func_def_inline_before)
-def(inline, fn, 0) // { dg-message "previous" "" }
-gnuindef(fn, 1) // { dg-error "redefinition" "" }
+def(inline, fn, 0) // { dg-message "previous" }
+gnuindef(fn, 1) // { dg-error "redefinition" }
 
 #undef fn
 #define fn pfx(func_def_before)
-def(, fn, 0) // { dg-message "previous" "" }
-gnuindef(fn, 1) // { dg-error "redefinition" "" }
+def(, fn, 0) // { dg-message "previous" }
+gnuindef(fn, 1) // { dg-error "redefinition" }
 
 #undef fn
 #define fn pfx(func_decl_static_inline_before)
-decl(static inline, fn) // { dg-message "previous" "" }
-gnuindef(fn, 0) // { dg-error "redeclared" "" }
+decl(static inline, fn) // { dg-message "previous" }
+gnuindef(fn, 0) // { dg-error "redeclared" }
 
 #undef fn
 #define fn pfx(func_def_static_inline_after)
 decl(static, fn)
-gnuindef(fn, 0) // { dg-message "previous" "" }
+gnuindef(fn, 0) // { dg-message "previous" }
 decl(static, fn)
-def(static inline, fn, 1) // { dg-error "redeclare" "" }
+def(static inline, fn, 1) // { dg-error "redeclare" }
diff --git a/gcc/testsuite/g++.dg/ext/label13.C b/gcc/testsuite/g++.dg/ext/label13.C
index 0887d46..70f251d 100644
--- a/gcc/testsuite/g++.dg/ext/label13.C
+++ b/gcc/testsuite/g++.dg/ext/label13.C
@@ -8,7 +8,7 @@  struct C
   C();
 };
 
-C::C()	// { dg-bogus "can never be copied" "" }
+C::C()	// { dg-bogus "can never be copied" }
 {
   static void *labelref = &&label;
   goto *labelref;
diff --git a/gcc/testsuite/g++.dg/ext/member-attr.C b/gcc/testsuite/g++.dg/ext/member-attr.C
index 2a7e18b..20091c8 100644
--- a/gcc/testsuite/g++.dg/ext/member-attr.C
+++ b/gcc/testsuite/g++.dg/ext/member-attr.C
@@ -9,6 +9,6 @@ 
 
 class T {
   public:
-    __attribute__ ((garbage1)) void member1(int) {} /* { dg-warning "'garbage1' attribute directive ignored" "" } */
-    void __attribute__ ((garbage2)) member2(int) {} /* { dg-warning "'garbage2' attribute directive ignored" "" } */
+    __attribute__ ((garbage1)) void member1(int) {} /* { dg-warning "'garbage1' attribute directive ignored" } */
+    void __attribute__ ((garbage2)) member2(int) {} /* { dg-warning "'garbage2' attribute directive ignored" } */
 };
diff --git a/gcc/testsuite/g++.dg/ext/visibility/anon7.C b/gcc/testsuite/g++.dg/ext/visibility/anon7.C
index 1aa239e..b1b70e1 100644
--- a/gcc/testsuite/g++.dg/ext/visibility/anon7.C
+++ b/gcc/testsuite/g++.dg/ext/visibility/anon7.C
@@ -4,7 +4,7 @@ 
 namespace
 {
   struct A {
-    static int bar ();		// { dg-error "used but never defined" "" }
+    static int bar ();		// { dg-error "used but never defined" }
     static int i;		// { dg-error "used, but not defined" "" { xfail *-*-* } }
     static int j;
     static int k;
diff --git a/gcc/testsuite/g++.dg/ext/visibility/visibility-7.C b/gcc/testsuite/g++.dg/ext/visibility/visibility-7.C
index 0a6e4ba..98314b9 100644
--- a/gcc/testsuite/g++.dg/ext/visibility/visibility-7.C
+++ b/gcc/testsuite/g++.dg/ext/visibility/visibility-7.C
@@ -4,8 +4,8 @@ 
 
 extern int 
 __attribute__((visibility ("hidden")))
-xyzzy; /* { dg-message "previous declaration" "" } */
+xyzzy; /* { dg-message "previous declaration" } */
 
 int 
 __attribute__((visibility ("protected")))
-xyzzy = 5; /* { dg-warning "visibility attribute ignored" "" } */
+xyzzy = 5; /* { dg-warning "visibility attribute ignored" } */
diff --git a/gcc/testsuite/g++.dg/ext/vla2.C b/gcc/testsuite/g++.dg/ext/vla2.C
index 7e67fb0..fbabeae 100644
--- a/gcc/testsuite/g++.dg/ext/vla2.C
+++ b/gcc/testsuite/g++.dg/ext/vla2.C
@@ -14,6 +14,6 @@  void bar(int i)
 {
   char d[i] ;
   
-  begin(d);  // { dg-error "no matching function" "" }
+  begin(d);  // { dg-error "no matching function" }
   // { dg-message "(candidate|valid template argument)" "candidate note" { target *-*-* } .-1 }
 }
diff --git a/gcc/testsuite/g++.dg/inherit/access2.C b/gcc/testsuite/g++.dg/inherit/access2.C
index 2477994..dc5f7d7 100644
--- a/gcc/testsuite/g++.dg/inherit/access2.C
+++ b/gcc/testsuite/g++.dg/inherit/access2.C
@@ -10,5 +10,5 @@  B b;
 
 void A::f ()
 {
-  A* ap = &b;			// { dg-error "base|inherit" "" }
+  A* ap = &b;			// { dg-error "base|inherit" }
 }
diff --git a/gcc/testsuite/g++.dg/inherit/covariant12.C b/gcc/testsuite/g++.dg/inherit/covariant12.C
index 434082a..e7247f2 100644
--- a/gcc/testsuite/g++.dg/inherit/covariant12.C
+++ b/gcc/testsuite/g++.dg/inherit/covariant12.C
@@ -9,10 +9,10 @@  struct S;
 
 struct B
 {
-  virtual T *Foo (); // { dg-error "overriding" "" }
+  virtual T *Foo (); // { dg-error "overriding" }
 };
 
 struct D : B
 {
-  virtual S *Foo (); // { dg-error "invalid covariant" "" }
+  virtual S *Foo (); // { dg-error "invalid covariant" }
 };
diff --git a/gcc/testsuite/g++.dg/inherit/covariant14.C b/gcc/testsuite/g++.dg/inherit/covariant14.C
index 13ca877..5118243 100644
--- a/gcc/testsuite/g++.dg/inherit/covariant14.C
+++ b/gcc/testsuite/g++.dg/inherit/covariant14.C
@@ -8,13 +8,13 @@  struct A;
 
 struct B
 {
-  virtual A* foo();  // { dg-error "overriding" "" }
+  virtual A* foo();  // { dg-error "overriding" }
 };
 
 namespace N
 {
   struct A : B
   {
-    virtual A* foo(); // { dg-error "invalid covariant" "" }	
+    virtual A* foo(); // { dg-error "invalid covariant" }	
   };
 }
diff --git a/gcc/testsuite/g++.dg/inherit/namespace-as-base.C b/gcc/testsuite/g++.dg/inherit/namespace-as-base.C
index 041c18a..aafcd0d 100644
--- a/gcc/testsuite/g++.dg/inherit/namespace-as-base.C
+++ b/gcc/testsuite/g++.dg/inherit/namespace-as-base.C
@@ -5,5 +5,5 @@  namespace Out {
   }
 }
 
-class Klasse : public Out::In {  // { dg-error ".*" "" }
+class Klasse : public Out::In {  // { dg-error ".*" }
 };
diff --git a/gcc/testsuite/g++.dg/inherit/template-as-base.C b/gcc/testsuite/g++.dg/inherit/template-as-base.C
index 5d34b15..a7e531e 100644
--- a/gcc/testsuite/g++.dg/inherit/template-as-base.C
+++ b/gcc/testsuite/g++.dg/inherit/template-as-base.C
@@ -6,4 +6,4 @@  namespace N
     template<typename> struct X { };
 }
 
-struct A : N::X { }; // { dg-error "expected class-name" "" }
+struct A : N::X { }; // { dg-error "expected class-name" }
diff --git a/gcc/testsuite/g++.dg/lookup/ambig1.C b/gcc/testsuite/g++.dg/lookup/ambig1.C
index c027428..09936cc 100644
--- a/gcc/testsuite/g++.dg/lookup/ambig1.C
+++ b/gcc/testsuite/g++.dg/lookup/ambig1.C
@@ -7,11 +7,11 @@ 
 // Bug 16889:Undetected ambiguity.
 
 struct B { 
-  int f(); // { dg-message "int B::f" "" }
+  int f(); // { dg-message "int B::f" }
 }; 
  
 struct B1 : virtual B {}; 
 struct B2 : B {}; 
 struct BB : B1, B2 {}; 
  
-int i = BB().f();  // { dg-error "ambiguous" "" }
+int i = BB().f();  // { dg-error "ambiguous" }
diff --git a/gcc/testsuite/g++.dg/lookup/ambig2.C b/gcc/testsuite/g++.dg/lookup/ambig2.C
index 505eda6..e9a65d1 100644
--- a/gcc/testsuite/g++.dg/lookup/ambig2.C
+++ b/gcc/testsuite/g++.dg/lookup/ambig2.C
@@ -7,11 +7,11 @@ 
 // Bug 16889:Undetected ambiguity.
 
 struct B { 
-  int i; // { dg-message "int B::i" "" }
+  int i; // { dg-message "int B::i" }
 }; 
  
 struct B1 : virtual B {}; 
 struct B2 : B {}; 
 struct BB : B1, B2 {}; 
  
-int i = BB().i;  // { dg-error "ambiguous" "" }
+int i = BB().i;  // { dg-error "ambiguous" }
diff --git a/gcc/testsuite/g++.dg/lookup/ambig3.C b/gcc/testsuite/g++.dg/lookup/ambig3.C
index 5a3f5b9..dee3cf7 100644
--- a/gcc/testsuite/g++.dg/lookup/ambig3.C
+++ b/gcc/testsuite/g++.dg/lookup/ambig3.C
@@ -7,7 +7,7 @@ 
 // Follow on from Bug 16889:Undetected ambiguity.
 
 struct B { 
-  int f(); // { dg-message "int B::f" "" }
+  int f(); // { dg-message "int B::f" }
 }; 
  
 struct B1 : virtual B {}; 
@@ -15,4 +15,4 @@  struct B2 : B {};
 struct B2_2 : B2 {};
 struct BB : B1, B2_2 {}; 
  
-int i = BB().f();  // { dg-error "ambiguous" "" }
+int i = BB().f();  // { dg-error "ambiguous" }
diff --git a/gcc/testsuite/g++.dg/lookup/class-member-1.C b/gcc/testsuite/g++.dg/lookup/class-member-1.C
index 37d40b4..8fbc8e5 100644
--- a/gcc/testsuite/g++.dg/lookup/class-member-1.C
+++ b/gcc/testsuite/g++.dg/lookup/class-member-1.C
@@ -7,5 +7,5 @@  struct A { };
 int main()
 {
   A a;
-  a.i = 9;           // { dg-error "no member" "" }
+  a.i = 9;           // { dg-error "no member" }
 }
diff --git a/gcc/testsuite/g++.dg/lookup/conv-1.C b/gcc/testsuite/g++.dg/lookup/conv-1.C
index b861c60..aa377b4 100644
--- a/gcc/testsuite/g++.dg/lookup/conv-1.C
+++ b/gcc/testsuite/g++.dg/lookup/conv-1.C
@@ -7,12 +7,12 @@ 
 
 struct A1 
 {
-  operator int () const; // { dg-message "A1::operator" "" }
+  operator int () const; // { dg-message "A1::operator" }
 };
 
 struct A2
 {
-  operator int () const; // { dg-message "A2::operator" "" }
+  operator int () const; // { dg-message "A2::operator" }
 };
 
 struct B : A1, A2 
@@ -21,6 +21,6 @@  struct B : A1, A2
 
 int Foo (B const &b)
 {
-  return b; // { dg-error "ambiguous" "" }
+  return b; // { dg-error "ambiguous" }
 }
 
diff --git a/gcc/testsuite/g++.dg/lookup/decl1.C b/gcc/testsuite/g++.dg/lookup/decl1.C
index d9af656..42a9978 100644
--- a/gcc/testsuite/g++.dg/lookup/decl1.C
+++ b/gcc/testsuite/g++.dg/lookup/decl1.C
@@ -21,12 +21,12 @@  C2<X>::operator C1<Y>()
 
 struct A
 {
-  operator int ();			// { dg-error "operator" "" }
-  operator float ();			// { dg-error "operator" "" }
-  operator float () const;		// { dg-error "operator" "" }
-  template <typename T> operator T * (); // { dg-error "candidates" "" }
+  operator int ();			// { dg-error "operator" }
+  operator float ();			// { dg-error "operator" }
+  operator float () const;		// { dg-error "operator" }
+  template <typename T> operator T * (); // { dg-error "candidates" }
 };
 
-A::operator short () { // { dg-error "prototype for" "" }
+A::operator short () { // { dg-error "prototype for" }
   return 0;
 }
diff --git a/gcc/testsuite/g++.dg/lookup/koenig1.C b/gcc/testsuite/g++.dg/lookup/koenig1.C
index 081211b..373bd3b 100644
--- a/gcc/testsuite/g++.dg/lookup/koenig1.C
+++ b/gcc/testsuite/g++.dg/lookup/koenig1.C
@@ -8,6 +8,6 @@ 
 class X;
 
 void foo() {
-  X x(1); // { dg-error "incomplete type" "" }
-  bar(x); // { dg-error "3:'bar' was not declared" "" }
+  X x(1); // { dg-error "incomplete type" }
+  bar(x); // { dg-error "3:'bar' was not declared" }
 }
diff --git a/gcc/testsuite/g++.dg/lookup/scoped1.C b/gcc/testsuite/g++.dg/lookup/scoped1.C
index a0773cf..663f718 100644
--- a/gcc/testsuite/g++.dg/lookup/scoped1.C
+++ b/gcc/testsuite/g++.dg/lookup/scoped1.C
@@ -4,7 +4,7 @@ 
 struct A
 {
   static int i1;
-  int i2; // { dg-message "declared" "" }
+  int i2; // { dg-message "declared" }
   static void f1 ();
   void f2 ();
 };
@@ -15,7 +15,7 @@  struct C: public B
   void g ()
   {
     ::A::i1 = 1;
-    ::A::i2 = 1;		// { dg-error "(access)|(context)" "" }
+    ::A::i2 = 1;		// { dg-error "(access)|(context)" }
     ::A::f1 ();
     ::A::f2 ();			// { dg-error "" }
   }
diff --git a/gcc/testsuite/g++.dg/lookup/scoped2.C b/gcc/testsuite/g++.dg/lookup/scoped2.C
index 99cedce..22c1598 100644
--- a/gcc/testsuite/g++.dg/lookup/scoped2.C
+++ b/gcc/testsuite/g++.dg/lookup/scoped2.C
@@ -13,7 +13,7 @@  struct Derived : Base
 {
   void Foo ()
   {
-    Base::Baz ();  // { dg-error "is not a member" "" }
+    Base::Baz ();  // { dg-error "is not a member" }
       
   }
 };
diff --git a/gcc/testsuite/g++.dg/lookup/two-stage4.C b/gcc/testsuite/g++.dg/lookup/two-stage4.C
index a89e618..c13c80c 100644
--- a/gcc/testsuite/g++.dg/lookup/two-stage4.C
+++ b/gcc/testsuite/g++.dg/lookup/two-stage4.C
@@ -8,7 +8,7 @@  template<typename T> bool operator==(wrap<T>, wrap<T>);
 template<typename T>
 void g(T, wrap<wrap<int> > x)
 {
-  bool b = x == x; // { dg-bogus "" "" }
+  bool b = x == x; // { dg-bogus "" }
 }
 
 template<typename T> void operator==(wrap<wrap<T> >, wrap<wrap<T> >);
diff --git a/gcc/testsuite/g++.dg/lookup/used-before-declaration.C b/gcc/testsuite/g++.dg/lookup/used-before-declaration.C
index f5dd6ef..6feb979 100644
--- a/gcc/testsuite/g++.dg/lookup/used-before-declaration.C
+++ b/gcc/testsuite/g++.dg/lookup/used-before-declaration.C
@@ -1,5 +1,5 @@ 
 // Copyroght (C) 2003 Free Software Foundation
 // Origin: PR/12832, Jonathan Wakely <redi@gcc.gnu.org>
 
-void f() { g(); }               // { dg-error "12:'g' was not declared" "" }
+void f() { g(); }               // { dg-error "12:'g' was not declared" }
 void g() { }
diff --git a/gcc/testsuite/g++.dg/lookup/using.C b/gcc/testsuite/g++.dg/lookup/using.C
index 30e22c0..d2df411 100644
--- a/gcc/testsuite/g++.dg/lookup/using.C
+++ b/gcc/testsuite/g++.dg/lookup/using.C
@@ -17,7 +17,7 @@  struct Derived : Base {
 int main()
 {
   Derived d;
-  X x = d.f();                  // { dg-bogus "Y" "" }
+  X x = d.f();                  // { dg-bogus "Y" }
 }
 
 
diff --git a/gcc/testsuite/g++.dg/lookup/using17.C b/gcc/testsuite/g++.dg/lookup/using17.C
index 9019dab..9b008fe 100644
--- a/gcc/testsuite/g++.dg/lookup/using17.C
+++ b/gcc/testsuite/g++.dg/lookup/using17.C
@@ -11,4 +11,4 @@  struct S {}; // { dg-message "candidates are: struct S" "candidate 1" }
 
 using namespace M;
 
-struct S s; // { dg-error "reference to 'S' is ambiguous|invalid type in declaration" "" }
+struct S s; // { dg-error "reference to 'S' is ambiguous|invalid type in declaration" }
diff --git a/gcc/testsuite/g++.dg/lookup/using2.C b/gcc/testsuite/g++.dg/lookup/using2.C
index cd878b9..c2a8ddf 100644
--- a/gcc/testsuite/g++.dg/lookup/using2.C
+++ b/gcc/testsuite/g++.dg/lookup/using2.C
@@ -24,9 +24,9 @@  namespace N
   template<int> void f() {}
 }
 
-using N;             // { dg-error "(using-declaration)|(nested-name)" "" }
-using ::N;           // { dg-error "using-declaration" "" }
-using N::f< 0 >;     // { dg-error "using-declaration" "" }
+using N;             // { dg-error "(using-declaration)|(nested-name)" }
+using ::N;           // { dg-error "using-declaration" }
+using N::f< 0 >;     // { dg-error "using-declaration" }
 
 struct  A {
   template <class T> void f(T);
@@ -39,7 +39,7 @@  struct B : A {
 };
 
 struct C : A {
-  using A::f<double>; // { dg-error "using-declaration" "" }
-  using A::X<int>;    // { dg-error "using-declaration" "" }
+  using A::f<double>; // { dg-error "using-declaration" }
+  using A::X<int>;    // { dg-error "using-declaration" }
 };
 
diff --git a/gcc/testsuite/g++.dg/other/abstract2.C b/gcc/testsuite/g++.dg/other/abstract2.C
index b794932..60a4e41 100644
--- a/gcc/testsuite/g++.dg/other/abstract2.C
+++ b/gcc/testsuite/g++.dg/other/abstract2.C
@@ -42,7 +42,7 @@  namespace N2 {
 }
 
 namespace N3 {
-  struct X { // { dg-message "note" "" }
+  struct X { // { dg-message "note" }
     virtual void xfunc(void) = 0;  // { dg-message "note" }
   };
   void g(X parm13);          // { dg-error "abstract" }
diff --git a/gcc/testsuite/g++.dg/other/classkey1.C b/gcc/testsuite/g++.dg/other/classkey1.C
index 80ab675..33792e7 100644
--- a/gcc/testsuite/g++.dg/other/classkey1.C
+++ b/gcc/testsuite/g++.dg/other/classkey1.C
@@ -6,12 +6,12 @@ 
 // PR 775. Some mismatches which were broken.
 
 template <class T> struct A {};
-union A<int> a; // { dg-error "'union' tag" "" }
+union A<int> a; // { dg-error "'union' tag" }
 
-template <> union A<float> {}; // { dg-error "'union' tag" "" }
+template <> union A<float> {}; // { dg-error "'union' tag" }
 
 struct B {};
-union B b;	// { dg-error "'union' tag" "" }
+union B b;	// { dg-error "'union' tag" }
 
 union C {};
-class C c;	// { dg-error "'class' tag" "" }
+class C c;	// { dg-error "'class' tag" }
diff --git a/gcc/testsuite/g++.dg/other/component1.C b/gcc/testsuite/g++.dg/other/component1.C
index 601e019..09eef3b 100644
--- a/gcc/testsuite/g++.dg/other/component1.C
+++ b/gcc/testsuite/g++.dg/other/component1.C
@@ -19,11 +19,11 @@  void Foo () {
   
   (c.f<int>) (2);
 
-  c.g;			// { dg-error "statement cannot resolve" "" }
-  c.f;		        // { dg-error "statement cannot resolve" "" }
-  c.f<int>;		// { dg-error "statement cannot resolve" "" }
+  c.g;			// { dg-error "statement cannot resolve" }
+  c.f;		        // { dg-error "statement cannot resolve" }
+  c.f<int>;		// { dg-error "statement cannot resolve" }
   
-  c.g == 1;		// { dg-error "invalid" "" }
-  c.f == 1;		// { dg-error "invalid" "" }
-  c.f<int> == 1;	// { dg-error "invalid" "" }
+  c.g == 1;		// { dg-error "invalid" }
+  c.f == 1;		// { dg-error "invalid" }
+  c.f<int> == 1;	// { dg-error "invalid" }
 }
diff --git a/gcc/testsuite/g++.dg/other/const1.C b/gcc/testsuite/g++.dg/other/const1.C
index f010138..a69744d 100644
--- a/gcc/testsuite/g++.dg/other/const1.C
+++ b/gcc/testsuite/g++.dg/other/const1.C
@@ -13,5 +13,5 @@  struct Foo
 
 void Foo::Modify(unsigned j) const
 {
-  Foo::i = j;  // { dg-error "assignment of member" "" }
+  Foo::i = j;  // { dg-error "assignment of member" }
 }
diff --git a/gcc/testsuite/g++.dg/other/const2.C b/gcc/testsuite/g++.dg/other/const2.C
index 86dde1e..d9df5c4 100644
--- a/gcc/testsuite/g++.dg/other/const2.C
+++ b/gcc/testsuite/g++.dg/other/const2.C
@@ -12,7 +12,7 @@  struct foo
 
   void bad ()
   {
-    this->*(bars[0].b) = 42; // { dg-bogus "read-only" "" }
+    this->*(bars[0].b) = 42; // { dg-bogus "read-only" }
   }
 };
 
diff --git a/gcc/testsuite/g++.dg/other/conversion1.C b/gcc/testsuite/g++.dg/other/conversion1.C
index 6573ef1..e9ddb2b 100644
--- a/gcc/testsuite/g++.dg/other/conversion1.C
+++ b/gcc/testsuite/g++.dg/other/conversion1.C
@@ -13,5 +13,5 @@  int main()
 {
   long long m;
   
-  (void (QObject::*)()) m;    // { dg-error "invalid cast" "" }
+  (void (QObject::*)()) m;    // { dg-error "invalid cast" }
 }
diff --git a/gcc/testsuite/g++.dg/other/do1.C b/gcc/testsuite/g++.dg/other/do1.C
index 7203585..b3a9daf 100644
--- a/gcc/testsuite/g++.dg/other/do1.C
+++ b/gcc/testsuite/g++.dg/other/do1.C
@@ -8,6 +8,6 @@ 
 void init ()
 {
   do {  } while (0)
-	    obj = 0; // { dg-error "expected|not declared" "" }
+	    obj = 0; // { dg-error "expected|not declared" }
      
 }
diff --git a/gcc/testsuite/g++.dg/other/error1.C b/gcc/testsuite/g++.dg/other/error1.C
index 927efef..5d79408 100644
--- a/gcc/testsuite/g++.dg/other/error1.C
+++ b/gcc/testsuite/g++.dg/other/error1.C
@@ -10,6 +10,6 @@  class foo {
   int fudge[40];
   int bar [40];
   inline int access(int i) {
-    return bar(i);  // { dg-error "cannot be used as a function" "" }
+    return bar(i);  // { dg-error "cannot be used as a function" }
   }
 };
diff --git a/gcc/testsuite/g++.dg/other/error10.C b/gcc/testsuite/g++.dg/other/error10.C
index 546a4d6..33fbee5 100644
--- a/gcc/testsuite/g++.dg/other/error10.C
+++ b/gcc/testsuite/g++.dg/other/error10.C
@@ -10,5 +10,5 @@  void foo(const A<N> &a)
 
 void bar()
 {
-    foo(A<0>()); // { dg-message "required from here" "" }
+    foo(A<0>()); // { dg-message "required from here" }
 }
diff --git a/gcc/testsuite/g++.dg/other/error3.C b/gcc/testsuite/g++.dg/other/error3.C
index 1e64563..dfe9734 100644
--- a/gcc/testsuite/g++.dg/other/error3.C
+++ b/gcc/testsuite/g++.dg/other/error3.C
@@ -3,4 +3,4 @@ 
 
 void (*g() throw())();		// { dg-message "g\\(\\) throw" "" { target { ! c++1z } } }
 				// { dg-message "g\\(\\) noexcept" "" { target c++1z } .-1 }
-void (*g())();			// { dg-error "" "" }
+void (*g())();			// { dg-error "" }
diff --git a/gcc/testsuite/g++.dg/other/error4.C b/gcc/testsuite/g++.dg/other/error4.C
index a5d5e3c7..6a8cb40 100644
--- a/gcc/testsuite/g++.dg/other/error4.C
+++ b/gcc/testsuite/g++.dg/other/error4.C
@@ -7,9 +7,9 @@ 
 
 struct Wrapper {};
 
-void Foo(int const &); // { dg-message "in passing" "" }
+void Foo(int const &); // { dg-message "in passing" }
 
 void Baz ()
 {
-  Foo (Wrapper ()); // { dg-error "Wrapper" "" }
+  Foo (Wrapper ()); // { dg-error "Wrapper" }
 }
diff --git a/gcc/testsuite/g++.dg/other/error5.C b/gcc/testsuite/g++.dg/other/error5.C
index 44c4a47..e6528d4 100644
--- a/gcc/testsuite/g++.dg/other/error5.C
+++ b/gcc/testsuite/g++.dg/other/error5.C
@@ -7,7 +7,7 @@  template <typename T> struct S {
 };
 
 template <typename T> struct S2 : S<T> {
-    using S<T>::operator typename S<T>::I*; // { dg-error "operator S\\<int\\>" "" }
+    using S<T>::operator typename S<T>::I*; // { dg-error "operator S\\<int\\>" }
 };
 
-template struct S2<int>;  // { dg-message "required" "" }
+template struct S2<int>;  // { dg-message "required" }
diff --git a/gcc/testsuite/g++.dg/other/error8.C b/gcc/testsuite/g++.dg/other/error8.C
index 116a684..6bd31d8 100644
--- a/gcc/testsuite/g++.dg/other/error8.C
+++ b/gcc/testsuite/g++.dg/other/error8.C
@@ -18,5 +18,5 @@  void tfoo(void)
     int alpha;  // { dg-error "" "" { xfail *-*-* } }
     int beta; 
   }; // { dg-bogus "" "misplaced position of the declaration" { xfail *-*-* } }
-  double alpha; // { dg-error "" "" }
+  double alpha; // { dg-error "" }
 }
diff --git a/gcc/testsuite/g++.dg/other/error9.C b/gcc/testsuite/g++.dg/other/error9.C
index 65a9c58..41e8cdd 100644
--- a/gcc/testsuite/g++.dg/other/error9.C
+++ b/gcc/testsuite/g++.dg/other/error9.C
@@ -14,7 +14,7 @@  struct B
 
 struct C : public B, public A
 {
-  C ()  // { dg-warning "when initialized" "" }
-    : A(), B()  // { dg-warning "base .\[AB\]." "" }
+  C ()  // { dg-warning "when initialized" }
+    : A(), B()  // { dg-warning "base .\[AB\]." }
   { }
 };
diff --git a/gcc/testsuite/g++.dg/other/field1.C b/gcc/testsuite/g++.dg/other/field1.C
index a719135..1efc396 100644
--- a/gcc/testsuite/g++.dg/other/field1.C
+++ b/gcc/testsuite/g++.dg/other/field1.C
@@ -7,19 +7,19 @@ 
 
 struct test
 {
-  char test;  // { dg-error "with same name as class" "" }
+  char test;  // { dg-error "with same name as class" }
   test();
 };
 
 template <typename T> struct X
 {
-  char X;  // { dg-error "with same name as class" "" }
+  char X;  // { dg-error "with same name as class" }
   X ();
 };
 
 template <> struct X<int> {
-  char X;  // { dg-error "with same name as class" "" }
+  char X;  // { dg-error "with same name as class" }
   X();
 };
 
-X<float> i; // { dg-message "required from" "" }
+X<float> i; // { dg-message "required from" }
diff --git a/gcc/testsuite/g++.dg/other/init1.C b/gcc/testsuite/g++.dg/other/init1.C
index 7fc7db6..a68d3e4 100644
--- a/gcc/testsuite/g++.dg/other/init1.C
+++ b/gcc/testsuite/g++.dg/other/init1.C
@@ -17,7 +17,7 @@  struct B : A
 class T
 {
   typedef int Foo;
-  T () : Foo () {}	// { dg-error "T::Foo' is not" "" }
+  T () : Foo () {}	// { dg-error "T::Foo' is not" }
 };
 
 struct S : B
diff --git a/gcc/testsuite/g++.dg/other/ptrmem2.C b/gcc/testsuite/g++.dg/other/ptrmem2.C
index 335f492..cb54ab3 100644
--- a/gcc/testsuite/g++.dg/other/ptrmem2.C
+++ b/gcc/testsuite/g++.dg/other/ptrmem2.C
@@ -19,7 +19,7 @@  template<class T> int f2(T x);
 
 int D::Foo ()
 {
-  f1( &D::m);   // { dg-error "cannot create pointer to ref" "" }
+  f1( &D::m);   // { dg-error "cannot create pointer to ref" }
   f1( &(D::m));	// ok
   f2( &D::s);   // ok
   f2( &(D::s)); // ok
@@ -28,7 +28,7 @@  int D::Foo ()
 
 int Foo ()
 {
-  f1( &D::m);    // { dg-error "cannot create pointer to ref" "" }
+  f1( &D::m);    // { dg-error "cannot create pointer to ref" }
   f1( &(D::m));  // { dg-error "non-static" }
   f2( &D::s);    // ok
   f2( &(D::s));  // ok
diff --git a/gcc/testsuite/g++.dg/other/return1.C b/gcc/testsuite/g++.dg/other/return1.C
index 2473b8d..58fb8a4 100644
--- a/gcc/testsuite/g++.dg/other/return1.C
+++ b/gcc/testsuite/g++.dg/other/return1.C
@@ -7,7 +7,7 @@ 
 struct wxString;
 struct wxString* wxGetEmptyString();
 
-struct wxString GetHeader() // { dg-error "return type" "" }
+struct wxString GetHeader() // { dg-error "return type" }
 {
   return *wxGetEmptyString();
 }
diff --git a/gcc/testsuite/g++.dg/overload/builtin3.C b/gcc/testsuite/g++.dg/overload/builtin3.C
index dcd9fd0..cd2b578 100644
--- a/gcc/testsuite/g++.dg/overload/builtin3.C
+++ b/gcc/testsuite/g++.dg/overload/builtin3.C
@@ -6,5 +6,5 @@  namespace std {
 }
 using std::fabs;
 
-double (*p) (double) = &fabs;  // { dg-bogus "is ambiguous" "" }
+double (*p) (double) = &fabs;  // { dg-bogus "is ambiguous" }
 
diff --git a/gcc/testsuite/g++.dg/overload/error1.C b/gcc/testsuite/g++.dg/overload/error1.C
index dd10d90..6c5998c 100644
--- a/gcc/testsuite/g++.dg/overload/error1.C
+++ b/gcc/testsuite/g++.dg/overload/error1.C
@@ -2,6 +2,6 @@ 
 
 struct S
 {
-  void f () {} // { dg-error "with" "" }
-  int f () { return 0; } // { dg-error "overloaded" "" }
+  void f () {} // { dg-error "with" }
+  int f () { return 0; } // { dg-error "overloaded" }
 };
diff --git a/gcc/testsuite/g++.dg/overload/error2.C b/gcc/testsuite/g++.dg/overload/error2.C
index 3270621..4a9d35b 100644
--- a/gcc/testsuite/g++.dg/overload/error2.C
+++ b/gcc/testsuite/g++.dg/overload/error2.C
@@ -6,6 +6,6 @@ 
 
 struct A
 {
-  void foo();  // { dg-error "with" "" }
-  virtual void foo();  // { dg-error "cannot be overloaded" "" }
+  void foo();  // { dg-error "with" }
+  virtual void foo();  // { dg-error "cannot be overloaded" }
 };
diff --git a/gcc/testsuite/g++.dg/overload/koenig2.C b/gcc/testsuite/g++.dg/overload/koenig2.C
index f35aa1a..6f26dd0 100644
--- a/gcc/testsuite/g++.dg/overload/koenig2.C
+++ b/gcc/testsuite/g++.dg/overload/koenig2.C
@@ -11,5 +11,5 @@  void anyfunc(int x);
 
 void Foo ()
 {
-  anyfunc (&dummy<>); // { dg-error "cannot resolve overload" "" }
+  anyfunc (&dummy<>); // { dg-error "cannot resolve overload" }
 }
diff --git a/gcc/testsuite/g++.dg/overload/pmf1.C b/gcc/testsuite/g++.dg/overload/pmf1.C
index d200749..7cbc48f 100644
--- a/gcc/testsuite/g++.dg/overload/pmf1.C
+++ b/gcc/testsuite/g++.dg/overload/pmf1.C
@@ -17,5 +17,5 @@  void f (C) {}         // even though this would be well-formed
 
 int main ()
 {
-  f (aip);  // { dg-error "'A' is an inaccessible base of 'B'|conversion" "" }
+  f (aip);  // { dg-error "'A' is an inaccessible base of 'B'|conversion" }
 }
diff --git a/gcc/testsuite/g++.dg/parse/args1.C b/gcc/testsuite/g++.dg/parse/args1.C
index 0eb6e64..83112fd 100644
--- a/gcc/testsuite/g++.dg/parse/args1.C
+++ b/gcc/testsuite/g++.dg/parse/args1.C
@@ -8,5 +8,5 @@ 
 
 void Foo (int)
 {
-  Foo(2 2); // { dg-error "expected" "" }
+  Foo(2 2); // { dg-error "expected" }
 }
diff --git a/gcc/testsuite/g++.dg/parse/attr3.C b/gcc/testsuite/g++.dg/parse/attr3.C
index 848df05..57fa60e 100644
--- a/gcc/testsuite/g++.dg/parse/attr3.C
+++ b/gcc/testsuite/g++.dg/parse/attr3.C
@@ -4,10 +4,10 @@  enum __attribute__ ((deprecated)) E { e };
 struct S { enum __attribute__ ((deprecated)) F { f = e }; };
 
 int main () {
-    E x;	// { dg-warning "'E' is deprecated" "" }
+    E x;	// { dg-warning "'E' is deprecated" }
     x = e;
 
-    S::F y;	// { dg-warning "'F' is deprecated" "" }
+    S::F y;	// { dg-warning "'F' is deprecated" }
     y = S::f;
 
     return x + y;
diff --git a/gcc/testsuite/g++.dg/parse/constant4.C b/gcc/testsuite/g++.dg/parse/constant4.C
index 626dd9e..ef3f4ad 100644
--- a/gcc/testsuite/g++.dg/parse/constant4.C
+++ b/gcc/testsuite/g++.dg/parse/constant4.C
@@ -18,7 +18,7 @@  void Foo ()
   
   static const unsigned J = X<T>::J; // { dg-message "not initialized with a constant expression" }
   
-  Y<J> j; // { dg-error "constant|template argument" "" }
+  Y<J> j; // { dg-error "constant|template argument" }
 }
 
 struct A 
@@ -34,7 +34,7 @@  template <typename> struct X
 
 void Baz ()
 {
-  Foo<int> (); // { dg-message "required" "" }
+  Foo<int> (); // { dg-message "required" }
 }
 
   
diff --git a/gcc/testsuite/g++.dg/parse/crash10.C b/gcc/testsuite/g++.dg/parse/crash10.C
index 712e876..2482242 100644
--- a/gcc/testsuite/g++.dg/parse/crash10.C
+++ b/gcc/testsuite/g++.dg/parse/crash10.C
@@ -10,4 +10,4 @@ 
 class 
 {
   typename::
-; // { dg-error "" "" }
+; // { dg-error "" }
diff --git a/gcc/testsuite/g++.dg/parse/crash18.C b/gcc/testsuite/g++.dg/parse/crash18.C
index 94be360..7e326aa 100644
--- a/gcc/testsuite/g++.dg/parse/crash18.C
+++ b/gcc/testsuite/g++.dg/parse/crash18.C
@@ -4,4 +4,4 @@ 
 // PR 18095: ICE
 // Origin: Volker Reichelt <reichelt@gcc.gnu.org>
 
-struct A // { dg-error "expected" "" }
+struct A // { dg-error "expected" }
diff --git a/gcc/testsuite/g++.dg/parse/crash19.C b/gcc/testsuite/g++.dg/parse/crash19.C
index cc50d95..482a94b 100644
--- a/gcc/testsuite/g++.dg/parse/crash19.C
+++ b/gcc/testsuite/g++.dg/parse/crash19.C
@@ -4,4 +4,4 @@ 
 // PR 18095: ICE
 // Origin: Volker Reichelt <reichelt@gcc.gnu.org>
 
-struct A {} // { dg-error "expected" "" }
+struct A {} // { dg-error "expected" }
diff --git a/gcc/testsuite/g++.dg/parse/crash20.C b/gcc/testsuite/g++.dg/parse/crash20.C
index b601408..7868643 100644
--- a/gcc/testsuite/g++.dg/parse/crash20.C
+++ b/gcc/testsuite/g++.dg/parse/crash20.C
@@ -8,7 +8,7 @@ 
 
 template<typename T> struct A
 {
-  typedef typename T::X Y; // { dg-error "not a class" "" }
+  typedef typename T::X Y; // { dg-error "not a class" }
 };
 
-A<int>::Y y; // { dg-message "required from here" "" }
+A<int>::Y y; // { dg-message "required from here" }
diff --git a/gcc/testsuite/g++.dg/parse/crash21.C b/gcc/testsuite/g++.dg/parse/crash21.C
index 623bbec..d30f23c 100644
--- a/gcc/testsuite/g++.dg/parse/crash21.C
+++ b/gcc/testsuite/g++.dg/parse/crash21.C
@@ -1,7 +1,7 @@ 
 namespace N
 {
-  struct A; // { dg-message "previous declaration" "" }
+  struct A; // { dg-message "previous declaration" }
 }
 
 template<int I>
-struct N::A {}; // { dg-error "redeclared" "" }
+struct N::A {}; // { dg-error "redeclared" }
diff --git a/gcc/testsuite/g++.dg/parse/crash22.C b/gcc/testsuite/g++.dg/parse/crash22.C
index ba88703..7bd89ef 100644
--- a/gcc/testsuite/g++.dg/parse/crash22.C
+++ b/gcc/testsuite/g++.dg/parse/crash22.C
@@ -13,8 +13,8 @@  namespace N
 
 using namespace N;
 
-int A::i; // { dg-message "ambiguous|declared here" "" }
-int A::i; // { dg-message "ambiguous|redefinition of" "" }
+int A::i; // { dg-message "ambiguous|declared here" }
+int A::i; // { dg-message "ambiguous|redefinition of" }
 
 namespace N
 {
diff --git a/gcc/testsuite/g++.dg/parse/crash32.C b/gcc/testsuite/g++.dg/parse/crash32.C
index df6aa55..88ec42b 100644
--- a/gcc/testsuite/g++.dg/parse/crash32.C
+++ b/gcc/testsuite/g++.dg/parse/crash32.C
@@ -9,5 +9,5 @@  struct Ast
 void
 Ast::accept (Visitor& v)
 {
-  v (*this); // { dg-error "no match for call" "" }
+  v (*this); // { dg-error "no match for call" }
 }
diff --git a/gcc/testsuite/g++.dg/parse/decl-specifier-1.C b/gcc/testsuite/g++.dg/parse/decl-specifier-1.C
index 5c39b60..e178d29 100644
--- a/gcc/testsuite/g++.dg/parse/decl-specifier-1.C
+++ b/gcc/testsuite/g++.dg/parse/decl-specifier-1.C
@@ -8,7 +8,7 @@  namespace N
     struct X { };
 }
 
-N::X X;                           // { dg-error "" "" }
+N::X X;                           // { dg-error "" }
 
 int main()
 {
diff --git a/gcc/testsuite/g++.dg/parse/error58.C b/gcc/testsuite/g++.dg/parse/error58.C
index 5ed6e1e..4e96baf 100644
--- a/gcc/testsuite/g++.dg/parse/error58.C
+++ b/gcc/testsuite/g++.dg/parse/error58.C
@@ -4,4 +4,4 @@ 
 
 struct A;
 void foo ();
-void f() { alignas (foo (A)); } // { dg-error "expected" "" }
+void f() { alignas (foo (A)); } // { dg-error "expected" }
diff --git a/gcc/testsuite/g++.dg/parse/local-class1.C b/gcc/testsuite/g++.dg/parse/local-class1.C
index 518dd7a..28e295a 100644
--- a/gcc/testsuite/g++.dg/parse/local-class1.C
+++ b/gcc/testsuite/g++.dg/parse/local-class1.C
@@ -9,6 +9,6 @@  void f ()
 {
   class c
     {
-      friend void g () { } // { dg-error "local class" "" }
+      friend void g () { } // { dg-error "local class" }
     };
 }
diff --git a/gcc/testsuite/g++.dg/parse/non-dependent2.C b/gcc/testsuite/g++.dg/parse/non-dependent2.C
index a2ae81d..c224970 100644
--- a/gcc/testsuite/g++.dg/parse/non-dependent2.C
+++ b/gcc/testsuite/g++.dg/parse/non-dependent2.C
@@ -8,14 +8,14 @@ 
 template <class T>
 struct Foo {
   int j; // we never see this one.
-  int k; // { dg-message "Foo" "" }
+  int k; // { dg-message "Foo" }
   
 };
 
 struct Baz 
 {
   int j;
-  int k; // { dg-message "candidates" "" }
+  int k; // { dg-message "candidates" }
   
 };
 
@@ -23,7 +23,7 @@  template <class T>
 struct Bar : public Foo<T>, Baz {
   
   int baz () { return j; } // binds to Baz::j
-  int foo () { return this->k; } // { dg-error "request for member" "" }
+  int foo () { return this->k; } // { dg-error "request for member" }
 };
 
 int main()
@@ -31,7 +31,7 @@  int main()
   Bar<int> bar;
 
   bar.baz ();
-  bar.foo (); // { dg-message "required" "" }
+  bar.foo (); // { dg-message "required" }
   
   return 0;
 }
diff --git a/gcc/testsuite/g++.dg/parse/parameter-declaration-1.C b/gcc/testsuite/g++.dg/parse/parameter-declaration-1.C
index 1eaa00e..5ff3fb2 100644
--- a/gcc/testsuite/g++.dg/parse/parameter-declaration-1.C
+++ b/gcc/testsuite/g++.dg/parse/parameter-declaration-1.C
@@ -3,4 +3,4 @@ 
 // { dg-do compile }
 
 struct {
-   a(void = 0; a(0), a(0)	// { dg-error "" "" }
+   a(void = 0; a(0), a(0)	// { dg-error "" }
diff --git a/gcc/testsuite/g++.dg/parse/ptrmem2.C b/gcc/testsuite/g++.dg/parse/ptrmem2.C
index bbc116e..d2b0260 100644
--- a/gcc/testsuite/g++.dg/parse/ptrmem2.C
+++ b/gcc/testsuite/g++.dg/parse/ptrmem2.C
@@ -8,4 +8,4 @@ 
 
 namespace A {}
 
-int A::* p; // { dg-error "is a namespace" "" }
+int A::* p; // { dg-error "is a namespace" }
diff --git a/gcc/testsuite/g++.dg/parse/ptrmem3.C b/gcc/testsuite/g++.dg/parse/ptrmem3.C
index 444f25c..753b45f 100644
--- a/gcc/testsuite/g++.dg/parse/ptrmem3.C
+++ b/gcc/testsuite/g++.dg/parse/ptrmem3.C
@@ -7,5 +7,5 @@ 
 
 template<typename> struct A
 {
-  int A<0>::* p; // { dg-error "(type/value mismatch)|(expected)" "" }
+  int A<0>::* p; // { dg-error "(type/value mismatch)|(expected)" }
 };
diff --git a/gcc/testsuite/g++.dg/parse/saved1.C b/gcc/testsuite/g++.dg/parse/saved1.C
index f728108..0153fb2 100644
--- a/gcc/testsuite/g++.dg/parse/saved1.C
+++ b/gcc/testsuite/g++.dg/parse/saved1.C
@@ -1,6 +1,6 @@ 
 // Test that the parser doesn't go into an infinite loop from ignoring the
 // PRE_PARSED_FUNCTION_DECL token.
 
-class C { static void* operator new(size_t); }; // { dg-error "" "" }
-void* C::operator new(size_t) { return 0; } // { dg-error "" "" }
-class D { D(int i): integer(i){}}; // { dg-error "" "" }
+class C { static void* operator new(size_t); }; // { dg-error "" }
+void* C::operator new(size_t) { return 0; } // { dg-error "" }
+class D { D(int i): integer(i){}}; // { dg-error "" }
diff --git a/gcc/testsuite/g++.dg/tc1/dr101.C b/gcc/testsuite/g++.dg/tc1/dr101.C
index 0316aaa..e36add7 100644
--- a/gcc/testsuite/g++.dg/tc1/dr101.C
+++ b/gcc/testsuite/g++.dg/tc1/dr101.C
@@ -17,10 +17,10 @@  namespace Test1 {
 
 namespace Test2 {
 
-  typedef unsigned int X;   // { dg-bogus "X" "" }
+  typedef unsigned int X;   // { dg-bogus "X" }
   extern "C" int f2();
   namespace N {
-    typedef unsigned int X; // { dg-bogus "X" "" }
+    typedef unsigned int X; // { dg-bogus "X" }
     extern "C" int f2();
   }
   using namespace N;
diff --git a/gcc/testsuite/g++.dg/tc1/dr142.C b/gcc/testsuite/g++.dg/tc1/dr142.C
index 2568644..2f03702 100644
--- a/gcc/testsuite/g++.dg/tc1/dr142.C
+++ b/gcc/testsuite/g++.dg/tc1/dr142.C
@@ -16,17 +16,17 @@  class DD: public D {
 };
 
 void DD::f() {
-  mi = 3;          // { dg-error "within this context" "" }
-  si = 3;          // { dg-error "within this context" "" }
+  mi = 3;          // { dg-error "within this context" }
+  si = 3;          // { dg-error "within this context" }
   ::B b;
   b.mi = 3;
   b.si = 3;
   ::B::si = 3;
-  ::B* bp1 = this;        // { dg-error "inaccessible base" "" }
+  ::B* bp1 = this;        // { dg-error "inaccessible base" }
   ::B* bp2 = (::B*)this;
   bp2->mi = 3;
 
 
-  B b2;                   // { dg-error "within this context" "" }
-  B::si = 3;              // { dg-error "within this context" "" }
+  B b2;                   // { dg-error "within this context" }
+  B::si = 3;              // { dg-error "within this context" }
 }
diff --git a/gcc/testsuite/g++.dg/tc1/dr176.C b/gcc/testsuite/g++.dg/tc1/dr176.C
index 7f4d830..52ab926 100644
--- a/gcc/testsuite/g++.dg/tc1/dr176.C
+++ b/gcc/testsuite/g++.dg/tc1/dr176.C
@@ -6,7 +6,7 @@  namespace N1 {
   template <class T> struct Base {
     Base* p;
     Base<T*>* p2;
-    ::Base* p3;    // { dg-error "" "" }
+    ::Base* p3;    // { dg-error "" }
   };
 
   template <class T> struct Derived: public Base<T> {
@@ -22,7 +22,7 @@  namespace N1 {
 namespace N2 {
   template <class T> struct Base {};
   template <class T> struct Derived: public Base<T> {
-    typename Derived::template Base<double>* p1;  // { dg-bogus "" "" }
+    typename Derived::template Base<double>* p1;  // { dg-bogus "" }
   };
 
   template struct Derived<void>;
diff --git a/gcc/testsuite/g++.dg/template/conv4.C b/gcc/testsuite/g++.dg/template/conv4.C
index 01f158a..f60759a 100644
--- a/gcc/testsuite/g++.dg/template/conv4.C
+++ b/gcc/testsuite/g++.dg/template/conv4.C
@@ -21,7 +21,7 @@  struct D
 {
   int Foo ()
   {
-    return operator int (); // { dg-error "not defined" "" }
+    return operator int (); // { dg-error "not defined" }
   }
 };
 
diff --git a/gcc/testsuite/g++.dg/template/crash56.C b/gcc/testsuite/g++.dg/template/crash56.C
index 03bddf4..ae2d019 100644
--- a/gcc/testsuite/g++.dg/template/crash56.C
+++ b/gcc/testsuite/g++.dg/template/crash56.C
@@ -12,5 +12,5 @@  namespace N
 
 template<typename T> void g (N::A *p)
 {
-  (void) A (p); // { dg-message "" "" }
+  (void) A (p); // { dg-message "" }
 }
diff --git a/gcc/testsuite/g++.dg/template/dependent-expr2.C b/gcc/testsuite/g++.dg/template/dependent-expr2.C
index 06f056b..dcba6e1 100644
--- a/gcc/testsuite/g++.dg/template/dependent-expr2.C
+++ b/gcc/testsuite/g++.dg/template/dependent-expr2.C
@@ -18,6 +18,6 @@  struct B
 {
   bool bar(A& a)
   {
-    return a.foo == 0; // { dg-error "" "" }
+    return a.foo == 0; // { dg-error "" }
   }
 };
diff --git a/gcc/testsuite/g++.dg/template/error1.C b/gcc/testsuite/g++.dg/template/error1.C
index 03a8323..1bf5228 100644
--- a/gcc/testsuite/g++.dg/template/error1.C
+++ b/gcc/testsuite/g++.dg/template/error1.C
@@ -8,6 +8,6 @@ 
 template <class T> void make_pair(T x);
 
 void foo(){
-  struct fps_chan_ID fps; // { dg-error "incomplete" "" }
-  make_pair(fps);         // { dg-bogus "no matching function" "" }
+  struct fps_chan_ID fps; // { dg-error "incomplete" }
+  make_pair(fps);         // { dg-bogus "no matching function" }
 }
diff --git a/gcc/testsuite/g++.dg/template/error2.C b/gcc/testsuite/g++.dg/template/error2.C
index a7f199e..68d883c 100644
--- a/gcc/testsuite/g++.dg/template/error2.C
+++ b/gcc/testsuite/g++.dg/template/error2.C
@@ -13,16 +13,16 @@  template<class T> struct X
 template<class T >
 struct Derived
 {
-  class Nested : public X<T> // { dg-message "required" "" }
+  class Nested : public X<T> // { dg-message "required" }
   {
   };
   
-  Nested m; // { dg-message "required" "" }
+  Nested m; // { dg-message "required" }
   
   void Foo ();
 };
 
 void Foo (Derived<void> &x)
 {
-  x.Foo (); // { dg-message "required" "" }
+  x.Foo (); // { dg-message "required" }
 }
diff --git a/gcc/testsuite/g++.dg/template/explicit6.C b/gcc/testsuite/g++.dg/template/explicit6.C
index f740269..a28fd9e 100644
--- a/gcc/testsuite/g++.dg/template/explicit6.C
+++ b/gcc/testsuite/g++.dg/template/explicit6.C
@@ -5,4 +5,4 @@ 
 // Bug 19895: ICE on invalid
 
 struct A;
-template A<>::A(); // { dg-error "(not a template)|(explicit qualification)" "" }
+template A<>::A(); // { dg-error "(not a template)|(explicit qualification)" }
diff --git a/gcc/testsuite/g++.dg/template/init-list.C b/gcc/testsuite/g++.dg/template/init-list.C
index 6a868b2..32e7203 100644
--- a/gcc/testsuite/g++.dg/template/init-list.C
+++ b/gcc/testsuite/g++.dg/template/init-list.C
@@ -12,6 +12,6 @@  struct Derived : Base<T> {
 };
 
 template<typename T>
-Derived<T>::Derived() : Base(4) { } // { dg-error "have any field" "" }
+Derived<T>::Derived() : Base(4) { } // { dg-error "have any field" }
 
 
diff --git a/gcc/testsuite/g++.dg/template/local1.C b/gcc/testsuite/g++.dg/template/local1.C
index 4293aca..58f96b4 100644
--- a/gcc/testsuite/g++.dg/template/local1.C
+++ b/gcc/testsuite/g++.dg/template/local1.C
@@ -14,7 +14,7 @@  template<class T> void A::f()
   struct B
   {
     void g() {}
-    static int x;	// { dg-error "static.*int A::f\\(\\)::B::x" "" }
+    static int x;	// { dg-error "static.*int A::f\\(\\)::B::x" }
   };
 }
 
diff --git a/gcc/testsuite/g++.dg/template/lookup2.C b/gcc/testsuite/g++.dg/template/lookup2.C
index de4e1d9..ac299fa 100644
--- a/gcc/testsuite/g++.dg/template/lookup2.C
+++ b/gcc/testsuite/g++.dg/template/lookup2.C
@@ -9,10 +9,10 @@  struct B {};
 
 template <typename T> void Bar ()
 {
-  T::foo (); // { dg-error "is not a member of" "" }
+  T::foo (); // { dg-error "is not a member of" }
 }
 
 void Foo ()
 {
-  Bar<B> (); // { dg-message "required" "" }
+  Bar<B> (); // { dg-message "required" }
 }
diff --git a/gcc/testsuite/g++.dg/template/meminit2.C b/gcc/testsuite/g++.dg/template/meminit2.C
index f6afa01..db6e042 100644
--- a/gcc/testsuite/g++.dg/template/meminit2.C
+++ b/gcc/testsuite/g++.dg/template/meminit2.C
@@ -14,7 +14,7 @@  struct A : typename O<T>::template I<int> {   // { dg-error "keyword 'typename'
 
 template <typename T> 
 struct B : O<T>::template I<int> {
-  B() :    O<T>::I<int>()   // { dg-error "used as template|it is a template" "" }
+  B() :    O<T>::I<int>()   // { dg-error "used as template|it is a template" }
   {}
 };
 
diff --git a/gcc/testsuite/g++.dg/template/nontype25.C b/gcc/testsuite/g++.dg/template/nontype25.C
index 85393c1..3918bea 100644
--- a/gcc/testsuite/g++.dg/template/nontype25.C
+++ b/gcc/testsuite/g++.dg/template/nontype25.C
@@ -7,7 +7,7 @@  template<const A* a> class C {};
 template<const B* b> class D {};
 template<B* b> class E {};
 
-template<const B* b> void f(D<b> &, C<static_cast<const A*>(b)> &) {} // { dg-error "" "" }
+template<const B* b> void f(D<b> &, C<static_cast<const A*>(b)> &) {} // { dg-error "" }
 template<const B* b> void g(D<b> &, E<const_cast<B*>(b)> &) {} // { dg-error "" "" { target { ! c++11 } } }
 
 B b;
diff --git a/gcc/testsuite/g++.dg/template/ptrmem2.C b/gcc/testsuite/g++.dg/template/ptrmem2.C
index 6aa2512..94c077c 100644
--- a/gcc/testsuite/g++.dg/template/ptrmem2.C
+++ b/gcc/testsuite/g++.dg/template/ptrmem2.C
@@ -11,5 +11,5 @@  template <typename T> T A::* Foo (); // { dg-error "reference" }
 
 void Baz ()
 {
-  Foo <int &> (); // { dg-error "no matching function" "" }
+  Foo <int &> (); // { dg-error "no matching function" }
 }
diff --git a/gcc/testsuite/g++.dg/template/qualttp19.C b/gcc/testsuite/g++.dg/template/qualttp19.C
index be6676c..6e2e204 100644
--- a/gcc/testsuite/g++.dg/template/qualttp19.C
+++ b/gcc/testsuite/g++.dg/template/qualttp19.C
@@ -26,7 +26,7 @@  int main()
    // Two typedefs lead to the instant. of the less spec. ("wrong") template
   typedef int& r_type;
   typedef const r_type cr_type;
-  call_traits<cr_type>::type_less_spec var  = num; // { dg-error "" "" }
+  call_traits<cr_type>::type_less_spec var  = num; // { dg-error "" }
   
    // The explicit type leads to the instantiation of the "correct" one
   call_traits<const int&>::type_more_spec var2 = num;
diff --git a/gcc/testsuite/g++.dg/template/qualttp20.C b/gcc/testsuite/g++.dg/template/qualttp20.C
index 8073fe3..52989ba 100644
--- a/gcc/testsuite/g++.dg/template/qualttp20.C
+++ b/gcc/testsuite/g++.dg/template/qualttp20.C
@@ -16,7 +16,7 @@  struct AS
 
 template <typename T> struct B1 : T
 {
-  typedef typename T::L __restrict__ r;// { dg-error "'__restrict__' qualifiers cannot" "" }
+  typedef typename T::L __restrict__ r;// { dg-error "'__restrict__' qualifiers cannot" }
   typedef typename T::myT __restrict__ p;
 
   // The following are DR 295 dependent
@@ -32,5 +32,5 @@  template <typename T> struct B2 : T
   myconst b;
 };
 
-B1<AS> b1;	// { dg-message "required" "" }
+B1<AS> b1;	// { dg-message "required" }
 B2<AS> b2;
diff --git a/gcc/testsuite/g++.dg/template/ttp3.C b/gcc/testsuite/g++.dg/template/ttp3.C
index a7f231a..408e1c8 100644
--- a/gcc/testsuite/g++.dg/template/ttp3.C
+++ b/gcc/testsuite/g++.dg/template/ttp3.C
@@ -14,7 +14,7 @@  class OUTER {
   template <class T>
   class List { };
   
-  vector<class List> data; // { dg-error "invalid|required|ISO C" "" }
+  vector<class List> data; // { dg-error "invalid|required|ISO C" }
 };
 
 template <class T>
@@ -23,4 +23,4 @@  class List { };
 // This next line should just do a lookup of 'class List', and then
 // get a type/value mismatch. Instead we try and push 'class List'
 // into the global namespace and get a redeclaration error.
-vector<class List > data;	// { dg-error "invalid|required|declaration" "" }
+vector<class List > data;	// { dg-error "invalid|required|declaration" }
diff --git a/gcc/testsuite/g++.dg/template/unify4.C b/gcc/testsuite/g++.dg/template/unify4.C
index 19d9f3a..1cda4a0 100644
--- a/gcc/testsuite/g++.dg/template/unify4.C
+++ b/gcc/testsuite/g++.dg/template/unify4.C
@@ -15,4 +15,4 @@  struct A { int i; };
 
 static void f (int A::* pmi) { }
 
-int main () { f (null); } // { dg-error "cannot convert" "" }
+int main () { f (null); } // { dg-error "cannot convert" }
diff --git a/gcc/testsuite/g++.dg/template/unify6.C b/gcc/testsuite/g++.dg/template/unify6.C
index 8228e3e..95e24a25 100644
--- a/gcc/testsuite/g++.dg/template/unify6.C
+++ b/gcc/testsuite/g++.dg/template/unify6.C
@@ -18,6 +18,6 @@  void Bar ()
 
   Foo3 (&Baz);
 
-  Foo3 (&Baz, &Baz); // { dg-error "no matching function" "" }
+  Foo3 (&Baz, &Baz); // { dg-error "no matching function" }
   // { dg-message "(candidate|incompatible cv-qualifiers)" "candidate note" { target *-*-* } .-1 }
 }
diff --git a/gcc/testsuite/g++.dg/template/unify7.C b/gcc/testsuite/g++.dg/template/unify7.C
index 91cd58f..9dac57a 100644
--- a/gcc/testsuite/g++.dg/template/unify7.C
+++ b/gcc/testsuite/g++.dg/template/unify7.C
@@ -10,6 +10,6 @@  int &f ();
 int main()
 {
   Foo (f);
-  Baz (f); // { dg-error "no matching function" "" }
+  Baz (f); // { dg-error "no matching function" }
   // { dg-message "(candidate|incompatible cv-qualifiers)" "candidate note" { target *-*-* } .-1 }
 }
diff --git a/gcc/testsuite/g++.dg/template/warn1.C b/gcc/testsuite/g++.dg/template/warn1.C
index 5067d76..53b04ec 100644
--- a/gcc/testsuite/g++.dg/template/warn1.C
+++ b/gcc/testsuite/g++.dg/template/warn1.C
@@ -9,8 +9,8 @@ 
 template <class T>  void Foo(T i) 
 { 
   i++, i++;
-  i, i++; // { dg-warning "left operand" "" }
-  i++, i; // { dg-warning "right operand" "" }
+  i, i++; // { dg-warning "left operand" }
+  i++, i; // { dg-warning "right operand" }
   for (;; --i, ++i)
     ;
 } 
diff --git a/gcc/testsuite/g++.dg/tree-ssa/dom-invalid.C b/gcc/testsuite/g++.dg/tree-ssa/dom-invalid.C
index 91f43ae..41343ee 100644
--- a/gcc/testsuite/g++.dg/tree-ssa/dom-invalid.C
+++ b/gcc/testsuite/g++.dg/tree-ssa/dom-invalid.C
@@ -49,4 +49,4 @@  main ()
 {
  E e;
  e.bar ();
-} // { dg-message  "note: file" "" }
+} // { dg-message  "note: file" }
diff --git a/gcc/testsuite/g++.dg/ubsan/shift-1.C b/gcc/testsuite/g++.dg/ubsan/shift-1.C
index 493a55c..e98bb08 100644
--- a/gcc/testsuite/g++.dg/ubsan/shift-1.C
+++ b/gcc/testsuite/g++.dg/ubsan/shift-1.C
@@ -8,10 +8,10 @@  foo (int x)
   /* None of the following should pass.  */
   switch (x)
     {
-    case 1 >> -1: /* { dg-error "operand of shift" "" } */
-    case -1 >> -1: /* { dg-error "operand of shift" "" } */
-    case 1 << -1: /* { dg-error "operand of shift" "" } */
-    case -1 << -1: /* { dg-error "operand of shift" "" } */
+    case 1 >> -1: /* { dg-error "operand of shift" } */
+    case -1 >> -1: /* { dg-error "operand of shift" } */
+    case 1 << -1: /* { dg-error "operand of shift" } */
+    case -1 << -1: /* { dg-error "operand of shift" } */
       return 1;
     }
   return 0;
@@ -23,8 +23,8 @@  bar (int x)
   /* None of the following should pass.  */
   switch (x)
     {
-    case -1 >> 200: /* { dg-error "operand of shift" "" } */
-    case 1 << 200: /* { dg-error "operand of shift" "" } */
+    case -1 >> 200: /* { dg-error "operand of shift" } */
+    case 1 << 200: /* { dg-error "operand of shift" } */
       return 1;
     }
   return 0;
diff --git a/gcc/testsuite/g++.dg/warn/Wunused-2.C b/gcc/testsuite/g++.dg/warn/Wunused-2.C
index 593bf48..9cdd11e 100644
--- a/gcc/testsuite/g++.dg/warn/Wunused-2.C
+++ b/gcc/testsuite/g++.dg/warn/Wunused-2.C
@@ -2,5 +2,5 @@ 
 // { dg-options "-Wunused -O3" }
 
 static const int i = 0;
-static void f() { }		/* { dg-warning "defined but not used" "" } */
+static void f() { }		/* { dg-warning "defined but not used" } */
 static inline void g() { }
diff --git a/gcc/testsuite/g++.dg/warn/Wunused-4.C b/gcc/testsuite/g++.dg/warn/Wunused-4.C
index 9018e92e..978f335 100644
--- a/gcc/testsuite/g++.dg/warn/Wunused-4.C
+++ b/gcc/testsuite/g++.dg/warn/Wunused-4.C
@@ -10,11 +10,11 @@ 
 
 struct C1 {
   // Only use in-charge ctor
-  C1(int bi) {}  // { dg-warning "unused parameter" "" }
+  C1(int bi) {}  // { dg-warning "unused parameter" }
 };
 struct C2 {
   // Only use base ctor
-  C2(int bi) {}  // { dg-warning "unused parameter" "" }
+  C2(int bi) {}  // { dg-warning "unused parameter" }
 };
 
 struct D : C2
diff --git a/gcc/testsuite/g++.dg/warn/Wunused-6.C b/gcc/testsuite/g++.dg/warn/Wunused-6.C
index 58a3f64..198fe96 100644
--- a/gcc/testsuite/g++.dg/warn/Wunused-6.C
+++ b/gcc/testsuite/g++.dg/warn/Wunused-6.C
@@ -5,7 +5,7 @@ 
 void foo()
 {
   if (false)
-    if (int i=0)  // { dg-warning "unused" "" }
-      int j=0;    // { dg-warning "unused" "" }
+    if (int i=0)  // { dg-warning "unused" }
+      int j=0;    // { dg-warning "unused" }
 }
 
diff --git a/gcc/testsuite/g++.dg/warn/deprecated-6.C b/gcc/testsuite/g++.dg/warn/deprecated-6.C
index ad9eb3d..a2c4b58 100644
--- a/gcc/testsuite/g++.dg/warn/deprecated-6.C
+++ b/gcc/testsuite/g++.dg/warn/deprecated-6.C
@@ -5,17 +5,17 @@ 
 typedef int INT1 __attribute__((deprecated("Please avoid INT1")));
 typedef INT1 INT2 __attribute__ ((__deprecated__("Please avoid INT2")));
 
-typedef INT1 INT1a; 			/* { dg-warning "'INT1' is deprecated: Please avoid INT1" "" } */
+typedef INT1 INT1a; 			/* { dg-warning "'INT1' is deprecated: Please avoid INT1" } */
 
-INT1 should_be_unavailable; 		/* { dg-warning "'INT1' is deprecated: Please avoid INT1" "" } */
+INT1 should_be_unavailable; 		/* { dg-warning "'INT1' is deprecated: Please avoid INT1" } */
 INT1a should_not_be_deprecated;
 
 INT1 f1(void) __attribute__ ((deprecated("Please avoid f1"))); 
-INT1 f2(void) { return 0; }		/* { dg-warning "'INT1' is deprecated: Please avoid INT1" "" } */
+INT1 f2(void) { return 0; }		/* { dg-warning "'INT1' is deprecated: Please avoid INT1" } */
 
 INT2 f3(void) __attribute__ ((__deprecated__("Please avoid f3"))); 
-INT2 f4(void) { return 0; }		/* { dg-warning "'INT2' is deprecated: Please avoid INT2" "" } */
-int f5(INT2 x);				/* { dg-warning "'INT2' is deprecated" "" } */
+INT2 f4(void) { return 0; }		/* { dg-warning "'INT2' is deprecated: Please avoid INT2" } */
+int f5(INT2 x);				/* { dg-warning "'INT2' is deprecated" } */
 int f6(INT2 x) __attribute__ ((__deprecated__("Please avoid f6")));
 
 typedef enum Color {red, green, blue} Color __attribute__((deprecated("Please avoid Color")));
@@ -23,7 +23,7 @@  typedef enum Color {red, green, blue} Color __attribute__((deprecated("Please av
 int g1;
 int g2 __attribute__ ((deprecated("Please avoid g2")));
 int g3 __attribute__ ((__deprecated__("Please avoid g3")));
-Color k;				/* { dg-warning "'Color' is deprecated: Please avoid Color" "" } */
+Color k;				/* { dg-warning "'Color' is deprecated: Please avoid Color" } */
 
 typedef struct {
   int field1;
@@ -44,13 +44,13 @@  typedef struct {
 
 int func1()
 {
-   INT1 w;				/* { dg-warning "'INT1' is deprecated: Please avoid INT1" "" } */
+   INT1 w;				/* { dg-warning "'INT1' is deprecated: Please avoid INT1" } */
    int x __attribute__ ((deprecated("Please avoid x")));
    int y __attribute__ ((__deprecated__("Please avoid y")));
    int z;
-   int (*pf)() = f1;			/* { dg-warning "'INT1 f1\\(\\)' is deprecated: Please avoid f1" "" } */
+   int (*pf)() = f1;			/* { dg-warning "'INT1 f1\\(\\)' is deprecated: Please avoid f1" } */
 
-   z = w + x + y + g1 + g2 + g3;	/* { dg-warning "'x' is deprecated: Please avoid x" "" } */
+   z = w + x + y + g1 + g2 + g3;	/* { dg-warning "'x' is deprecated: Please avoid x" } */
 					/* { dg-warning "'y' is deprecated: Please avoid y" "y" { target *-*-* } .-1 } */
 					/* { dg-warning "'g2' is deprecated: Please avoid g2" "g2" { target *-*-* } .-2 } */
 					/* { dg-warning "'g3' is deprecated: Please avoid g3" "g3" { target *-*-* } .-3 } */
@@ -62,34 +62,34 @@  int func2(S1 *p)
   S1 lp;
   
   if (p->field1)
-     return p->field2;			/* { dg-warning "'S1::field2' is deprecated: Please avoid field2" "" } */
-  else if (lp.field4)			/* { dg-warning "'S1::field4' is deprecated: Please avoid field4" "" } */
+     return p->field2;			/* { dg-warning "'S1::field2' is deprecated: Please avoid field2" } */
+  else if (lp.field4)			/* { dg-warning "'S1::field4' is deprecated: Please avoid field4" } */
      return p->field3;
   
   p->u1.field5 = g1 + p->field7;
-  p->u2.field9;				/* { dg-warning "'S1::u2' is deprecated: Please avoid u2" "" } */
-  return p->u1.field6 + p->field8;	/* { dg-warning "'S1::<unnamed union>::field6' is deprecated: Please avoid field6" "" } */
+  p->u2.field9;				/* { dg-warning "'S1::u2' is deprecated: Please avoid u2" } */
+  return p->u1.field6 + p->field8;	/* { dg-warning "'S1::<unnamed union>::field6' is deprecated: Please avoid field6" } */
 					/* { dg-warning "'S1::field8' is deprecated: Please avoid field8" "field8" { target *-*-* } .-1 } */
 }
 
 struct SS1 {
   int x;
-  INT1 y; 				/* { dg-warning "'INT1' is deprecated: Please avoid INT1" "" } */
+  INT1 y; 				/* { dg-warning "'INT1' is deprecated: Please avoid INT1" } */
 } __attribute__ ((deprecated("Please avoid SS1")));
 
-struct SS1 *p1;				/* { dg-warning "'SS1' is deprecated: Please avoid SS1" "" } */
+struct SS1 *p1;				/* { dg-warning "'SS1' is deprecated: Please avoid SS1" } */
 
 struct __attribute__ ((__deprecated__("Please avoid SS2"))) SS2 {
   int x;
-  INT1 y; 				/* { dg-warning "'INT1' is deprecated: Please avoid INT1" "" } */
+  INT1 y; 				/* { dg-warning "'INT1' is deprecated: Please avoid INT1" } */
 };
 
-struct SS2 *p2;				/* { dg-warning "'SS2' is deprecated: Please avoid SS2" "" } */
+struct SS2 *p2;				/* { dg-warning "'SS2' is deprecated: Please avoid SS2" } */
 
 class T {
   public:
     void member1(int) __attribute__ ((deprecated("Please avoid member1")));
-    void member2(INT1) __attribute__ ((__deprecated__("Please avoid member2"))); /* { dg-warning "'INT1' is deprecated" "" } */
+    void member2(INT1) __attribute__ ((__deprecated__("Please avoid member2"))); /* { dg-warning "'INT1' is deprecated" } */
     int member3(T *);
     int x;
 } __attribute__ ((deprecated("Please avoid T")));
@@ -100,11 +100,11 @@  inline void T::member1(int) {}
 
 int T::member3(T *p)		// { dg-warning "'T' is deprecated: Please avoid T" }
 {
-  p->member1(1);			/* { dg-warning "'void T::member1\\(int\\)' is deprecated: Please avoid member1" "" } */
-  (*p).member1(2);			/* { dg-warning "'void T::member1\\(int\\)' is deprecated: Please avoid member1" "" } */
-  p->member2(1);			/* { dg-warning "'void T::member2\\(INT1\\)' is deprecated: Please avoid member2" "" } */
-  (*p).member2(2);			/* { dg-warning "'void T::member2\\(INT1\\)' is deprecated: Please avoid member2" "" } */
+  p->member1(1);			/* { dg-warning "'void T::member1\\(int\\)' is deprecated: Please avoid member1" } */
+  (*p).member1(2);			/* { dg-warning "'void T::member1\\(int\\)' is deprecated: Please avoid member1" } */
+  p->member2(1);			/* { dg-warning "'void T::member2\\(INT1\\)' is deprecated: Please avoid member2" } */
+  (*p).member2(2);			/* { dg-warning "'void T::member2\\(INT1\\)' is deprecated: Please avoid member2" } */
   p->member3(p);
   (*p).member3(p);
-  return f1(); 				/* { dg-warning "'INT1 f1\\(\\)' is deprecated: Please avoid f1" "" } */
+  return f1(); 				/* { dg-warning "'INT1 f1\\(\\)' is deprecated: Please avoid f1" } */
 }
diff --git a/gcc/testsuite/g++.dg/warn/deprecated.C b/gcc/testsuite/g++.dg/warn/deprecated.C
index a5b2aee..8b89a34 100644
--- a/gcc/testsuite/g++.dg/warn/deprecated.C
+++ b/gcc/testsuite/g++.dg/warn/deprecated.C
@@ -6,18 +6,18 @@ 
 typedef int INT1 __attribute__((deprecated));
 typedef INT1 INT2 __attribute__ ((__deprecated__));
 
-typedef INT1 INT1a; 			/* { dg-warning "'INT1' is deprecated" "" } */
+typedef INT1 INT1a; 			/* { dg-warning "'INT1' is deprecated" } */
 typedef INT1 INT1b __attribute__ ((deprecated));
 
-INT1 should_be_unavailable; 		/* { dg-warning "'INT1' is deprecated" "" } */
+INT1 should_be_unavailable; 		/* { dg-warning "'INT1' is deprecated" } */
 INT1a should_not_be_deprecated;
 
 INT1 f1(void) __attribute__ ((deprecated)); 
-INT1 f2(void) { return 0; }		/* { dg-warning "'INT1' is deprecated" "" } */
+INT1 f2(void) { return 0; }		/* { dg-warning "'INT1' is deprecated" } */
 
 INT2 f3(void) __attribute__ ((__deprecated__)); 
-INT2 f4(void) { return 0; }		/* { dg-warning "'INT2' is deprecated" "" } */
-int f5(INT2 x);				/* { dg-warning "'INT2' is deprecated" "" } */
+INT2 f4(void) { return 0; }		/* { dg-warning "'INT2' is deprecated" } */
+int f5(INT2 x);				/* { dg-warning "'INT2' is deprecated" } */
 int f6(INT2 x) __attribute__ ((__deprecated__));
 
 typedef enum Color {red, green, blue} Color __attribute__((deprecated));
@@ -25,7 +25,7 @@  typedef enum Color {red, green, blue} Color __attribute__((deprecated));
 int g1;
 int g2 __attribute__ ((deprecated));
 int g3 __attribute__ ((__deprecated__));
-Color k;				/* { dg-warning "'Color' is deprecated" "" } */
+Color k;				/* { dg-warning "'Color' is deprecated" } */
 
 typedef struct {
   int field1;
@@ -46,13 +46,13 @@  typedef struct {
 
 int func1()
 {
-   INT1 w;				/* { dg-warning "'INT1' is deprecated" "" } */
+   INT1 w;				/* { dg-warning "'INT1' is deprecated" } */
    int x __attribute__ ((deprecated));
    int y __attribute__ ((__deprecated__));
    int z;
-   int (*pf)() = f1;			/* { dg-warning "'INT1 f1\\(\\)' is deprecated" "" } */
+   int (*pf)() = f1;			/* { dg-warning "'INT1 f1\\(\\)' is deprecated" } */
 
-   z = w + x + y + g1 + g2 + g3;	/* { dg-warning "'x' is deprecated" "" } */
+   z = w + x + y + g1 + g2 + g3;	/* { dg-warning "'x' is deprecated" } */
    					/* { dg-warning "'y' is deprecated" "y" { target *-*-* } .-1 } */
    					/* { dg-warning "'g2' is deprecated" "g2" { target *-*-* } .-2 } */
    					/* { dg-warning "'g3' is deprecated" "g3" { target *-*-* } .-3 } */
@@ -64,36 +64,36 @@  int func2(S1 *p)
   S1 lp;
   
   if (p->field1)
-     return p->field2;			/* { dg-warning "'S1::field2' is deprecated" "" } */
-  else if (lp.field4)			/* { dg-warning "'S1::field4' is deprecated" "" } */
+     return p->field2;			/* { dg-warning "'S1::field2' is deprecated" } */
+  else if (lp.field4)			/* { dg-warning "'S1::field4' is deprecated" } */
      return p->field3;
   
   p->u1.field5 = g1 + p->field7;
-  p->u2.field9;				/* { dg-warning "'S1::u2' is deprecated" "" } */
-  return p->u1.field6 + p->field8;	/* { dg-warning "'S1::<unnamed union>::field6' is deprecated" "" } */
+  p->u2.field9;				/* { dg-warning "'S1::u2' is deprecated" } */
+  return p->u1.field6 + p->field8;	/* { dg-warning "'S1::<unnamed union>::field6' is deprecated" } */
   					/* { dg-warning "'S1::field8' is deprecated" "field8" { target *-*-* } .-1 } */
 }
 
 struct SS1 {
   int x;
-  INT1 y; 				/* { dg-warning "'INT1' is deprecated" "" } */
+  INT1 y; 				/* { dg-warning "'INT1' is deprecated" } */
 } __attribute__ ((deprecated));
 
-struct SS1 *p1;				/* { dg-warning "'SS1' is deprecated" "" } */
+struct SS1 *p1;				/* { dg-warning "'SS1' is deprecated" } */
 
 struct __attribute__ ((__deprecated__)) SS2 {
   int x;
-  INT1 y; 				/* { dg-warning "'INT1' is deprecated" "" } */
+  INT1 y; 				/* { dg-warning "'INT1' is deprecated" } */
 };
 
-struct SS2 *p2;				/* { dg-warning "'SS2' is deprecated" "" } */
+struct SS2 *p2;				/* { dg-warning "'SS2' is deprecated" } */
 #endif
 
 #ifdef __cplusplus
 class T {
   public:
     void member1(int) __attribute__ ((deprecated));
-    void member2(INT1) __attribute__ ((__deprecated__)); /* { dg-warning "'INT1' is deprecated" "" } */
+    void member2(INT1) __attribute__ ((__deprecated__)); /* { dg-warning "'INT1' is deprecated" } */
     int member3(T *);
     int x;
 } __attribute__ ((deprecated));
@@ -104,13 +104,13 @@  inline void T::member1(int) {}
 
 int T::member3(T *p)		// { dg-warning "'T' is deprecated" }
 {
-  p->member1(1);			/* { dg-warning "'void T::member1\\(int\\)' is deprecated" "" } */
-  (*p).member1(2);			/* { dg-warning "'void T::member1\\(int\\)' is deprecated" "" } */
-  p->member2(1);			/* { dg-warning "'void T::member2\\(INT1\\)' is deprecated" "" } */
-  (*p).member2(2);			/* { dg-warning "'void T::member2\\(INT1\\)' is deprecated" "" } */
+  p->member1(1);			/* { dg-warning "'void T::member1\\(int\\)' is deprecated" } */
+  (*p).member1(2);			/* { dg-warning "'void T::member1\\(int\\)' is deprecated" } */
+  p->member2(1);			/* { dg-warning "'void T::member2\\(INT1\\)' is deprecated" } */
+  (*p).member2(2);			/* { dg-warning "'void T::member2\\(INT1\\)' is deprecated" } */
   p->member3(p);
   (*p).member3(p);
-  return f1(); 				/* { dg-warning "'INT1 f1\\(\\)' is deprecated" "" } */
+  return f1(); 				/* { dg-warning "'INT1 f1\\(\\)' is deprecated" } */
 }
 #endif
 
diff --git a/gcc/testsuite/g++.dg/warn/effc1.C b/gcc/testsuite/g++.dg/warn/effc1.C
index 345f8d1..db36b12 100644
--- a/gcc/testsuite/g++.dg/warn/effc1.C
+++ b/gcc/testsuite/g++.dg/warn/effc1.C
@@ -10,7 +10,7 @@  class A
 {
   public:
   A & operator+=( int );
-  A & operator+( int ); // { dg-warning ".* should return by value" "" }
+  A & operator+( int ); // { dg-warning ".* should return by value" }
   A operator+=( float );
   A operator+( float );
 };
diff --git a/gcc/testsuite/g++.dg/warn/effc3.C b/gcc/testsuite/g++.dg/warn/effc3.C
index ba2cc03..7480b29 100644
--- a/gcc/testsuite/g++.dg/warn/effc3.C
+++ b/gcc/testsuite/g++.dg/warn/effc3.C
@@ -28,20 +28,20 @@  struct B {
 
 
 // We should emit a warning for these
-struct C1 {		// { dg-warning "" "" }
+struct C1 {		// { dg-warning "" }
   int *ptr;
   C1();
   ~C1();
 };
 
-struct C2 {		// { dg-warning "" "" }
+struct C2 {		// { dg-warning "" }
   int *ptr;
   C2();
   C2(const C2&);
   ~C2();
 };
 
-struct C3 {		// { dg-warning "" "" }
+struct C3 {		// { dg-warning "" }
   int *ptr;
   C3();
   ~C3();
diff --git a/gcc/testsuite/g++.dg/warn/incomplete1.C b/gcc/testsuite/g++.dg/warn/incomplete1.C
index e880e36..8f21f7b 100644
--- a/gcc/testsuite/g++.dg/warn/incomplete1.C
+++ b/gcc/testsuite/g++.dg/warn/incomplete1.C
@@ -9,9 +9,9 @@ 
 // (But the deletion does not constitute an ill-formed program. So the
 // program should nevertheless compile, but it should give a warning.)
 
-class A;	// { dg-message "forward declaration of 'class A'" "" }
+class A;	// { dg-message "forward declaration of 'class A'" }
 
-A *a;		// { dg-warning "'a' has incomplete type" "" }
+A *a;		// { dg-warning "'a' has incomplete type" }
 
 int
 main (int argc, char **argv)
diff --git a/gcc/testsuite/g++.dg/warn/inline1.C b/gcc/testsuite/g++.dg/warn/inline1.C
index 24836e7..05b34fe 100644
--- a/gcc/testsuite/g++.dg/warn/inline1.C
+++ b/gcc/testsuite/g++.dg/warn/inline1.C
@@ -5,9 +5,9 @@ 
 
 // PR 4803. Used inline functions must have a definition.
 
-inline void Foo1 ();  // { dg-warning "inline function" "" }
+inline void Foo1 ();  // { dg-warning "inline function" }
 inline void Bar1 ();
-template <typename T> inline void Foo2(T);   // { dg-warning "inline function" "" }
+template <typename T> inline void Foo2(T);   // { dg-warning "inline function" }
 template <typename T> inline void Bar2(T);
 
 void Baz ()
diff --git a/gcc/testsuite/g++.dg/warn/noeffect2.C b/gcc/testsuite/g++.dg/warn/noeffect2.C
index 8b012c8..773a929 100644
--- a/gcc/testsuite/g++.dg/warn/noeffect2.C
+++ b/gcc/testsuite/g++.dg/warn/noeffect2.C
@@ -10,11 +10,11 @@ 
 extern "C" void FormatDisk();
   template <class T>
   struct C {
-    C(){ FormatDisk(), 0; }  // { dg-warning "right operand of comma" "" }
+    C(){ FormatDisk(), 0; }  // { dg-warning "right operand of comma" }
   };
   template struct C<int>; // { dg-message "required" }
   template <class T>
-  void f() { FormatDisk(), 0; } // { dg-warning "right operand of comma" "" }
+  void f() { FormatDisk(), 0; } // { dg-warning "right operand of comma" }
   template void f<int> (); // { dg-message "required" }
-void g() { FormatDisk(), 0; } // { dg-warning "right operand of comma" "" }
+void g() { FormatDisk(), 0; } // { dg-warning "right operand of comma" }
 
diff --git a/gcc/testsuite/g++.dg/warn/noeffect4.C b/gcc/testsuite/g++.dg/warn/noeffect4.C
index 612db48..1d451d9 100644
--- a/gcc/testsuite/g++.dg/warn/noeffect4.C
+++ b/gcc/testsuite/g++.dg/warn/noeffect4.C
@@ -79,10 +79,10 @@  template<int I> void Foo (X &x)
   reinterpret_cast<int> (x.Foo ()); // { dg-error "invalid cast" }
   const_cast<X &> (x.Foo ());       // { dg-warning "not used" }
   
-  reinterpret_cast<int *> (&x);// { dg-warning "no effect" "" }
-  const_cast<X &> (x);         // { dg-warning "no effect" "" }
-  sizeof (x++);                // { dg-warning "no effect" "" }
-  __alignof__ (x++);           // { dg-warning "no effect" "" }
+  reinterpret_cast<int *> (&x);// { dg-warning "no effect" }
+  const_cast<X &> (x);         // { dg-warning "no effect" }
+  sizeof (x++);                // { dg-warning "no effect" }
+  __alignof__ (x++);           // { dg-warning "no effect" }
 }
 
 template void Foo<4> (X&);     // { dg-message "required" }
diff --git a/gcc/testsuite/g++.dg/warn/oldcast1.C b/gcc/testsuite/g++.dg/warn/oldcast1.C
index 26c0a5c..d0ca10c 100644
--- a/gcc/testsuite/g++.dg/warn/oldcast1.C
+++ b/gcc/testsuite/g++.dg/warn/oldcast1.C
@@ -9,7 +9,7 @@ 
 void foo ()
 {
   int i;
-  float f = (float)i;  // { dg-warning "use of old-style cast" "" }
+  float f = (float)i;  // { dg-warning "use of old-style cast" }
 
   (void)i;
 }
diff --git a/gcc/testsuite/g++.dg/warn/sentinel.C b/gcc/testsuite/g++.dg/warn/sentinel.C
index 5f718f8..7fe81c1 100644
--- a/gcc/testsuite/g++.dg/warn/sentinel.C
+++ b/gcc/testsuite/g++.dg/warn/sentinel.C
@@ -4,8 +4,8 @@  extern void ex (int i, ...) __attribute__ ((__sentinel__(0)));
 
 void f()
 {
-  ex (1, 0);		/* { dg-warning "missing sentinel in function call" "" } */
-  ex (1, 0L);		/* { dg-warning "missing sentinel in function call" "" } */
+  ex (1, 0);		/* { dg-warning "missing sentinel in function call" } */
+  ex (1, 0L);		/* { dg-warning "missing sentinel in function call" } */
   ex (1, (void *)0);
   ex (1, __null);	/* { dg-bogus "sentinel" } */
 }
diff --git a/gcc/testsuite/g++.dg/warn/unit-1.C b/gcc/testsuite/g++.dg/warn/unit-1.C
index 18f5f6b..c7a7129 100644
--- a/gcc/testsuite/g++.dg/warn/unit-1.C
+++ b/gcc/testsuite/g++.dg/warn/unit-1.C
@@ -5,6 +5,6 @@  struct a { int mode; };
 int sys_msgctl (void)
 {
   struct a setbuf;
-  return setbuf.mode;  /* { dg-warning "'setbuf.a::mode' is used" "" } */
+  return setbuf.mode;  /* { dg-warning "'setbuf.a::mode' is used" } */
 }
 
diff --git a/gcc/testsuite/g++.old-deja/g++.pt/inherit2.C b/gcc/testsuite/g++.old-deja/g++.pt/inherit2.C
index f126f6a..1df951a 100644
--- a/gcc/testsuite/g++.old-deja/g++.pt/inherit2.C
+++ b/gcc/testsuite/g++.old-deja/g++.pt/inherit2.C
@@ -24,8 +24,8 @@  template <class T> class B
   static T value_AC;
 };
 template <typename T> T B<T>::valueA_AA;
-template <typename T> T B<T>::valueA_AC;// { dg-message "" "" } private - 
-template <typename T> T B<T>::value_AC;	// { dg-bogus "" "" }  - 
+template <typename T> T B<T>::valueA_AC;// { dg-message "" } private - 
+template <typename T> T B<T>::value_AC;	// { dg-bogus "" }  - 
 
 // this one is a friend
 template <class T> struct A<T>::AA
@@ -41,7 +41,7 @@  template <class T> struct A<T>::AC
 {
   T M ()
   {
-    return B<T>::valueA_AC;	// { dg-error "" "" } within this context - 
+    return B<T>::valueA_AC;	// { dg-error "" } within this context - 
   }
 };
 
@@ -50,7 +50,7 @@  struct AC
 {
   int M ()
   {
-    return B<int>::value_AC;	// { dg-bogus "" "" }  - 
+    return B<int>::value_AC;	// { dg-bogus "" }  - 
   }
 };
 
diff --git a/gcc/testsuite/g++.old-deja/g++.pt/overload8.C b/gcc/testsuite/g++.old-deja/g++.pt/overload8.C
index 5c2d8bc..87534c1 100644
--- a/gcc/testsuite/g++.old-deja/g++.pt/overload8.C
+++ b/gcc/testsuite/g++.old-deja/g++.pt/overload8.C
@@ -7,6 +7,6 @@  struct baz;
 void operator*(baz&, double);
 
 template <class T> inline T operator*(double s, const T &p)
-  ; // { dg-bogus "" "" }  - must have argument of class type - 
+  ; // { dg-bogus "" }  - must have argument of class type - 
 
 void m(baz& a) { a * .5; }
diff --git a/gcc/testsuite/gcc.dg/20000926-1.c b/gcc/testsuite/gcc.dg/20000926-1.c
index 2f5ca10..e70596f 100644
--- a/gcc/testsuite/gcc.dg/20000926-1.c
+++ b/gcc/testsuite/gcc.dg/20000926-1.c
@@ -22,6 +22,6 @@  struct PLAYBOOK playbook  =
 {
   "BookName",
   {
-    { 1, "PName0" }, /* { dg-warning "(excess elements)|(near initialization)" "" } */
+    { 1, "PName0" }, /* { dg-warning "(excess elements)|(near initialization)" } */
   }
 };
diff --git a/gcc/testsuite/gcc.dg/20040223-1.c b/gcc/testsuite/gcc.dg/20040223-1.c
index 71ddf09..ae0924e 100644
--- a/gcc/testsuite/gcc.dg/20040223-1.c
+++ b/gcc/testsuite/gcc.dg/20040223-1.c
@@ -7,13 +7,13 @@ 
 
 int * f( int a)
 {
-	return &a;/* { dg-warning "address" "" } */
+	return &a;/* { dg-warning "address" } */
 }
 
 int * g()
 {
 	int b = 0;
-	return &b;/* { dg-warning "address" "" } */
+	return &b;/* { dg-warning "address" } */
 }
 
 struct ll
@@ -23,7 +23,7 @@  struct ll
 
 int *h(struct ll c)
 {
-  return &c.i;/* { dg-warning "address" "" } */
+  return &c.i;/* { dg-warning "address" } */
 }
 
 
@@ -31,11 +31,11 @@  struct ll d;
 
 int *i()
 {
-  return &d.i;/* { dg-bogus "address" "" } */
+  return &d.i;/* { dg-bogus "address" } */
 }
 
 
 int *j(struct ll *c)
 {
-  return &c->i; /* { dg-bogus "address" "" } */
+  return &c->i; /* { dg-bogus "address" } */
 }
diff --git a/gcc/testsuite/gcc.dg/Warray-bounds-7.c b/gcc/testsuite/gcc.dg/Warray-bounds-7.c
index fdd9578..a32492c 100644
--- a/gcc/testsuite/gcc.dg/Warray-bounds-7.c
+++ b/gcc/testsuite/gcc.dg/Warray-bounds-7.c
@@ -7,7 +7,7 @@  int main()
 {
   p = "";
   if (p[0] == 0
-      || (p[0] == '_' && p[1] == 0))  /* { dg-bogus "array bounds" "" } */
+      || (p[0] == '_' && p[1] == 0))  /* { dg-bogus "array bounds" } */
     return 0;
   return 1;
 }
diff --git a/gcc/testsuite/gcc.dg/alias-1.c b/gcc/testsuite/gcc.dg/alias-1.c
index 388cb3b..17fb1f7 100644
--- a/gcc/testsuite/gcc.dg/alias-1.c
+++ b/gcc/testsuite/gcc.dg/alias-1.c
@@ -19,9 +19,9 @@  YYSTYPE
  addSibMacro(
          YYSTYPE  list )
  {
-     tDefEntry** ppT   = (tDefEntry**)&list; // { dg-warning "type-punned pointer will" "" }
+     tDefEntry** ppT   = (tDefEntry**)&list; // { dg-warning "type-punned pointer will" }
  
-     struct incomplete *p = (struct incomplete *)&list; // { dg-warning "type-punning to incomplete" "" }
+     struct incomplete *p = (struct incomplete *)&list; // { dg-warning "type-punning to incomplete" }
      
      return list;
  }
diff --git a/gcc/testsuite/gcc.dg/alias-12.c b/gcc/testsuite/gcc.dg/alias-12.c
index 721716c..4d69453 100644
--- a/gcc/testsuite/gcc.dg/alias-12.c
+++ b/gcc/testsuite/gcc.dg/alias-12.c
@@ -1,7 +1,7 @@ 
 /* { dg-do compile } */
 /* { dg-require-alias "" } */
 /* { dg-options "-O2" } */
-static void f (void) __attribute__((alias("f"))); // { dg-error "part of alias cycle" "" }
+static void f (void) __attribute__((alias("f"))); // { dg-error "part of alias cycle" }
 
 void g ()
 {
diff --git a/gcc/testsuite/gcc.dg/alias-13.c b/gcc/testsuite/gcc.dg/alias-13.c
index a8390d4..85e1f87 100644
--- a/gcc/testsuite/gcc.dg/alias-13.c
+++ b/gcc/testsuite/gcc.dg/alias-13.c
@@ -1,7 +1,7 @@ 
 /* { dg-do compile } */
 /* { dg-require-alias "" } */
 /* { dg-options "-O2" } */
-static void f (void) __attribute__((alias("g"))); static void g (void) __attribute__((alias("f"))); // { dg-error "part of alias cycle" "" }
+static void f (void) __attribute__((alias("g"))); static void g (void) __attribute__((alias("f"))); // { dg-error "part of alias cycle" }
 
 void h ()
 {
diff --git a/gcc/testsuite/gcc.dg/alias-2.c b/gcc/testsuite/gcc.dg/alias-2.c
index f42f22c..ee38406 100644
--- a/gcc/testsuite/gcc.dg/alias-2.c
+++ b/gcc/testsuite/gcc.dg/alias-2.c
@@ -11,6 +11,6 @@  struct foo {
 int
 sub1 (long long int foobar)
 {
-  struct foo *tmp = (struct foo *) &foobar; // { dg-warning "type-punned pointer will" "" }
+  struct foo *tmp = (struct foo *) &foobar; // { dg-warning "type-punned pointer will" }
   return tmp->i;
 }
diff --git a/gcc/testsuite/gcc.dg/array-13.c b/gcc/testsuite/gcc.dg/array-13.c
index 8335b7a..70fd87d 100644
--- a/gcc/testsuite/gcc.dg/array-13.c
+++ b/gcc/testsuite/gcc.dg/array-13.c
@@ -15,7 +15,7 @@  struct g { int w; T0 x; };
 
 static struct f f = { 4, { 0, 1, 2, 3 } };
 static int junk1[] = { -1, -1, -1, -1 };
-static struct g g = { 4, { 0, 1, 2, 3 } }; /* { dg-warning "(excess elements)|(near initialization)" "" } */
+static struct g g = { 4, { 0, 1, 2, 3 } }; /* { dg-warning "(excess elements)|(near initialization)" } */
 static int junk2[] = { -1, -1, -1, -1 };
 
 int main()
diff --git a/gcc/testsuite/gcc.dg/array-4.c b/gcc/testsuite/gcc.dg/array-4.c
index b3e4f6c..c045e79 100644
--- a/gcc/testsuite/gcc.dg/array-4.c
+++ b/gcc/testsuite/gcc.dg/array-4.c
@@ -12,7 +12,7 @@  struct g { int w; int x[0]; };
 
 static struct f f = { 4, { 0, 1, 2, 3 } };
 static int junk1[] = { -1, -1, -1, -1 };
-static struct g g = { 4, { 0, 1, 2, 3 } }; /* { dg-warning "(excess elements)|(near initialization)" "" } */
+static struct g g = { 4, { 0, 1, 2, 3 } }; /* { dg-warning "(excess elements)|(near initialization)" } */
 static int junk2[] = { -1, -1, -1, -1 };
 
 int main()
diff --git a/gcc/testsuite/gcc.dg/attr-ifunc-2.c b/gcc/testsuite/gcc.dg/attr-ifunc-2.c
index f717315..8375af9 100644
--- a/gcc/testsuite/gcc.dg/attr-ifunc-2.c
+++ b/gcc/testsuite/gcc.dg/attr-ifunc-2.c
@@ -7,22 +7,22 @@  static void *resolver ()
 
 extern int magic (void)  /* { dg-message "previous definition" } */
      __attribute__ ((ifunc ("resolver")));
-extern int magic (void)  /* { dg-error "redefinition" "" } */
+extern int magic (void)  /* { dg-error "redefinition" } */
      __attribute__ ((alias ("resolver")));
 
 extern int spell (void)  /* { dg-message "previous definition" } */
 {
   return 0;
 }
-extern int spell (void)  /* { dg-error "redefinition" "" } */
+extern int spell (void)  /* { dg-error "redefinition" } */
      __attribute__ ((ifunc ("resolver")));
 
 extern int mantra (void)  /* { dg-message "previous definition" } */
      __attribute__ ((alias ("resolver")));
-extern int mantra (void)  /* { dg-error "redefinition" "" } */
+extern int mantra (void)  /* { dg-error "redefinition" } */
      __attribute__ ((ifunc ("resolver")));
 
-extern int saying (void)  /* { dg-error "weak .* cannot be defined" "" } */
+extern int saying (void)  /* { dg-error "weak .* cannot be defined" } */
      __attribute__ ((weak,ifunc ("resolver")));
-extern int maxim (void) /* { dg-error "indirect function .* cannot be declared weak" "" } */
+extern int maxim (void) /* { dg-error "indirect function .* cannot be declared weak" } */
      __attribute__ ((ifunc ("resolver"),weak));
diff --git a/gcc/testsuite/gcc.dg/attr-invalid.c b/gcc/testsuite/gcc.dg/attr-invalid.c
index f2a5887..a3315fa 100644
--- a/gcc/testsuite/gcc.dg/attr-invalid.c
+++ b/gcc/testsuite/gcc.dg/attr-invalid.c
@@ -9,25 +9,25 @@ 
 
 #define AT noinline
 
-typedef int ATSYM(type) ATTR; /* { dg-warning "attribute ignored" "" } */
+typedef int ATSYM(type) ATTR; /* { dg-warning "attribute ignored" } */
 
-typedef int (*ATSYM(fntype))(void) ATTR; /* { dg-warning "attribute ignored" "" } */
+typedef int (*ATSYM(fntype))(void) ATTR; /* { dg-warning "attribute ignored" } */
 
 struct ATSYM(struct) {
-  char dummy ATTR; /* { dg-warning "attribute ignored" "" } */
-} ATTR; /* { dg-warning "does not apply to types" "" } */
+  char dummy ATTR; /* { dg-warning "attribute ignored" } */
+} ATTR; /* { dg-warning "does not apply to types" } */
 
-int ATSYM(var) ATTR;  /* { dg-warning "attribute ignored" "" } */
+int ATSYM(var) ATTR;  /* { dg-warning "attribute ignored" } */
 
 int ATSYM(fn_knrarg) (arg)
-  int arg ATTR; /* { dg-warning "attribute ignored" "" } */
+  int arg ATTR; /* { dg-warning "attribute ignored" } */
 { return 0; }
 
-int ATSYM(fn_isoarg) (int arg ATTR) { return 0; } /* { dg-warning "attribute ignored" "" } */
+int ATSYM(fn_isoarg) (int arg ATTR) { return 0; } /* { dg-warning "attribute ignored" } */
 
 int ATSYM(fn_vars) (void) {
-  static int svar ATTR; /* { dg-warning "attribute ignored" "" } */
-  auto int lvar ATTR; /* { dg-warning "attribute ignored" "" } */
+  static int svar ATTR; /* { dg-warning "attribute ignored" } */
+  auto int lvar ATTR; /* { dg-warning "attribute ignored" } */
   return 0;
 }
 
@@ -42,20 +42,20 @@  typedef int (*ATSYM(fntype))(void) ATTR; /* used attribute is no
 					    longer ignored.  */
 
 struct ATSYM(struct) {
-  char dummy ATTR; /* { dg-warning "attribute ignored" "" } */
-} ATTR; /* { dg-warning "does not apply to types" "" } */
+  char dummy ATTR; /* { dg-warning "attribute ignored" } */
+} ATTR; /* { dg-warning "does not apply to types" } */
 
 int ATSYM(var) ATTR;
 
 int ATSYM(fn_knrarg) (arg)
-  int arg ATTR; /* { dg-warning "attribute ignored" "" } */
+  int arg ATTR; /* { dg-warning "attribute ignored" } */
 { return 0; }
 
-int ATSYM(fn_isoarg) (int arg ATTR) { return 0; } /* { dg-warning "attribute ignored" "" } */
+int ATSYM(fn_isoarg) (int arg ATTR) { return 0; } /* { dg-warning "attribute ignored" } */
 
 int ATSYM(fn_vars) (void) {
   static int svar ATTR;
-  auto int lvar ATTR; /* { dg-warning "attribute ignored" "" } */
+  auto int lvar ATTR; /* { dg-warning "attribute ignored" } */
   return 0;
 }
 
@@ -66,19 +66,19 @@  int ATSYM(fn_vars) (void) {
 #undef AT
 #define AT weak
 
-typedef int ATSYM(type) ATTR; /* { dg-warning "attribute ignored" "" } */
+typedef int ATSYM(type) ATTR; /* { dg-warning "attribute ignored" } */
 
-typedef int (*ATSYM(fntype))(void) ATTR; /* { dg-warning "attribute ignored" "" } */
+typedef int (*ATSYM(fntype))(void) ATTR; /* { dg-warning "attribute ignored" } */
 
 struct ATSYM(struct) {
-  char dummy ATTR; /* { dg-warning "attribute ignored" "" } */
+  char dummy ATTR; /* { dg-warning "attribute ignored" } */
 };
 
 int ATSYM(fn_knrarg) (arg)
-  int arg ATTR; /* { dg-warning "attribute ignored" "" } */
+  int arg ATTR; /* { dg-warning "attribute ignored" } */
 { return 0; }
 
-int ATSYM(fn_isoarg) (int arg ATTR) { return 0; } /* { dg-warning "attribute ignored" "" } */
+int ATSYM(fn_isoarg) (int arg ATTR) { return 0; } /* { dg-warning "attribute ignored" } */
 
 
 /* PR target/28648  */
@@ -87,16 +87,16 @@  int ATSYM(fn_isoarg) (int arg ATTR) { return 0; } /* { dg-warning "attribute ign
 #undef AT
 #define AT dllimport
 
-typedef int ATSYM(type) ATTR;  /* { dg-warning "attribute |directive ignored" "" } */
+typedef int ATSYM(type) ATTR;  /* { dg-warning "attribute |directive ignored" } */
 
-typedef int (*ATSYM(fntype))(void) ATTR;   /* { dg-warning "attribute |directive ignored" "" } */
+typedef int (*ATSYM(fntype))(void) ATTR;   /* { dg-warning "attribute |directive ignored" } */
 
 struct ATSYM(struct) {
-  char dummy ATTR;  /* { dg-warning "attribute |directive ignored" "" } */
+  char dummy ATTR;  /* { dg-warning "attribute |directive ignored" } */
 };
 
 int ATSYM(fn_knrarg) (arg)
-  int arg ATTR;  /* { dg-warning "attribute |directive ignored" "" } */
+  int arg ATTR;  /* { dg-warning "attribute |directive ignored" } */
 { return 0; }
 
-int ATSYM(fn_isoarg) (int arg ATTR) { return 0; }  /* { dg-warning "attribute |directive ignored" "" } */
+int ATSYM(fn_isoarg) (int arg ATTR) { return 0; }  /* { dg-warning "attribute |directive ignored" } */
diff --git a/gcc/testsuite/gcc.dg/attr-noinline.c b/gcc/testsuite/gcc.dg/attr-noinline.c
index a87881b..c2a5b1d 100644
--- a/gcc/testsuite/gcc.dg/attr-noinline.c
+++ b/gcc/testsuite/gcc.dg/attr-noinline.c
@@ -3,45 +3,45 @@ 
 
 extern int t();
 
-static inline void __attribute__((__noinline__)) function_definition(void) {t();} /* { dg-warning "inline function \[^\n\]* given attribute noinline" "" } */
+static inline void __attribute__((__noinline__)) function_definition(void) {t();} /* { dg-warning "inline function \[^\n\]* given attribute noinline" } */
 
-static inline void __attribute__((__noinline__)) function_declaration_both_before(void); /* { dg-warning "inline function \[^\n\]* given attribute noinline" "" } */
+static inline void __attribute__((__noinline__)) function_declaration_both_before(void); /* { dg-warning "inline function \[^\n\]* given attribute noinline" } */
 
 static void function_declaration_both_before(void) {t();}
 
 static void function_declaration_both_after(void);
 
-static inline void __attribute__((__noinline__)) function_declaration_both_after(void); /* { dg-warning "(inline function \[^\n\]* given attribute noinline|declared inline after its definition)" "" } */
+static inline void __attribute__((__noinline__)) function_declaration_both_after(void); /* { dg-warning "(inline function \[^\n\]* given attribute noinline|declared inline after its definition)" } */
 
 static void function_declaration_both_after(void) {t();}
 
-static void function_declaration_noinline_before(void) __attribute__((__noinline__)); /* { dg-message "note: previous declaration" "" } */
+static void function_declaration_noinline_before(void) __attribute__((__noinline__)); /* { dg-message "note: previous declaration" } */
 
-static inline void function_declaration_noinline_before(void) {t();} /* { dg-warning "follows declaration with attribute noinline" "" } */
+static inline void function_declaration_noinline_before(void) {t();} /* { dg-warning "follows declaration with attribute noinline" } */
 
-static inline void function_declaration_noinline_after(void) {t();} /* { dg-message "note: previous definition" "" } */
+static inline void function_declaration_noinline_after(void) {t();} /* { dg-message "note: previous definition" } */
 
-static void function_declaration_noinline_after(void) __attribute__((__noinline__)); /* { dg-warning "follows inline declaration" "" } */
+static void function_declaration_noinline_after(void) __attribute__((__noinline__)); /* { dg-warning "follows inline declaration" } */
 
-static inline void function_declaration_inline_before(void); /* { dg-message "note: previous declaration" "" } */
+static inline void function_declaration_inline_before(void); /* { dg-message "note: previous declaration" } */
 
-static void __attribute__((__noinline__)) function_declaration_inline_before(void) {t();} /* { dg-warning "follows inline declaration" "" } */
+static void __attribute__((__noinline__)) function_declaration_inline_before(void) {t();} /* { dg-warning "follows inline declaration" } */
 
-static inline void function_declaration_inline_noinline_before(void); /* { dg-message "note: previous declaration" "" } */
+static inline void function_declaration_inline_noinline_before(void); /* { dg-message "note: previous declaration" } */
 
-static void function_declaration_inline_noinline_before(void) __attribute__((__noinline__)); /* { dg-warning "follows inline declaration" "" } */
+static void function_declaration_inline_noinline_before(void) __attribute__((__noinline__)); /* { dg-warning "follows inline declaration" } */
 
 static void function_declaration_inline_noinline_before(void) {t();}
 
 static inline void function_declaration_inline_noinline_after(void);
 
-static void function_declaration_inline_noinline_after(void) {t();} /* { dg-message "note: previous definition" "" } */
+static void function_declaration_inline_noinline_after(void) {t();} /* { dg-message "note: previous definition" } */
 
-static void function_declaration_inline_noinline_after(void) __attribute__((__noinline__)); /* { dg-warning "follows inline declaration" "" } */
+static void function_declaration_inline_noinline_after(void) __attribute__((__noinline__)); /* { dg-warning "follows inline declaration" } */
 
-static void function_declaration_noinline_inline_before(void) __attribute__((__noinline__)); /* { dg-message "note: previous declaration" "" } */
+static void function_declaration_noinline_inline_before(void) __attribute__((__noinline__)); /* { dg-message "note: previous declaration" } */
 
-static inline void function_declaration_noinline_inline_before(void); /* { dg-warning "follows declaration with attribute noinline" "" } */
+static inline void function_declaration_noinline_inline_before(void); /* { dg-warning "follows declaration with attribute noinline" } */
 
 static void function_declaration_noinline_inline_before(void) {t();}
 
diff --git a/gcc/testsuite/gcc.dg/bitfld-2.c b/gcc/testsuite/gcc.dg/bitfld-2.c
index b61fec6..e3f5f1b 100644
--- a/gcc/testsuite/gcc.dg/bitfld-2.c
+++ b/gcc/testsuite/gcc.dg/bitfld-2.c
@@ -11,13 +11,13 @@  struct bf
   int b: 2;
 };
 
-struct bf p = {4, 0};		/* { dg-warning "truncated" "" } */
-struct bf q = {0, 2};		/* { dg-warning "overflow" "" } */
+struct bf p = {4, 0};		/* { dg-warning "truncated" } */
+struct bf q = {0, 2};		/* { dg-warning "overflow" } */
 struct bf r = {3, -2};		/* { dg-bogus "(truncated|overflow)" } */
 
 void foo ()
 {
-  p.a = 4, p.b = 0;		/* { dg-warning "truncated" "" } */
-  q.a = 0, q.b = 2;		/* { dg-warning "overflow" "" } */
+  p.a = 4, p.b = 0;		/* { dg-warning "truncated" } */
+  q.a = 0, q.b = 2;		/* { dg-warning "overflow" } */
   r.a = 3, r.b = -2;		/* { dg-bogus "(truncated|overflow)" } */
 }
diff --git a/gcc/testsuite/gcc.dg/c90-const-expr-7.c b/gcc/testsuite/gcc.dg/c90-const-expr-7.c
index 7a91205..56a1478 100644
--- a/gcc/testsuite/gcc.dg/c90-const-expr-7.c
+++ b/gcc/testsuite/gcc.dg/c90-const-expr-7.c
@@ -8,7 +8,7 @@ 
 
 int a = DBL_MAX; /* { dg-warning "overflow in implicit constant conversion" } */
 /* { dg-error "overflow in constant expression" "constant" { target *-*-* } .-1 } */
-int b = (int) DBL_MAX; /* { dg-error "overflow" "" } */
+int b = (int) DBL_MAX; /* { dg-error "overflow" } */
 unsigned int c = -1.0; /* { dg-warning "overflow in implicit constant conversion" } */
 /* { dg-error "overflow in constant expression" "constant" { target *-*-* } .-1 } */
 unsigned int d = (unsigned)-1.0; /* { dg-error "overflow" } */
diff --git a/gcc/testsuite/gcc.dg/c99-const-expr-7.c b/gcc/testsuite/gcc.dg/c99-const-expr-7.c
index 9be138d..c663723 100644
--- a/gcc/testsuite/gcc.dg/c99-const-expr-7.c
+++ b/gcc/testsuite/gcc.dg/c99-const-expr-7.c
@@ -9,7 +9,7 @@ 
 
 int a = DBL_MAX; /* { dg-warning "overflow in implicit constant conversion" } */
 /* { dg-error "overflow in constant expression" "constant" { target *-*-* } .-1 } */
-int b = (int) DBL_MAX; /* { dg-error "overflow" "" } */
+int b = (int) DBL_MAX; /* { dg-error "overflow" } */
 unsigned int c = -1.0; /* { dg-warning "overflow in implicit constant conversion" } */
 /* { dg-error "overflow in constant expression" "constant" { target *-*-* } .-1 } */
 unsigned int d = (unsigned)-1.0; /* { dg-error "overflow" } */
diff --git a/gcc/testsuite/gcc.dg/cpp/20000625-1.c b/gcc/testsuite/gcc.dg/cpp/20000625-1.c
index 01ce98b..a77aa8c 100644
--- a/gcc/testsuite/gcc.dg/cpp/20000625-1.c
+++ b/gcc/testsuite/gcc.dg/cpp/20000625-1.c
@@ -12,6 +12,6 @@  main(void)
 {
   goto socket;
 
-  ENTRY(socket) /* { dg-error "valid preprocessing token" "" } */
+  ENTRY(socket) /* { dg-error "valid preprocessing token" } */
     return 0;
 }
diff --git a/gcc/testsuite/gcc.dg/cpp/charconst-4.c b/gcc/testsuite/gcc.dg/cpp/charconst-4.c
index aae33d3..9ea5e8a 100644
--- a/gcc/testsuite/gcc.dg/cpp/charconst-4.c
+++ b/gcc/testsuite/gcc.dg/cpp/charconst-4.c
@@ -38,7 +38,7 @@  extern void abort (void);
 # error Charconst incorrectly sign-extended
 #endif
 
-#if LONG_CHARCONST != SHORT_CHARCONST /* { dg-warning "too long" "" } */
+#if LONG_CHARCONST != SHORT_CHARCONST /* { dg-warning "too long" } */
 # error Overly long charconst truncates wrongly for preprocessor
 #endif
 
@@ -46,7 +46,7 @@  int main ()
 {
   if (POS_CHARCONST < 0)
     abort ();
-  if (LONG_CHARCONST != SHORT_CHARCONST)  /* { dg-warning "too long" "" } */
+  if (LONG_CHARCONST != SHORT_CHARCONST)  /* { dg-warning "too long" } */
     abort ();
   return 0;
 }
diff --git a/gcc/testsuite/gcc.dg/cpp/include2.c b/gcc/testsuite/gcc.dg/cpp/include2.c
index de34255..00aad0c 100644
--- a/gcc/testsuite/gcc.dg/cpp/include2.c
+++ b/gcc/testsuite/gcc.dg/cpp/include2.c
@@ -7,7 +7,7 @@ 
 
 /* Source: Neil Booth, 4 Nov 2000.  */
 
-#include <silly\>>  /* { dg-error "extra tokens" "" } */
+#include <silly\>>  /* { dg-error "extra tokens" } */
 
 /* These error is No such file or directory, just once.  However, this
    message is locale-dependent, so don't test for it.  */
diff --git a/gcc/testsuite/gcc.dg/cpp/include2a.c b/gcc/testsuite/gcc.dg/cpp/include2a.c
index 9370d09..4504d95 100644
--- a/gcc/testsuite/gcc.dg/cpp/include2a.c
+++ b/gcc/testsuite/gcc.dg/cpp/include2a.c
@@ -7,7 +7,7 @@ 
 
 /* Source: Neil Booth, 4 Nov 2000.  */
 
-#include "silly\""  /* { dg-error "extra tokens" "" } */
+#include "silly\""  /* { dg-error "extra tokens" } */
 
 /* These error is No such file or directory, just once.  However, this
    message is locale-dependent, so don't test for it.  */
diff --git a/gcc/testsuite/gcc.dg/decl-4.c b/gcc/testsuite/gcc.dg/decl-4.c
index ce640c9..80566f7 100644
--- a/gcc/testsuite/gcc.dg/decl-4.c
+++ b/gcc/testsuite/gcc.dg/decl-4.c
@@ -1,10 +1,10 @@ 
 /* Redeclaration of parameters is an error.  PR 13728.  */
 /* { dg-do compile } */
 
-void f (int fred,	/* { dg-message "note: previous definition" "" } */
-	int fred);	/* { dg-error "redefinition of parameter" "" } */
+void f (int fred,	/* { dg-message "note: previous definition" } */
+	int fred);	/* { dg-error "redefinition of parameter" } */
 
-void f2 (int fred,	/* { dg-message "note: previous definition" "" } */
-	 int fred)	/* { dg-error "redefinition of parameter" "" } */
+void f2 (int fred,	/* { dg-message "note: previous definition" } */
+	 int fred)	/* { dg-error "redefinition of parameter" } */
 {
 }
diff --git a/gcc/testsuite/gcc.dg/deprecated-4.c b/gcc/testsuite/gcc.dg/deprecated-4.c
index b55c134..e8f0817 100644
--- a/gcc/testsuite/gcc.dg/deprecated-4.c
+++ b/gcc/testsuite/gcc.dg/deprecated-4.c
@@ -5,26 +5,26 @@ 
 typedef int INT1 __attribute__((deprecated("Please avoid INT1")));
 typedef INT1 INT2 __attribute__ ((__deprecated__("Please avoid INT2")));
 
-typedef INT1 INT1a; 			/* { dg-warning "'INT1' is deprecated: Please avoid INT1" "" } */
+typedef INT1 INT1a; 			/* { dg-warning "'INT1' is deprecated: Please avoid INT1" } */
 typedef INT1 INT1b __attribute__ ((deprecated("Please avoid INT1b")));
 
-INT1 should_be_unavailable; 		/* { dg-warning "'INT1' is deprecated: Please avoid INT1" "" } */
+INT1 should_be_unavailable; 		/* { dg-warning "'INT1' is deprecated: Please avoid INT1" } */
 INT1a should_not_be_deprecated;
 
 INT1 f1(void) __attribute__ ((deprecated("Please avoid f1"))); 
-INT1 f2(void) { return 0; }		/* { dg-warning "'INT1' is deprecated: Please avoid INT1" "" } */
+INT1 f2(void) { return 0; }		/* { dg-warning "'INT1' is deprecated: Please avoid INT1" } */
 
 INT2 f3(void) __attribute__ ((__deprecated__("Please avoid f3"))); 
-INT2 f4(void) { return 0; }		/* { dg-warning "'INT2' is deprecated: Please avoid INT2" "" } */
-int f5(INT2 x);				/* { dg-warning "'INT2' is deprecated: Please avoid INT2" "" } */
-int f6(INT2 x) __attribute__ ((__deprecated__("Please avoid f6"))); /* { dg-warning "'INT2' is deprecated: Please avoid INT2" "" } */
+INT2 f4(void) { return 0; }		/* { dg-warning "'INT2' is deprecated: Please avoid INT2" } */
+int f5(INT2 x);				/* { dg-warning "'INT2' is deprecated: Please avoid INT2" } */
+int f6(INT2 x) __attribute__ ((__deprecated__("Please avoid f6"))); /* { dg-warning "'INT2' is deprecated: Please avoid INT2" } */
 
 typedef enum {red, green, blue} Color __attribute__((deprecated("Please avoid Color")));
 
 int g1;
 int g2 __attribute__ ((deprecated("Please avoid g2")));
 int g3 __attribute__ ((__deprecated__("Please avoid g3")));
-Color k;				/* { dg-warning "'Color' is deprecated: Please avoid Color" "" } */
+Color k;				/* { dg-warning "'Color' is deprecated: Please avoid Color" } */
 
 typedef struct {
   int field1;
@@ -45,17 +45,17 @@  typedef struct {
 
 int func1()
 {
-   INT1 w;				/* { dg-warning "'INT1' is deprecated: Please avoid INT1" "" } */
+   INT1 w;				/* { dg-warning "'INT1' is deprecated: Please avoid INT1" } */
    int x __attribute__ ((deprecated("Avoid x")));
    int y __attribute__ ((__deprecated__("Bad y")));
    int z;
-   int (*pf)() = f1;			/* { dg-warning "'f1' is deprecated: Please avoid f1" "" } */
+   int (*pf)() = f1;			/* { dg-warning "'f1' is deprecated: Please avoid f1" } */
 
-   z = w + x + y + g1 + g2 + g3;	/* { dg-warning "'x' is deprecated: Avoid x" "" } */
+   z = w + x + y + g1 + g2 + g3;	/* { dg-warning "'x' is deprecated: Avoid x" } */
 					/* { dg-warning "'y' is deprecated: Bad y" "y" { target *-*-* } .-1 } */
 					/* { dg-warning "'g2' is deprecated: Please avoid g2" "g2" { target *-*-* } .-2 }  */
 					/* { dg-warning "'g3' is deprecated: Please avoid g3" "g3" { target *-*-* } .-3 } */
-   return f1(); 			/* { dg-warning "'f1' is deprecated: Please avoid f1" "" } */
+   return f1(); 			/* { dg-warning "'f1' is deprecated: Please avoid f1" } */
 }
 
 int func2(S1 *p)
@@ -63,26 +63,26 @@  int func2(S1 *p)
   S1 lp;
   
   if (p->field1)
-     return p->field2;			/* { dg-warning "'field2' is deprecated: Please avoid field2" "" } */
-  else if (lp.field4)			/* { dg-warning "'field4' is deprecated: Please avoid field4" "" } */
+     return p->field2;			/* { dg-warning "'field2' is deprecated: Please avoid field2" } */
+  else if (lp.field4)			/* { dg-warning "'field4' is deprecated: Please avoid field4" } */
      return p->field3;
   
   p->u1.field5 = g1 + p->field7;
-  p->u2.field9;				/* { dg-warning "'u2' is deprecated: Please avoid u2" "" } */
-  return p->u1.field6 + p->field8;	/* { dg-warning "'field6' is deprecated: Please avoid field6" "" } */
+  p->u2.field9;				/* { dg-warning "'u2' is deprecated: Please avoid u2" } */
+  return p->u1.field6 + p->field8;	/* { dg-warning "'field6' is deprecated: Please avoid field6" } */
 					/* { dg-warning "'field8' is deprecated: Please avoid field8" "field8" { target *-*-* } .-1 } */
 }
 
 struct SS1 {
   int x;
-  INT1 y; 				/* { dg-warning "'INT1' is deprecated: Please avoid INT1" "" } */
+  INT1 y; 				/* { dg-warning "'INT1' is deprecated: Please avoid INT1" } */
 } __attribute__ ((deprecated("Please avoid SS1")));
 
-struct SS1 *p1;				/* { dg-warning "'SS1' is deprecated: Please avoid SS1" "" } */
+struct SS1 *p1;				/* { dg-warning "'SS1' is deprecated: Please avoid SS1" } */
 
 struct __attribute__ ((__deprecated__("Please avoid SS2"))) SS2 {
   int x;
-  INT1 y; 				/* { dg-warning "'INT1' is deprecated: Please avoid INT1" "" } */
+  INT1 y; 				/* { dg-warning "'INT1' is deprecated: Please avoid INT1" } */
 };
 
-struct SS2 *p2;				/* { dg-warning "'SS2' is deprecated: Please avoid SS2" "" } */
+struct SS2 *p2;				/* { dg-warning "'SS2' is deprecated: Please avoid SS2" } */
diff --git a/gcc/testsuite/gcc.dg/deprecated.c b/gcc/testsuite/gcc.dg/deprecated.c
index 8b4a70f..7579378 100644
--- a/gcc/testsuite/gcc.dg/deprecated.c
+++ b/gcc/testsuite/gcc.dg/deprecated.c
@@ -6,26 +6,26 @@ 
 typedef int INT1 __attribute__((deprecated));
 typedef INT1 INT2 __attribute__ ((__deprecated__));
 
-typedef INT1 INT1a; 			/* { dg-warning "'INT1' is deprecated" "" } */
+typedef INT1 INT1a; 			/* { dg-warning "'INT1' is deprecated" } */
 typedef INT1 INT1b __attribute__ ((deprecated));
 
-INT1 should_be_unavailable; 		/* { dg-warning "'INT1' is deprecated" "" } */
+INT1 should_be_unavailable; 		/* { dg-warning "'INT1' is deprecated" } */
 INT1a should_not_be_deprecated;
 
 INT1 f1(void) __attribute__ ((deprecated)); 
-INT1 f2(void) { return 0; }		/* { dg-warning "'INT1' is deprecated" "" } */
+INT1 f2(void) { return 0; }		/* { dg-warning "'INT1' is deprecated" } */
 
 INT2 f3(void) __attribute__ ((__deprecated__)); 
-INT2 f4(void) { return 0; }		/* { dg-warning "'INT2' is deprecated" "" } */
-int f5(INT2 x);				/* { dg-warning "'INT2' is deprecated" "" } */
-int f6(INT2 x) __attribute__ ((__deprecated__)); /* { dg-warning "'INT2' is deprecated" "" } */
+INT2 f4(void) { return 0; }		/* { dg-warning "'INT2' is deprecated" } */
+int f5(INT2 x);				/* { dg-warning "'INT2' is deprecated" } */
+int f6(INT2 x) __attribute__ ((__deprecated__)); /* { dg-warning "'INT2' is deprecated" } */
 
 typedef enum {red, green, blue} Color __attribute__((deprecated));
 
 int g1;
 int g2 __attribute__ ((deprecated));
 int g3 __attribute__ ((__deprecated__));
-Color k;				/* { dg-warning "'Color' is deprecated" "" } */
+Color k;				/* { dg-warning "'Color' is deprecated" } */
 
 typedef struct {
   int field1;
@@ -46,13 +46,13 @@  typedef struct {
 
 int func1()
 {
-   INT1 w;				/* { dg-warning "'INT1' is deprecated" "" } */
+   INT1 w;				/* { dg-warning "'INT1' is deprecated" } */
    int x __attribute__ ((deprecated));
    int y __attribute__ ((__deprecated__));
    int z;
-   int (*pf)() = f1;			/* { dg-warning "'f1' is deprecated" "" } */
+   int (*pf)() = f1;			/* { dg-warning "'f1' is deprecated" } */
 
-   z = w + x + y + g1 + g2 + g3;	/* { dg-warning "'x' is deprecated" "" } */
+   z = w + x + y + g1 + g2 + g3;	/* { dg-warning "'x' is deprecated" } */
    					/* { dg-warning "'y' is deprecated" "y" { target *-*-* } .-1 } */
    					/* { dg-warning "'g2' is deprecated" "g2" { target *-*-* } .-2 } */
    					/* { dg-warning "'g3' is deprecated" "g3" { target *-*-* } .-3 } */
@@ -64,29 +64,29 @@  int func2(S1 *p)
   S1 lp;
   
   if (p->field1)
-     return p->field2;			/* { dg-warning "'field2' is deprecated" "" } */
-  else if (lp.field4)			/* { dg-warning "'field4' is deprecated" "" } */
+     return p->field2;			/* { dg-warning "'field2' is deprecated" } */
+  else if (lp.field4)			/* { dg-warning "'field4' is deprecated" } */
      return p->field3;
   
   p->u1.field5 = g1 + p->field7;
-  p->u2.field9;				/* { dg-warning "'u2' is deprecated" "" } */
-  return p->u1.field6 + p->field8;	/* { dg-warning "'field6' is deprecated" "" } */
+  p->u2.field9;				/* { dg-warning "'u2' is deprecated" } */
+  return p->u1.field6 + p->field8;	/* { dg-warning "'field6' is deprecated" } */
   					/* { dg-warning "'field8' is deprecated" "field8" { target *-*-* } .-1 } */
 }
 
 struct SS1 {
   int x;
-  INT1 y; 				/* { dg-warning "'INT1' is deprecated" "" } */
+  INT1 y; 				/* { dg-warning "'INT1' is deprecated" } */
 } __attribute__ ((deprecated));
 
-struct SS1 *p1;				/* { dg-warning "'SS1' is deprecated" "" } */
+struct SS1 *p1;				/* { dg-warning "'SS1' is deprecated" } */
 
 struct __attribute__ ((__deprecated__)) SS2 {
   int x;
-  INT1 y; 				/* { dg-warning "'INT1' is deprecated" "" } */
+  INT1 y; 				/* { dg-warning "'INT1' is deprecated" } */
 };
 
-struct SS2 *p2;				/* { dg-warning "'SS2' is deprecated" "" } */
+struct SS2 *p2;				/* { dg-warning "'SS2' is deprecated" } */
 #endif
 
 #ifdef __cplusplus
@@ -104,13 +104,13 @@  inline void T::member1(int) {}
 
 int T::member2(T *p)
 {
-  p->member1(1);			/* { xxdg-warning "'member1' is deprecated" "" } */
-  (*p).member1(2);			/* { xxdg-warning "'member1' is deprecated" "" } */
-  p->member2(1);			/* { xxdg-warning "'member2' is deprecated" "" } */
-  (*p).member2(2);			/* { xxdg-warning "'member2' is deprecated" "" } */
+  p->member1(1);			/* { xxdg-warning "'member1' is deprecated" } */
+  (*p).member1(2);			/* { xxdg-warning "'member1' is deprecated" } */
+  p->member2(1);			/* { xxdg-warning "'member2' is deprecated" } */
+  (*p).member2(2);			/* { xxdg-warning "'member2' is deprecated" } */
   p->member3(p);
   (*p).member3(p);
-  return f1(); 				/* { xxdg-warning "'f1' is deprecated" "" } */
+  return f1(); 				/* { xxdg-warning "'f1' is deprecated" } */
 }
 #endif
 
diff --git a/gcc/testsuite/gcc.dg/dfp/altivec-types.c b/gcc/testsuite/gcc.dg/dfp/altivec-types.c
index e11ddc5..6663a8f 100644
--- a/gcc/testsuite/gcc.dg/dfp/altivec-types.c
+++ b/gcc/testsuite/gcc.dg/dfp/altivec-types.c
@@ -4,6 +4,6 @@ 
 /* GNU extension: PowerPC AltiVec Built-in Functions.
    These should be rejected as invalid AltiVec types.  */
 
-__vector _Decimal32 vd32;		/* { dg-error "AltiVec types" "" } */
-__vector _Decimal64 vd64;		/* { dg-error "AltiVec types" "" } */
-__vector _Decimal128 vd128;		/* { dg-error "AltiVec types" "" } */
+__vector _Decimal32 vd32;		/* { dg-error "AltiVec types" } */
+__vector _Decimal64 vd64;		/* { dg-error "AltiVec types" } */
+__vector _Decimal128 vd128;		/* { dg-error "AltiVec types" } */
diff --git a/gcc/testsuite/gcc.dg/float-range-1.c b/gcc/testsuite/gcc.dg/float-range-1.c
index ddd7fd6..9185b22 100644
--- a/gcc/testsuite/gcc.dg/float-range-1.c
+++ b/gcc/testsuite/gcc.dg/float-range-1.c
@@ -9,7 +9,7 @@ 
 void
 f (void)
 {
-  float a = 1e+100000000f; /* { dg-warning "floating constant exceeds range of 'float'" "" } */
+  float a = 1e+100000000f; /* { dg-warning "floating constant exceeds range of 'float'" } */
   double b = 1e+100000000; /* { dg-warning "floating constant exceeds range of 'double'" } */
   long double c = 1e+100000000l; /* { dg-warning "floating constant exceeds range of 'long double'" } */
 }
diff --git a/gcc/testsuite/gcc.dg/pack-test-3.c b/gcc/testsuite/gcc.dg/pack-test-3.c
index 8b03903..bd78fad 100644
--- a/gcc/testsuite/gcc.dg/pack-test-3.c
+++ b/gcc/testsuite/gcc.dg/pack-test-3.c
@@ -33,12 +33,12 @@  int ary2[sizeof (struct p2) == sizeof (p2_t1) ? 1 : -1];
 int ary3[sizeof (struct p1) == sizeof (struct p2) ? 1 : -1];
 
 /* not ok */
-typedef struct u1 __attribute__ ((packed)) u1_t1; /* { dg-warning "attribute ignored" "" }*/
-typedef struct u1 u1_t2 __attribute__ ((packed)); /* { dg-warning "attribute ignored" "" }*/
+typedef struct u1 __attribute__ ((packed)) u1_t1; /* { dg-warning "attribute ignored" }*/
+typedef struct u1 u1_t2 __attribute__ ((packed)); /* { dg-warning "attribute ignored" }*/
 
 typedef struct p3 {
    char  field1;
    short field2;
    int field3;
-} p3_t1 __attribute__ ((packed)); /* { dg-warning "attribute ignored" "" }*/
+} p3_t1 __attribute__ ((packed)); /* { dg-warning "attribute ignored" }*/
 
diff --git a/gcc/testsuite/gcc.dg/pr11492.c b/gcc/testsuite/gcc.dg/pr11492.c
index 8663099..cf17712 100644
--- a/gcc/testsuite/gcc.dg/pr11492.c
+++ b/gcc/testsuite/gcc.dg/pr11492.c
@@ -5,7 +5,7 @@  int main( void )
 {
   unsigned int a;
   unsigned char b;
-  for ( a = 0, b = 2; a > b * 100; a++ ) /* { dg-bogus "comparison between signed and unsigned integer" "" } */
+  for ( a = 0, b = 2; a > b * 100; a++ ) /* { dg-bogus "comparison between signed and unsigned integer" } */
     { ; }
 
   return 0;
diff --git a/gcc/testsuite/gcc.dg/pr15360-1.c b/gcc/testsuite/gcc.dg/pr15360-1.c
index 4f900d7..f5f8ad5 100644
--- a/gcc/testsuite/gcc.dg/pr15360-1.c
+++ b/gcc/testsuite/gcc.dg/pr15360-1.c
@@ -15,10 +15,10 @@  extern int b = 1; /* { dg-warning "initialized and declared" "extern init warnin
 static int b;
 static int b;
 
-static int c; /* { dg-message "note: previous declaration" "" } */
+static int c; /* { dg-message "note: previous declaration" } */
 int c; /* { dg-error "non-static" "correct error" } */
 
-static int d; /* { dg-message "note: previous declaration" "" } */
+static int d; /* { dg-message "note: previous declaration" } */
 int d = 1; /* { dg-error "non-static" "correct error" } */
 
 void foo (void) { extern int e = 1; } /* { dg-error "has both" "extern init in function" } */
diff --git a/gcc/testsuite/gcc.dg/pr37908.c b/gcc/testsuite/gcc.dg/pr37908.c
index 32946d1..e1457fa 100644
--- a/gcc/testsuite/gcc.dg/pr37908.c
+++ b/gcc/testsuite/gcc.dg/pr37908.c
@@ -16,7 +16,7 @@  int main (void)
   xLoc = xIn = ~ (1 << i);
   xExpect = ~ (xIn & 0x7F);
 
-  xOut = __sync_nand_and_fetch (&xLoc, 0x7F); /* { dg-message "note: '__sync_nand_and_fetch' changed semantics in GCC 4.4" "" } */
+  xOut = __sync_nand_and_fetch (&xLoc, 0x7F); /* { dg-message "note: '__sync_nand_and_fetch' changed semantics in GCC 4.4" } */
 
   if (xOut != xExpect)
     abort ();
diff --git a/gcc/testsuite/gcc.dg/pr53265.c b/gcc/testsuite/gcc.dg/pr53265.c
index d3ab6aa..ea39d69 100644
--- a/gcc/testsuite/gcc.dg/pr53265.c
+++ b/gcc/testsuite/gcc.dg/pr53265.c
@@ -50,9 +50,9 @@  fn4 (void)
   unsigned int *a[32], *o, i;
 
   bar (a);
-  for (i = 0; i <= sizeof (a) / sizeof (a[0]); i++)	/* { dg-message "note: within this loop" "" } */
+  for (i = 0; i <= sizeof (a) / sizeof (a[0]); i++)	/* { dg-message "note: within this loop" } */
     {
-      o = a[i];	/* { dg-warning "32 invokes undefined behavior" "" } */
+      o = a[i];	/* { dg-warning "32 invokes undefined behavior" } */
       bar (o);
     }
 }
@@ -86,7 +86,7 @@  fn7 (void)
 {
   int a[16], b, c;
   bar (a);
-  for (b = a[c = 0]; c < 16; b = a[++c])	/* { dg-warning "15 invokes undefined behavior" "" } */
+  for (b = a[c = 0]; c < 16; b = a[++c])	/* { dg-warning "15 invokes undefined behavior" } */
     baz (b);
 }
 
diff --git a/gcc/testsuite/gcc.dg/pr57287-2.c b/gcc/testsuite/gcc.dg/pr57287-2.c
index 7d13464..b41ae64 100644
--- a/gcc/testsuite/gcc.dg/pr57287-2.c
+++ b/gcc/testsuite/gcc.dg/pr57287-2.c
@@ -26,7 +26,7 @@  int baz (void)
       if (!varseen)
 	varseen = 1;
 
-      jmp_buf *buf = bar ();  /* { dg-bogus "may be used uninitialized" "" } */
+      jmp_buf *buf = bar ();  /* { dg-bogus "may be used uninitialized" } */
       setjmp (*buf);
     }
 
diff --git a/gcc/testsuite/gcc.dg/pr57287.c b/gcc/testsuite/gcc.dg/pr57287.c
index 7ca0f8b..47ed5b7 100644
--- a/gcc/testsuite/gcc.dg/pr57287.c
+++ b/gcc/testsuite/gcc.dg/pr57287.c
@@ -18,7 +18,7 @@  void enumerate_locals (int indent)
       if (local_indent != 8)
 	{
 	  setjmp (buf);
-	  bar (local_indent);  /* { dg-bogus "may be used uninitialized" "" } */
+	  bar (local_indent);  /* { dg-bogus "may be used uninitialized" } */
 	}
     }
   foo (1);
diff --git a/gcc/testsuite/gcc.dg/redecl-1.c b/gcc/testsuite/gcc.dg/redecl-1.c
index ff18739..1fb0070 100644
--- a/gcc/testsuite/gcc.dg/redecl-1.c
+++ b/gcc/testsuite/gcc.dg/redecl-1.c
@@ -75,7 +75,7 @@  void test5(void)
 
 /* Extern then static, both at file scope.  */
 
-extern int test6(int);		/* { dg-message "note: previous" "" } */
+extern int test6(int);		/* { dg-message "note: previous" } */
 static int test6(int x)		/* { dg-error "follows non-static" } */
 { return x; }
 
@@ -84,7 +84,7 @@  static int test6(int x)		/* { dg-error "follows non-static" } */
 
 void prime7(void)
 {
-  extern int test7(int);	/* { dg-message "note: previous" "" } */
+  extern int test7(int);	/* { dg-message "note: previous" } */
 }
 
 static int test7(int x)		/* { dg-error "follows non-static" } */
@@ -94,7 +94,7 @@  static int test7(int x)		/* { dg-error "follows non-static" } */
 
 void prime8(void)
 {
-  test8();			/* { dg-message "note: previous" "" } */
+  test8();			/* { dg-message "note: previous" } */
                                 /* { dg-warning "implicit" "implicit" { target *-*-* } .-1 } */
 }
 
diff --git a/gcc/testsuite/gcc.dg/sync-3.c b/gcc/testsuite/gcc.dg/sync-3.c
index 2960287..93e79d0 100644
--- a/gcc/testsuite/gcc.dg/sync-3.c
+++ b/gcc/testsuite/gcc.dg/sync-3.c
@@ -31,7 +31,7 @@  do_qi (void)
     abort ();
   if (__sync_fetch_and_xor(AI+10, 9) != 0)
     abort ();
-  if (__sync_fetch_and_nand(AI+11, 7) != (char)-1) /* { dg-message "note: '__sync_fetch_and_nand' changed semantics in GCC 4.4" "" } */
+  if (__sync_fetch_and_nand(AI+11, 7) != (char)-1) /* { dg-message "note: '__sync_fetch_and_nand' changed semantics in GCC 4.4" } */
     abort ();
 
   if (__sync_add_and_fetch(AI+12, 1) != 1)
@@ -44,7 +44,7 @@  do_qi (void)
     abort ();
   if (__sync_xor_and_fetch(AI+16, 9) != 9)
     abort ();
-  if (__sync_nand_and_fetch(AI+17, 7) != (char)~7) /* { dg-message "note: '__sync_nand_and_fetch' changed semantics in GCC 4.4" "" } */
+  if (__sync_nand_and_fetch(AI+17, 7) != (char)~7) /* { dg-message "note: '__sync_nand_and_fetch' changed semantics in GCC 4.4" } */
     abort ();
 }
 
diff --git a/gcc/testsuite/gcc.dg/two-types-1.c b/gcc/testsuite/gcc.dg/two-types-1.c
index f6160aa..43d236b 100644
--- a/gcc/testsuite/gcc.dg/two-types-1.c
+++ b/gcc/testsuite/gcc.dg/two-types-1.c
@@ -2,4 +2,4 @@ 
 /* { dg-options "-std=gnu89" } // suppress default -pedantic-errors */
 
 typedef int x, y;
-x y z;			/* { dg-error "" "" } */
+x y z;			/* { dg-error "" } */
diff --git a/gcc/testsuite/gcc.dg/two-types-2.c b/gcc/testsuite/gcc.dg/two-types-2.c
index 30fcabc..0fffae5 100644
--- a/gcc/testsuite/gcc.dg/two-types-2.c
+++ b/gcc/testsuite/gcc.dg/two-types-2.c
@@ -2,4 +2,4 @@ 
 /* { dg-options "-std=gnu89" } // suppress default -pedantic-errors */
 
 typedef int x, y;
-x struct f z; /* { dg-error "two or more " "" } */
+x struct f z; /* { dg-error "two or more " } */
diff --git a/gcc/testsuite/gcc.dg/two-types-4.c b/gcc/testsuite/gcc.dg/two-types-4.c
index 1ec734f..5ffb153 100644
--- a/gcc/testsuite/gcc.dg/two-types-4.c
+++ b/gcc/testsuite/gcc.dg/two-types-4.c
@@ -5,5 +5,5 @@  int f()
 {
   struct f {
   }
-  int z; /* { dg-error "expected ';', identifier or " "" } */
+  int z; /* { dg-error "expected ';', identifier or " } */
 }
diff --git a/gcc/testsuite/gcc.dg/two-types-5.c b/gcc/testsuite/gcc.dg/two-types-5.c
index a127388..9b5ca8f 100644
--- a/gcc/testsuite/gcc.dg/two-types-5.c
+++ b/gcc/testsuite/gcc.dg/two-types-5.c
@@ -2,5 +2,5 @@ 
 /* { dg-options "-std=gnu89" } // suppress default -pedantic-errors */
 
 struct f {}
-struct g {} /* { dg-error "expected ';', identifier or " "" } */
-int f(); /* { dg-error "expected ';', identifier or " "" } */
+struct g {} /* { dg-error "expected ';', identifier or " } */
+int f(); /* { dg-error "expected ';', identifier or " } */
diff --git a/gcc/testsuite/gcc.dg/two-types-6.c b/gcc/testsuite/gcc.dg/two-types-6.c
index 1c55549..ca3bfa9 100644
--- a/gcc/testsuite/gcc.dg/two-types-6.c
+++ b/gcc/testsuite/gcc.dg/two-types-6.c
@@ -2,6 +2,6 @@ 
 /* { dg-options "-std=gnu89" } // suppress default -pedantic-errors */
 
 struct s {
-  struct f {} /* dg-warning "does not declare anything" "" } */
-  struct g {} x; /* { dg-error "expected ';', identifier or " "" } */
+  struct f {} /* dg-warning "does not declare anything" } */
+  struct g {} x; /* { dg-error "expected ';', identifier or " } */
 };
diff --git a/gcc/testsuite/gcc.dg/two-types-7.c b/gcc/testsuite/gcc.dg/two-types-7.c
index 981c69b..f7a28d9 100644
--- a/gcc/testsuite/gcc.dg/two-types-7.c
+++ b/gcc/testsuite/gcc.dg/two-types-7.c
@@ -3,6 +3,6 @@ 
 
 struct s {
   struct f {}
-  enum a { X } /* { dg-error "expected ';', identifier or " "" } */
-  struct g {} /* { dg-error "expected identifier " "" } */
-}; /* { dg-warning "no semicolon" "" } */
+  enum a { X } /* { dg-error "expected ';', identifier or " } */
+  struct g {} /* { dg-error "expected identifier " } */
+}; /* { dg-warning "no semicolon" } */
diff --git a/gcc/testsuite/gcc.dg/two-types-8.c b/gcc/testsuite/gcc.dg/two-types-8.c
index 0103b22..666b9a9 100644
--- a/gcc/testsuite/gcc.dg/two-types-8.c
+++ b/gcc/testsuite/gcc.dg/two-types-8.c
@@ -2,9 +2,9 @@ 
 /* { dg-options "-std=gnu89" } // suppress default -pedantic-errors */
 
 enum x { XYZ }
-struct g { enum x a; }; /* { dg-error "expected ';', identifier or " "" } */
+struct g { enum x a; }; /* { dg-error "expected ';', identifier or " } */
 
 int f(struct g *x)
 {
-  return x->a == XYZ; /* { dg-bogus " has no member " "" } */
+  return x->a == XYZ; /* { dg-bogus " has no member " } */
 }
diff --git a/gcc/testsuite/gcc.dg/two-types-9.c b/gcc/testsuite/gcc.dg/two-types-9.c
index c6da949..0234c55 100644
--- a/gcc/testsuite/gcc.dg/two-types-9.c
+++ b/gcc/testsuite/gcc.dg/two-types-9.c
@@ -2,9 +2,9 @@ 
 /* { dg-options "-std=gnu89" } // suppress default -pedantic-errors */
 
 struct f {}
-static int a, b; /* { dg-error "expected ';', identifier or " "" } */
+static int a, b; /* { dg-error "expected ';', identifier or " } */
 
 int f()
 {
-	return a - b; /* { dg-bogus "invalid operands " "" } */
+	return a - b; /* { dg-bogus "invalid operands " } */
 }
diff --git a/gcc/testsuite/gcc.dg/uninit-I.c b/gcc/testsuite/gcc.dg/uninit-I.c
index 3f80d96..e59b2ad 100644
--- a/gcc/testsuite/gcc.dg/uninit-I.c
+++ b/gcc/testsuite/gcc.dg/uninit-I.c
@@ -4,5 +4,5 @@ 
 int sys_msgctl (void)
 {
   struct { int mode; } setbuf;
-  return setbuf.mode;  /* { dg-warning "'setbuf\.mode' is used" "" } */
+  return setbuf.mode;  /* { dg-warning "'setbuf\.mode' is used" } */
 }
diff --git a/gcc/testsuite/gcc.dg/uninit-pr19430.c b/gcc/testsuite/gcc.dg/uninit-pr19430.c
index ef47b26..e00f313 100644
--- a/gcc/testsuite/gcc.dg/uninit-pr19430.c
+++ b/gcc/testsuite/gcc.dg/uninit-pr19430.c
@@ -29,7 +29,7 @@  void frob(int *pi);
 int main(void)
 {
   int i; 
-  printf("i = %d\n", i); /* { dg-warning "'i' is used uninitialized in this function" "" } */
+  printf("i = %d\n", i); /* { dg-warning "'i' is used uninitialized in this function" } */
   frob(&i);
 
   return 0;
diff --git a/gcc/testsuite/gcc.dg/visibility-7.c b/gcc/testsuite/gcc.dg/visibility-7.c
index 016f3dd..8bf62d6 100644
--- a/gcc/testsuite/gcc.dg/visibility-7.c
+++ b/gcc/testsuite/gcc.dg/visibility-7.c
@@ -5,8 +5,8 @@ 
 
 extern int 
 __attribute__((visibility ("hidden")))
-xyzzy; /* { dg-message "note: previous declaration" "" } */
+xyzzy; /* { dg-message "note: previous declaration" } */
 
 int 
 __attribute__((visibility ("protected")))
-xyzzy = 5; /* { dg-warning "different visibility" "" } */
+xyzzy = 5; /* { dg-warning "different visibility" } */
diff --git a/gcc/testsuite/gcc.dg/winline-10.c b/gcc/testsuite/gcc.dg/winline-10.c
index b781bc6..dfc868f 100644
--- a/gcc/testsuite/gcc.dg/winline-10.c
+++ b/gcc/testsuite/gcc.dg/winline-10.c
@@ -3,7 +3,7 @@ 
 
 struct s { int a; };
 
-inline void f (x)	/* { dg-warning "inlining .* mismatched arg" "" } */
+inline void f (x)	/* { dg-warning "inlining .* mismatched arg" } */
      int x;
 {
   asm ("");
diff --git a/gcc/testsuite/gcc.dg/winline-2.c b/gcc/testsuite/gcc.dg/winline-2.c
index f4f7cc4..0d9114b 100644
--- a/gcc/testsuite/gcc.dg/winline-2.c
+++ b/gcc/testsuite/gcc.dg/winline-2.c
@@ -1,7 +1,7 @@ 
 /* { dg-do compile } */
 /* { dg-options "-Winline -O2 -fgnu89-inline" } */
 
-inline int q(void);		 /* { dg-warning "body not available" "" } */
+inline int q(void);		 /* { dg-warning "body not available" } */
 inline int t(void)
 {
 	return q();		 /* { dg-message "called from here" } */
diff --git a/gcc/testsuite/gcc.dg/winline-3.c b/gcc/testsuite/gcc.dg/winline-3.c
index 6c5d6ae..7b7c8c5 100644
--- a/gcc/testsuite/gcc.dg/winline-3.c
+++ b/gcc/testsuite/gcc.dg/winline-3.c
@@ -2,7 +2,7 @@ 
 /* { dg-options "-Winline -O2 --param max-inline-insns-single=1 --param inline-min-speedup=100 -fgnu89-inline" } */
 
 void big (void);
-inline int q(void) /* { dg-warning "max-inline-insns-single" "" } */
+inline int q(void) /* { dg-warning "max-inline-insns-single" } */
 {
 	big();
 	big();
diff --git a/gcc/testsuite/gcc.dg/winline-9.c b/gcc/testsuite/gcc.dg/winline-9.c
index f97a764..6d9cba3 100644
--- a/gcc/testsuite/gcc.dg/winline-9.c
+++ b/gcc/testsuite/gcc.dg/winline-9.c
@@ -10,7 +10,7 @@  int aa (void)
   test(t);
 }
 static inline
-int bb (void) /* { dg-warning "large-stack-frame" "" } */
+int bb (void) /* { dg-warning "large-stack-frame" } */
 {
   char t[100];
   test(t);
diff --git a/gcc/testsuite/gcc.target/i386/attr-returns_twice-1.c b/gcc/testsuite/gcc.target/i386/attr-returns_twice-1.c
index cd820d2..17499ad 100644
--- a/gcc/testsuite/gcc.target/i386/attr-returns_twice-1.c
+++ b/gcc/testsuite/gcc.target/i386/attr-returns_twice-1.c
@@ -7,7 +7,7 @@  void g(int);
 int
 main (void)
 {
-  register int reg asm ("esi") = 1; /* { dg-warning "might be clobbered" "" } */
+  register int reg asm ("esi") = 1; /* { dg-warning "might be clobbered" } */
 
   if (!newsetjmp ())
     {
diff --git a/gcc/testsuite/gcc.target/i386/chkp-const-check-2.c b/gcc/testsuite/gcc.target/i386/chkp-const-check-2.c
index 683c21d..839cf78 100644
--- a/gcc/testsuite/gcc.target/i386/chkp-const-check-2.c
+++ b/gcc/testsuite/gcc.target/i386/chkp-const-check-2.c
@@ -4,5 +4,5 @@ 
 int test (int *p)
 {
   p = (int *)__builtin___bnd_set_ptr_bounds (p, sizeof (int));
-  return *(p + 1); /* { dg-warning "memory access check always fail" "" } */
+  return *(p + 1); /* { dg-warning "memory access check always fail" } */
 }
diff --git a/gcc/testsuite/gcc.target/i386/chkp-label-address.c b/gcc/testsuite/gcc.target/i386/chkp-label-address.c
index 979c33e..23a2f7c 100644
--- a/gcc/testsuite/gcc.target/i386/chkp-label-address.c
+++ b/gcc/testsuite/gcc.target/i386/chkp-label-address.c
@@ -3,7 +3,7 @@ 
 
 #include <stdio.h>
 
-static int f1 () /* { dg-warning "function cannot be instrumented" "" } */
+static int f1 () /* { dg-warning "function cannot be instrumented" } */
 {
   static int array = &&label_B - &&label_A;
 
diff --git a/gcc/testsuite/gcc.target/i386/chkp-remove-bndint-2.c b/gcc/testsuite/gcc.target/i386/chkp-remove-bndint-2.c
index 413941a..eea0b0a 100644
--- a/gcc/testsuite/gcc.target/i386/chkp-remove-bndint-2.c
+++ b/gcc/testsuite/gcc.target/i386/chkp-remove-bndint-2.c
@@ -12,5 +12,5 @@  struct S
 int test (struct S *ps)
 {
   int *pi = &ps->b;
-  return *(pi + 1); /* { dg-warning "memory access check always fail" "" } */
+  return *(pi + 1); /* { dg-warning "memory access check always fail" } */
 }
diff --git a/gcc/testsuite/gcc.target/i386/pr39162.c b/gcc/testsuite/gcc.target/i386/pr39162.c
index efb46de..8f5a0d9 100644
--- a/gcc/testsuite/gcc.target/i386/pr39162.c
+++ b/gcc/testsuite/gcc.target/i386/pr39162.c
@@ -8,7 +8,7 @@  typedef long long __m256i __attribute__ ((__vector_size__ (32), __may_alias__));
 extern __m256i y;
 
 void
-bar (__m256i x) /* { dg-warning "AVX" "" } */
+bar (__m256i x) /* { dg-warning "AVX" } */
 {
   y = x;
 }
diff --git a/gcc/testsuite/gcc.target/i386/sse-5.c b/gcc/testsuite/gcc.target/i386/sse-5.c
index 33118b7..e06bd51 100644
--- a/gcc/testsuite/gcc.target/i386/sse-5.c
+++ b/gcc/testsuite/gcc.target/i386/sse-5.c
@@ -5,7 +5,7 @@ 
 
 typedef double v2df __attribute__ ((vector_size (16)));
 v2df p;
-void q(v2df t) /* { dg-warning "SSE" "" } */
+void q(v2df t) /* { dg-warning "SSE" } */
 {
 	p=t;
 }
diff --git a/gcc/testsuite/gcc.target/powerpc/altivec-types-1.c b/gcc/testsuite/gcc.target/powerpc/altivec-types-1.c
index 9096892..bcce2a3 100644
--- a/gcc/testsuite/gcc.target/powerpc/altivec-types-1.c
+++ b/gcc/testsuite/gcc.target/powerpc/altivec-types-1.c
@@ -28,64 +28,64 @@  __vector _Bool vb;
 
 /* These should be rejected as invalid AltiVec types.  */
 
-__vector long long vll;			/* { dg-error "AltiVec types" "" } */
-__vector unsigned long long vull;	/* { dg-error "AltiVec types" "" } */
-__vector signed long long vsll;		/* { dg-error "AltiVec types" "" } */
-__vector __bool long long vbll;		/* { dg-error "AltiVec types" "" } */
-__vector long long int vlli;		/* { dg-error "AltiVec types" "" } */
-__vector unsigned long long int vulli;	/* { dg-error "AltiVec types" "" } */
-__vector signed long long int vslli;	/* { dg-error "AltiVec types" "" } */
-__vector __bool long long int vblli;	/* { dg-error "AltiVec types" "" } */
-__vector double vd1;			/* { dg-error "AltiVec types" "" } */
-__vector long double vld;		/* { dg-error "AltiVec types" "" } */
-__vector _Complex float vcf;		/* { dg-error "AltiVec types" "" } */
-__vector _Complex double vcd;		/* { dg-error "AltiVec types" "" } */
-__vector _Complex long double vcld;	/* { dg-error "AltiVec types" "" } */
-__vector _Complex signed char vcsc;	/* { dg-error "AltiVec types" "" } */
-__vector _Complex unsigned char vcuc;	/* { dg-error "AltiVec types" "" } */
-__vector _Complex short vcss;		/* { dg-error "AltiVec types" "" } */
-__vector _Complex unsigned short vcus;	/* { dg-error "AltiVec types" "" } */
-__vector _Complex int vcsi;		/* { dg-error "AltiVec types" "" } */
-__vector _Complex unsigned int vcui;	/* { dg-error "AltiVec types" "" } */
-__vector _Complex long vcsl;		/* { dg-error "AltiVec types" "" } */
-__vector _Complex unsigned long vcul;	/* { dg-error "AltiVec types" "" } */
-__vector _Complex long long vcsll;	/* { dg-error "AltiVec types" "" } */
-__vector _Complex unsigned long long vcull; /* { dg-error "AltiVec types" "" } */
-__vector __complex float v_cf;		/* { dg-error "AltiVec types" "" } */
-__vector __complex double v_cd;		/* { dg-error "AltiVec types" "" } */
-__vector __complex long double v_cld;	/* { dg-error "AltiVec types" "" } */
-__vector __complex signed char v_csc;	/* { dg-error "AltiVec types" "" } */
-__vector __complex unsigned char v_cuc;	/* { dg-error "AltiVec types" "" } */
-__vector __complex short v_css;		/* { dg-error "AltiVec types" "" } */
-__vector __complex unsigned short v_cus; /* { dg-error "AltiVec types" "" } */
-__vector __complex int v_csi;		/* { dg-error "AltiVec types" "" } */
-__vector __complex unsigned int v_cui;	/* { dg-error "AltiVec types" "" } */
-__vector __complex long v_csl;		/* { dg-error "AltiVec types" "" } */
-__vector __complex unsigned long v_cul;	/* { dg-error "AltiVec types" "" } */
-__vector __complex long long v_csll;	/* { dg-error "AltiVec types" "" } */
-__vector __complex unsigned long long v_cull; /* { dg-error "AltiVec types" "" } */
+__vector long long vll;			/* { dg-error "AltiVec types" } */
+__vector unsigned long long vull;	/* { dg-error "AltiVec types" } */
+__vector signed long long vsll;		/* { dg-error "AltiVec types" } */
+__vector __bool long long vbll;		/* { dg-error "AltiVec types" } */
+__vector long long int vlli;		/* { dg-error "AltiVec types" } */
+__vector unsigned long long int vulli;	/* { dg-error "AltiVec types" } */
+__vector signed long long int vslli;	/* { dg-error "AltiVec types" } */
+__vector __bool long long int vblli;	/* { dg-error "AltiVec types" } */
+__vector double vd1;			/* { dg-error "AltiVec types" } */
+__vector long double vld;		/* { dg-error "AltiVec types" } */
+__vector _Complex float vcf;		/* { dg-error "AltiVec types" } */
+__vector _Complex double vcd;		/* { dg-error "AltiVec types" } */
+__vector _Complex long double vcld;	/* { dg-error "AltiVec types" } */
+__vector _Complex signed char vcsc;	/* { dg-error "AltiVec types" } */
+__vector _Complex unsigned char vcuc;	/* { dg-error "AltiVec types" } */
+__vector _Complex short vcss;		/* { dg-error "AltiVec types" } */
+__vector _Complex unsigned short vcus;	/* { dg-error "AltiVec types" } */
+__vector _Complex int vcsi;		/* { dg-error "AltiVec types" } */
+__vector _Complex unsigned int vcui;	/* { dg-error "AltiVec types" } */
+__vector _Complex long vcsl;		/* { dg-error "AltiVec types" } */
+__vector _Complex unsigned long vcul;	/* { dg-error "AltiVec types" } */
+__vector _Complex long long vcsll;	/* { dg-error "AltiVec types" } */
+__vector _Complex unsigned long long vcull; /* { dg-error "AltiVec types" } */
+__vector __complex float v_cf;		/* { dg-error "AltiVec types" } */
+__vector __complex double v_cd;		/* { dg-error "AltiVec types" } */
+__vector __complex long double v_cld;	/* { dg-error "AltiVec types" } */
+__vector __complex signed char v_csc;	/* { dg-error "AltiVec types" } */
+__vector __complex unsigned char v_cuc;	/* { dg-error "AltiVec types" } */
+__vector __complex short v_css;		/* { dg-error "AltiVec types" } */
+__vector __complex unsigned short v_cus; /* { dg-error "AltiVec types" } */
+__vector __complex int v_csi;		/* { dg-error "AltiVec types" } */
+__vector __complex unsigned int v_cui;	/* { dg-error "AltiVec types" } */
+__vector __complex long v_csl;		/* { dg-error "AltiVec types" } */
+__vector __complex unsigned long v_cul;	/* { dg-error "AltiVec types" } */
+__vector __complex long long v_csll;	/* { dg-error "AltiVec types" } */
+__vector __complex unsigned long long v_cull; /* { dg-error "AltiVec types" } */
 
 /* These should be rejected because the component types are invalid.  We
    don't care about the actual error messages here.  */
 
-__vector __bool unsigned char vbuc;	/* { dg-error "" "" } */
-__vector __bool signed char vbsc;	/* { dg-error "" "" } */
-__vector __bool unsigned short vbuh;	/* { dg-error "" "" } */
-__vector __bool signed short vbsh;	/* { dg-error "" "" } */
-__vector __bool unsigned int vbui;	/* { dg-error "" "" } */
-__vector __bool signed int vbsi;	/* { dg-error "" "" } */
-__vector __bool unsigned vbuj;		/* { dg-error "" "" } */
-__vector __bool signed vbsj;		/* { dg-error "" "" } */
-__vector signed float vsf;		/* { dg-error "" "" } */
-__vector unsigned float vuf;		/* { dg-error "" "" } */
-__vector short float vsf;		/* { dg-error "" "" } */
-__vector signed double vsd;		/* { dg-error "" "" } */
-__vector unsigned double vud;		/* { dg-error "" "" } */
-__vector short double vsd;		/* { dg-error "" "" } */
-__vector __bool float vbf;		/* { dg-error "" "" } */
-__vector __bool double vbd;		/* { dg-error "" "" } */
-__vector __bool short float blf;	/* { dg-error "" "" } */
-__vector __bool short double vlbd;	/* { dg-error "" "" } */
+__vector __bool unsigned char vbuc;	/* { dg-error "" } */
+__vector __bool signed char vbsc;	/* { dg-error "" } */
+__vector __bool unsigned short vbuh;	/* { dg-error "" } */
+__vector __bool signed short vbsh;	/* { dg-error "" } */
+__vector __bool unsigned int vbui;	/* { dg-error "" } */
+__vector __bool signed int vbsi;	/* { dg-error "" } */
+__vector __bool unsigned vbuj;		/* { dg-error "" } */
+__vector __bool signed vbsj;		/* { dg-error "" } */
+__vector signed float vsf;		/* { dg-error "" } */
+__vector unsigned float vuf;		/* { dg-error "" } */
+__vector short float vsf;		/* { dg-error "" } */
+__vector signed double vsd;		/* { dg-error "" } */
+__vector unsigned double vud;		/* { dg-error "" } */
+__vector short double vsd;		/* { dg-error "" } */
+__vector __bool float vbf;		/* { dg-error "" } */
+__vector __bool double vbd;		/* { dg-error "" } */
+__vector __bool short float blf;	/* { dg-error "" } */
+__vector __bool short double vlbd;	/* { dg-error "" } */
 
 /* { dg-message "note: previous" "prev vsf" { target *-*-* } 79 } */
 /* { dg-message "note: previous" "prev vsd" { target *-*-* } 82 } */
diff --git a/gcc/testsuite/gcc.target/powerpc/altivec-types-2.c b/gcc/testsuite/gcc.target/powerpc/altivec-types-2.c
index cee6c8f..4df12da 100644
--- a/gcc/testsuite/gcc.target/powerpc/altivec-types-2.c
+++ b/gcc/testsuite/gcc.target/powerpc/altivec-types-2.c
@@ -5,10 +5,10 @@ 
 
 /* These should get warnings for 32-bit code.  */
 
-__vector long vl;			/* { dg-warning "deprecated" "" } */
-__vector unsigned long vul;		/* { dg-warning "deprecated" "" } */
-__vector signed long vsl;		/* { dg-warning "deprecated" "" } */
-__vector __bool long int vbli;		/* { dg-warning "deprecated" "" } */
-__vector long int vli;			/* { dg-warning "deprecated" "" } */
-__vector unsigned long int vuli;	/* { dg-warning "deprecated" "" } */
-__vector signed long int vsli;		/* { dg-warning "deprecated" "" } */
+__vector long vl;			/* { dg-warning "deprecated" } */
+__vector unsigned long vul;		/* { dg-warning "deprecated" } */
+__vector signed long vsl;		/* { dg-warning "deprecated" } */
+__vector __bool long int vbli;		/* { dg-warning "deprecated" } */
+__vector long int vli;			/* { dg-warning "deprecated" } */
+__vector unsigned long int vuli;	/* { dg-warning "deprecated" } */
+__vector signed long int vsli;		/* { dg-warning "deprecated" } */
diff --git a/gcc/testsuite/gcc.target/powerpc/altivec-types-3.c b/gcc/testsuite/gcc.target/powerpc/altivec-types-3.c
index ea371ce..fe28e53 100644
--- a/gcc/testsuite/gcc.target/powerpc/altivec-types-3.c
+++ b/gcc/testsuite/gcc.target/powerpc/altivec-types-3.c
@@ -5,10 +5,10 @@ 
 
 /* These should be rejected for 64-bit code.  */
 
-__vector long vl;			/* { dg-error "invalid for 64" "" } */
-__vector unsigned long vul;		/* { dg-error "invalid for 64" "" } */
-__vector signed long vsl;		/* { dg-error "invalid for 64" "" } */
-__vector __bool long int vbli;		/* { dg-error "invalid for 64" "" } */
-__vector long int vli;			/* { dg-error "invalid for 64" "" } */
-__vector unsigned long int vuli;	/* { dg-error "invalid for 64" "" } */
-__vector signed long int vsli;		/* { dg-error "invalid for 64" "" } */
+__vector long vl;			/* { dg-error "invalid for 64" } */
+__vector unsigned long vul;		/* { dg-error "invalid for 64" } */
+__vector signed long vsl;		/* { dg-error "invalid for 64" } */
+__vector __bool long int vbli;		/* { dg-error "invalid for 64" } */
+__vector long int vli;			/* { dg-error "invalid for 64" } */
+__vector unsigned long int vuli;	/* { dg-error "invalid for 64" } */
+__vector signed long int vsli;		/* { dg-error "invalid for 64" } */
diff --git a/gcc/testsuite/gcc.target/powerpc/float128-mix.c b/gcc/testsuite/gcc.target/powerpc/float128-mix.c
index d0cac202..8979cdf 100644
--- a/gcc/testsuite/gcc.target/powerpc/float128-mix.c
+++ b/gcc/testsuite/gcc.target/powerpc/float128-mix.c
@@ -7,10 +7,10 @@ 
 /* Test to make sure that __float128 and long double cannot be combined together.  */
 __float128 add (__float128 a, long double b)
 {
-  return a+b;	/* { dg-error "__float128 and long double cannot be used in the same expression" "" } */
+  return a+b;	/* { dg-error "__float128 and long double cannot be used in the same expression" } */
 }
 
 __ibm128 sub (long double a, __float128 b)
 {
-  return a-b;	/* { dg-error "__float128 and long double cannot be used in the same expression" "" } */
+  return a-b;	/* { dg-error "__float128 and long double cannot be used in the same expression" } */
 }
diff --git a/gcc/testsuite/gcc.target/powerpc/no-r11-3.c b/gcc/testsuite/gcc.target/powerpc/no-r11-3.c
index 9cc8309..a4985a3 100644
--- a/gcc/testsuite/gcc.target/powerpc/no-r11-3.c
+++ b/gcc/testsuite/gcc.target/powerpc/no-r11-3.c
@@ -6,7 +6,7 @@ 
 extern void ext_call (int (func) (void));
 
 int
-outer_func (int init)	/* { dg-error "-mno-pointers-to-nested-functions option" "" } */
+outer_func (int init)	/* { dg-error "-mno-pointers-to-nested-functions option" } */
 {
   int value = init;
 
diff --git a/gcc/testsuite/gcc.target/spu/Wmain.c b/gcc/testsuite/gcc.target/spu/Wmain.c
index 58eca02..b6bfe41 100644
--- a/gcc/testsuite/gcc.target/spu/Wmain.c
+++ b/gcc/testsuite/gcc.target/spu/Wmain.c
@@ -1,7 +1,7 @@ 
 /* { dg-do compile } */
 /* { dg-options "-Wmain -mstdmain" } */
 
-int main (void *wrong)/* { dg-warning "first argument of 'main' should be 'int'" "" } */
+int main (void *wrong)/* { dg-warning "first argument of 'main' should be 'int'" } */
 { 
   /* { dg-warning "'main' takes only zero or two arguments" "" { target *-*-* } 4 } */
 }
diff --git a/gcc/testsuite/gcc.target/spu/ea/errors2.c b/gcc/testsuite/gcc.target/spu/ea/errors2.c
index 74a32ff..f8269e9 100644
--- a/gcc/testsuite/gcc.target/spu/ea/errors2.c
+++ b/gcc/testsuite/gcc.target/spu/ea/errors2.c
@@ -60,7 +60,7 @@  struct foo ea_struct3 = {
 
 struct foo ea_struct4 = {
   40,
-  (__ea char *)lm_str,	/* { dg-error "(initializer element is not constant)|(near initialization)" "" } */
+  (__ea char *)lm_str,	/* { dg-error "(initializer element is not constant)|(near initialization)" } */
   41,
 };
 
diff --git a/gcc/testsuite/gfortran.dg/assignment_1.f90 b/gcc/testsuite/gfortran.dg/assignment_1.f90
index 4322e59..4022b0d 100644
--- a/gcc/testsuite/gfortran.dg/assignment_1.f90
+++ b/gcc/testsuite/gfortran.dg/assignment_1.f90
@@ -12,7 +12,7 @@  integer, target :: t, s
 t = 1
 p => s
 ! We didn't dereference the pointer in the following line.
-p = f() ! { dg-warning "POINTER-valued function" "" }
+p = f() ! { dg-warning "POINTER-valued function" }
 p = p+1
 if (p.ne.2) call abort()
 if (p.ne.s) call abort()
diff --git a/gcc/testsuite/gfortran.dg/common_3.f90 b/gcc/testsuite/gfortran.dg/common_3.f90
index 818738e..c5e40aa 100644
--- a/gcc/testsuite/gfortran.dg/common_3.f90
+++ b/gcc/testsuite/gfortran.dg/common_3.f90
@@ -1,7 +1,7 @@ 
 ! { dg-do compile }
 ! Check that equivalences match common block layout.
 program common_3
-  common /block/ a, b, c, d ! { dg-error "not match ordering" "" }
+  common /block/ a, b, c, d ! { dg-error "not match ordering" }
   integer a, b, c, d, n
   dimension n(4)
   equivalence (a, n(1))
diff --git a/gcc/testsuite/gfortran.dg/der_io_1.f90 b/gcc/testsuite/gfortran.dg/der_io_1.f90
index 4cbbf77..03a1913 100644
--- a/gcc/testsuite/gfortran.dg/der_io_1.f90
+++ b/gcc/testsuite/gfortran.dg/der_io_1.f90
@@ -11,7 +11,7 @@  program der_io_1
 
   v%p => i
   i = 42
-  write (unit=s, fmt='(I2)') v ! { dg-error "POINTER components" "" }
+  write (unit=s, fmt='(I2)') v ! { dg-error "POINTER components" }
   if (s .ne. '42') call abort ()
 end program
 
diff --git a/gcc/testsuite/gfortran.dg/g77/20030326-1.f b/gcc/testsuite/gfortran.dg/g77/20030326-1.f
index 6efc5d9..395b80e 100644
--- a/gcc/testsuite/gfortran.dg/g77/20030326-1.f
+++ b/gcc/testsuite/gfortran.dg/g77/20030326-1.f
@@ -6,5 +6,5 @@ 
 ! For gfortran, see PR 13490
 !
        integer c
-       c = -2147483648_4 / (-1) ! { dg-error "too big for its kind" "" }
+       c = -2147483648_4 / (-1) ! { dg-error "too big for its kind" }
        end
diff --git a/gcc/testsuite/gfortran.dg/g77/9263.f b/gcc/testsuite/gfortran.dg/g77/9263.f
index 77ce985..f3255e9 100644
--- a/gcc/testsuite/gfortran.dg/g77/9263.f
+++ b/gcc/testsuite/gfortran.dg/g77/9263.f
@@ -3,9 +3,9 @@  C { dg-do compile }
       PARAMETER (P=10)
       INTEGER C(10),D(10),E(10),F(10)
 C     TERMINAL NOT INTEGER
-      DATA (C(I),I=1,P)    /10*10/ ! { dg-error "End expression in DO loop" "" }
+      DATA (C(I),I=1,P)    /10*10/ ! { dg-error "End expression in DO loop" }
 C     START NOT INTEGER
-      DATA (D(I),I=Q,10)   /10*10/ ! { dg-error "Start expression in DO loop" "" }
+      DATA (D(I),I=Q,10)   /10*10/ ! { dg-error "Start expression in DO loop" }
 C     INCREMENT NOT INTEGER
-      DATA (E(I),I=1,10,Q) /10*10/ ! { dg-error "Step expression in DO loop" "" }
+      DATA (E(I),I=1,10,Q) /10*10/ ! { dg-error "Step expression in DO loop" }
       END
diff --git a/gcc/testsuite/gfortran.dg/g77/960317-1.f b/gcc/testsuite/gfortran.dg/g77/960317-1.f
index c8b3b69..c976905 100644
--- a/gcc/testsuite/gfortran.dg/g77/960317-1.f
+++ b/gcc/testsuite/gfortran.dg/g77/960317-1.f
@@ -14,7 +14,7 @@  C
       SUBROUTINE QUICK
       SAVE
 C
-      ASSIGN 101 TO JUMP ! { dg-warning "Deleted feature: ASSIGN" "" }
+      ASSIGN 101 TO JUMP ! { dg-warning "Deleted feature: ASSIGN" }
   101 Continue
 C
       RETURN
diff --git a/gcc/testsuite/gfortran.dg/g77/970625-2.f b/gcc/testsuite/gfortran.dg/g77/970625-2.f
index 7f8a464..df9ed3d 100644
--- a/gcc/testsuite/gfortran.dg/g77/970625-2.f
+++ b/gcc/testsuite/gfortran.dg/g77/970625-2.f
@@ -52,22 +52,22 @@ 
       LOGICAL REAL
       REAL LOGICAL
       INTEGER INTEGER, STOP, RETURN, GO TO
-      ASSIGN 9 TO STOP     ! { dg-warning "ASSIGN" "" }
+      ASSIGN 9 TO STOP     ! { dg-warning "ASSIGN" }
       ASSIGN = 9 + LOGICAL
-      ASSIGN 7 TO RETURN   ! { dg-warning "ASSIGN" "" }
-      ASSIGN 9 TO GO TO    ! { dg-warning "ASSIGN" "" }
+      ASSIGN 7 TO RETURN   ! { dg-warning "ASSIGN" }
+      ASSIGN 9 TO GO TO    ! { dg-warning "ASSIGN" }
       GO TO = 5
       STOP = 8
-      IF (.NOT.REAL) GOTO STOP ! { dg-warning "Assigned GOTO" "" }
+      IF (.NOT.REAL) GOTO STOP ! { dg-warning "Assigned GOTO" }
       IF (LOGICAL.GT.INTEGER) THEN
          IF = LOGICAL +5
-         IF (LOGICAL.EQ.5) ASSIGN 5 TO IF ! { dg-warning "ASSIGN" "" }
+         IF (LOGICAL.EQ.5) ASSIGN 5 TO IF ! { dg-warning "ASSIGN" }
          INTEGER=IF
       ELSE
-         IF (ASSIGN.GT.STOP) ASSIGN 9 TO GOTO ! { dg-warning "ASSIGN" "" }
+         IF (ASSIGN.GT.STOP) ASSIGN 9 TO GOTO ! { dg-warning "ASSIGN" }
          ELSE = GO TO
          END IF = ELSE + GO TO
-         IF (.NOT.REAL.AND.GOTO.GT.ELSE) GOTO RETURN ! { dg-warning "Assigned GOTO" "" }
+         IF (.NOT.REAL.AND.GOTO.GT.ELSE) GOTO RETURN ! { dg-warning "Assigned GOTO" }
       END IF
     5 CONTINUE
     7 LOGICAL=LOGICAL+STOP
diff --git a/gcc/testsuite/gfortran.dg/g77/980615-0.f b/gcc/testsuite/gfortran.dg/g77/980615-0.f
index 5107f4f..f4800fe 100644
--- a/gcc/testsuite/gfortran.dg/g77/980615-0.f
+++ b/gcc/testsuite/gfortran.dg/g77/980615-0.f
@@ -8,5 +8,5 @@  c { dg-do compile }
       CaLL foo(W)
       END
       SUBROUTINE foo(W)
-      yy(I)=A(I)Q(X) ! { dg-error "Unclassifiable statement" "" }
+      yy(I)=A(I)Q(X) ! { dg-error "Unclassifiable statement" }
 c { dg-error "end of file" "end of file" { target *-*-* } 0 }
diff --git a/gcc/testsuite/gfortran.dg/g77/check0.f b/gcc/testsuite/gfortran.dg/g77/check0.f
index f0a14f8..fb22aaa 100644
--- a/gcc/testsuite/gfortran.dg/g77/check0.f
+++ b/gcc/testsuite/gfortran.dg/g77/check0.f
@@ -8,7 +8,7 @@  CCC        * stmt.c (check_seenlabel): When search for line number note for
 CCC        warning, handle case where there is no such note.
       logical l(10)
       integer i(10)
-      goto (10,20),l ! { dg-error "Selection expression in computed GOTO" "" }
-      goto (10,20),i ! { dg-error "Selection expression in computed GOTO" "" }
+      goto (10,20),l ! { dg-error "Selection expression in computed GOTO" }
+      goto (10,20),i ! { dg-error "Selection expression in computed GOTO" }
  10   stop
  20   end
diff --git a/gcc/testsuite/gfortran.dg/g77/dnrm2.f b/gcc/testsuite/gfortran.dg/g77/dnrm2.f
index dbf9f0d..8c91ac5 100644
--- a/gcc/testsuite/gfortran.dg/g77/dnrm2.f
+++ b/gcc/testsuite/gfortran.dg/g77/dnrm2.f
@@ -33,21 +33,21 @@  c     current Netlib BLAS.)
       if(n .gt. 0 .and. incx.gt.0) go to 10
          dnrm2  = zero
          go to 300
-   10 assign 30 to next ! { dg-warning "ASSIGN" "" }
+   10 assign 30 to next ! { dg-warning "ASSIGN" }
       sum = zero
       i = 1
       ix = 1
-   20    go to next,(30, 50, 70, 110) ! { dg-warning "Assigned GOTO" "" }
+   20    go to next,(30, 50, 70, 110) ! { dg-warning "Assigned GOTO" }
    30 if( dabs(dx(i)) .gt. cutlo) go to 85
-      assign 50 to next ! { dg-warning "ASSIGN" "" }
+      assign 50 to next ! { dg-warning "ASSIGN" }
       xmax = zero
    50 if( dx(i) .eq. zero) go to 200
       if( dabs(dx(i)) .gt. cutlo) go to 85
-      assign 70 to next ! { dg-warning "ASSIGN" "" }
+      assign 70 to next ! { dg-warning "ASSIGN" }
       go to 105
   100 continue
       ix = j
-      assign 110 to next ! { dg-warning "ASSIGN" "" }
+      assign 110 to next ! { dg-warning "ASSIGN" }
       sum = (sum / dx(i)) / dx(i)
   105 xmax = dabs(dx(i))
       go to 115
diff --git a/gcc/testsuite/gfortran.dg/g77/pr9258.f b/gcc/testsuite/gfortran.dg/g77/pr9258.f
index 6213245..dee58b4 100644
--- a/gcc/testsuite/gfortran.dg/g77/pr9258.f
+++ b/gcc/testsuite/gfortran.dg/g77/pr9258.f
@@ -5,14 +5,14 @@  C { dg-do compile }
       SUBROUTINE FOO (B)
 
   10  CALL BAR (A)
-      ASSIGN 20 TO M           !{ dg-warning "Deleted feature: ASSIGN" "" }
+      ASSIGN 20 TO M           !{ dg-warning "Deleted feature: ASSIGN" }
       IF (100.LT.A) GOTO 10
       GOTO 40
 C
   20  IF (B.LT.ABS(A)) GOTO 10
-      ASSIGN 30 TO M           !{ dg-warning "Deleted feature: ASSIGN" "" }
+      ASSIGN 30 TO M           !{ dg-warning "Deleted feature: ASSIGN" }
       GOTO 40
 C
-  30  ASSIGN 10 TO M           !{ dg-warning "Deleted feature: ASSIGN" "" }
-  40  GOTO M,(10,20,30)        !{ dg-warning "Deleted feature: Assigned GOTO" "" }
+  30  ASSIGN 10 TO M           !{ dg-warning "Deleted feature: ASSIGN" }
+  40  GOTO M,(10,20,30)        !{ dg-warning "Deleted feature: Assigned GOTO" }
       END
diff --git a/gcc/testsuite/gfortran.dg/ichar_1.f90 b/gcc/testsuite/gfortran.dg/ichar_1.f90
index 362cd2f..dea146e 100644
--- a/gcc/testsuite/gfortran.dg/ichar_1.f90
+++ b/gcc/testsuite/gfortran.dg/ichar_1.f90
@@ -45,23 +45,23 @@  program ichar_1
    g2(1,1) = 'a'
    if (ichar(g2(1,1)) /= 97) call abort
 
-   i = ichar(c)      ! { dg-error "must be of length one" "" }
-   i = ichar(c(:))   ! { dg-error "must be of length one" "" }
-   i = ichar(s2)     ! { dg-error "must be of length one" "" }
-   i = ichar(c(1:2)) ! { dg-error "must be of length one" "" }
-   i = ichar(c(1:))  ! { dg-error "must be of length one" "" }
-   i = ichar('abc')  ! { dg-error "must be of length one" "" }
+   i = ichar(c)      ! { dg-error "must be of length one" }
+   i = ichar(c(:))   ! { dg-error "must be of length one" }
+   i = ichar(s2)     ! { dg-error "must be of length one" }
+   i = ichar(c(1:2)) ! { dg-error "must be of length one" }
+   i = ichar(c(1:))  ! { dg-error "must be of length one" }
+   i = ichar('abc')  ! { dg-error "must be of length one" }
 
    ! ichar and iachar use the same checking routines. DO a couple of tests to
    ! make sure it's not totally broken.
 
    if (ichar(c(3:3)) /= 97) call abort
-   i = ichar(c)      ! { dg-error "must be of length one" "" }
+   i = ichar(c)      ! { dg-error "must be of length one" }
    
    i = ichar(dt%addr(1:1))
-   i = ichar(dt%addr) ! { dg-error "must be of length one" "" }
-   i = ichar(dt%addr(1:2)) ! { dg-error "must be of length one" "" }
-   i = ichar(dt%addr(1:)) ! { dg-error "must be of length one" "" }
+   i = ichar(dt%addr) ! { dg-error "must be of length one" }
+   i = ichar(dt%addr(1:2)) ! { dg-error "must be of length one" }
+   i = ichar(dt%addr(1:)) ! { dg-error "must be of length one" }
    
    i = ichar(dt1%addr(1:1))
    i = ichar(dt1%addr)
diff --git a/gcc/testsuite/gfortran.dg/interface_1.f90 b/gcc/testsuite/gfortran.dg/interface_1.f90
index aa6850f..c659858 100644
--- a/gcc/testsuite/gfortran.dg/interface_1.f90
+++ b/gcc/testsuite/gfortran.dg/interface_1.f90
@@ -32,7 +32,7 @@  module z
 
   contains
 
-    real function f(a)   ! { dg-warning "in generic interface" "" }
+    real function f(a)   ! { dg-warning "in generic interface" }
       real a
       f = a
     end function
diff --git a/gcc/testsuite/gfortran.dg/namelist_1.f90 b/gcc/testsuite/gfortran.dg/namelist_1.f90
index ee028dd..8ca28dc 100644
--- a/gcc/testsuite/gfortran.dg/namelist_1.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_1.f90
@@ -3,5 +3,5 @@ 
 module namelist_1
   public
   integer,private :: x
-  namelist /n/ x ! { dg-error "cannot be member of PUBLIC namelist" "" }
+  namelist /n/ x ! { dg-error "cannot be member of PUBLIC namelist" }
 end module
diff --git a/gcc/testsuite/gfortran.dg/namelist_2.f90 b/gcc/testsuite/gfortran.dg/namelist_2.f90
index b92e459..f6dd2b4 100644
--- a/gcc/testsuite/gfortran.dg/namelist_2.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_2.f90
@@ -3,5 +3,5 @@ 
 subroutine namelist_2(x)
   integer,intent(in) :: x
   namelist /n/ x
-  read(*,n) ! { dg-error "is INTENT" "" }
+  read(*,n) ! { dg-error "is INTENT" }
 end subroutine namelist_2
diff --git a/gcc/testsuite/gfortran.dg/namelist_3.f90 b/gcc/testsuite/gfortran.dg/namelist_3.f90
index 722b940..f37946d 100644
--- a/gcc/testsuite/gfortran.dg/namelist_3.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_3.f90
@@ -4,5 +4,5 @@ 
 program namelist_3
   integer,pointer :: x
   allocate (x)
-  namelist /n/ x ! { dg-error "NAMELIST attribute with POINTER attribute" "" }
+  namelist /n/ x ! { dg-error "NAMELIST attribute with POINTER attribute" }
 end program namelist_3
diff --git a/gcc/testsuite/gfortran.dg/namelist_print_2.f b/gcc/testsuite/gfortran.dg/namelist_print_2.f
index c37e359..cc1df5b 100644
--- a/gcc/testsuite/gfortran.dg/namelist_print_2.f
+++ b/gcc/testsuite/gfortran.dg/namelist_print_2.f
@@ -9,5 +9,5 @@ 
       real  x
       namelist /mynml/ x
       x = 1
-      print mynml  ! { dg-error "PRINT namelist.*extension" "" }
+      print mynml  ! { dg-error "PRINT namelist.*extension" }
       end
diff --git a/gcc/testsuite/gfortran.dg/oldstyle_1.f90 b/gcc/testsuite/gfortran.dg/oldstyle_1.f90
index 47c07cb8..6d5d189 100644
--- a/gcc/testsuite/gfortran.dg/oldstyle_1.f90
+++ b/gcc/testsuite/gfortran.dg/oldstyle_1.f90
@@ -1,7 +1,7 @@ 
 ! { dg-do run }
-      integer i, j /1/, g/2/, h ! { dg-warning "" "" }
-      integer k, l(3) /2*2,1/   ! { dg-warning "" "" }
-      real pi /3.1416/, e       ! { dg-warning "" "" }
+      integer i, j /1/, g/2/, h ! { dg-warning "" }
+      integer k, l(3) /2*2,1/   ! { dg-warning "" }
+      real pi /3.1416/, e       ! { dg-warning "" }
 
       if (j /= 1) call abort ()
       if (g /= 2) call abort ()
diff --git a/gcc/testsuite/gfortran.dg/runtime_warning_1.f90 b/gcc/testsuite/gfortran.dg/runtime_warning_1.f90
index 2894136..6e93e3f 100644
--- a/gcc/testsuite/gfortran.dg/runtime_warning_1.f90
+++ b/gcc/testsuite/gfortran.dg/runtime_warning_1.f90
@@ -7,7 +7,7 @@ 
 !
      character(5) c
      open (42,status='scratch')
-     write (42,'(A,$)') 'abc' ! { dg-warning ".*descriptor" "" }
+     write (42,'(A,$)') 'abc' ! { dg-warning ".*descriptor" }
      write (42,'(A)') 'de'
      rewind (42)
      read (42,'(A)') c
diff --git a/gcc/testsuite/gfortran.dg/underflow.f90 b/gcc/testsuite/gfortran.dg/underflow.f90
index 631fd5a..789b0a5 100644
--- a/gcc/testsuite/gfortran.dg/underflow.f90
+++ b/gcc/testsuite/gfortran.dg/underflow.f90
@@ -1,5 +1,5 @@ 
 ! { dg-do compile }
 program a
    real x
-   x = tiny(x) / huge(x)  ! { dg-warning "Arithmetic underflow" "" }
+   x = tiny(x) / huge(x)  ! { dg-warning "Arithmetic underflow" }
 end program a
diff --git a/gcc/testsuite/gnat.dg/specs/integer_value.ads b/gcc/testsuite/gnat.dg/specs/integer_value.ads
index 6e9c1b5..28644cd 100644
--- a/gcc/testsuite/gnat.dg/specs/integer_value.ads
+++ b/gcc/testsuite/gnat.dg/specs/integer_value.ads
@@ -1,5 +1,5 @@ 
 -- { dg-do compile }
 package Integer_Value is
    X : constant Integer :=
-     Integer'Integer_Value (12.8); -- { dg-error "fixed-point type" "" }
+     Integer'Integer_Value (12.8); -- { dg-error "fixed-point type" }
 end Integer_Value;
diff --git a/gcc/testsuite/obj-c++.dg/fsf-package-0.m b/gcc/testsuite/obj-c++.dg/fsf-package-0.m
index 942c1f4..7436f2f 100644
--- a/gcc/testsuite/obj-c++.dg/fsf-package-0.m
+++ b/gcc/testsuite/obj-c++.dg/fsf-package-0.m
@@ -32,5 +32,5 @@  void foo (void)
   a->v2 = 1;
   a->v3 = [a value] - a->v2;	/* { dg-warning ".v3. is @protected" } */
   a->v4 = a->v3 - 1;		/* { dg-warning ".v4. is @private" } */
-  				/* { dg-warning ".v3. is @protected" "" } */
+  				/* { dg-warning ".v3. is @protected" } */
 }
diff --git a/gcc/testsuite/objc.dg/two-types-1.m b/gcc/testsuite/objc.dg/two-types-1.m
index da902a3..b2370b7 100644
--- a/gcc/testsuite/objc.dg/two-types-1.m
+++ b/gcc/testsuite/objc.dg/two-types-1.m
@@ -3,7 +3,7 @@ 
 
 @interface foo
 struct f {}
-struct g { int a; }; /* { dg-error "expected ';', identifier or " "" } */
+struct g { int a; }; /* { dg-error "expected ';', identifier or " } */
 
 - (struct f *) a;
 - (struct g *) b;
@@ -11,5 +11,5 @@  struct g { int a; }; /* { dg-error "expected ';', identifier or " "" } */
 
 int f(struct g *x)
 {
-  return x->a; /* { dg-bogus " has no member " "" } */
+  return x->a; /* { dg-bogus " has no member " } */
 }