Commit 7a95dfa7 by Tom de Vries Committed by Tom de Vries

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.

From-SVN: r247389
parent b6dc26ba
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.
2017-04-28 Martin Liska <mliska@suse.cz>
PR gcov-profile/79891
......
......@@ -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];
......
......@@ -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" }
}
......@@ -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" }
}
......@@ -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;
......
......@@ -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&);
......
......@@ -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)" }
......@@ -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 }
}
......@@ -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()
{
......
......@@ -10,5 +10,5 @@ class D;
bool mm(D);
void g(C& f) {
mm(f); // { dg-error "parameter" "" }
mm(f); // { dg-error "parameter" }
}
......@@ -7,6 +7,6 @@ struct A;
int main()
{
A::g(); // { dg-error "incomplete" "" }
A::g(); // { dg-error "incomplete" }
}
......@@ -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" }
}
};
......@@ -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 "" } */
......@@ -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" } */
......@@ -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" } */
......@@ -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&);
......
......@@ -11,6 +11,6 @@ public:
};
Foo::Foo(int v0, int v1)
: val_((int[]) {v0, v1}) // { dg-error "" "" }
: val_((int[]) {v0, v1}) // { dg-error "" }
{
}
......@@ -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" }
}
......@@ -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" }
......@@ -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;
......
......@@ -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" } */
};
......@@ -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;
......
......@@ -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" } */
......@@ -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 }
}
......@@ -10,5 +10,5 @@ B b;
void A::f ()
{
A* ap = &b; // { dg-error "base|inherit" "" }
A* ap = &b; // { dg-error "base|inherit" }
}
......@@ -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" }
};
......@@ -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" }
};
}
......@@ -5,5 +5,5 @@ namespace Out {
}
}
class Klasse : public Out::In { // { dg-error ".*" "" }
class Klasse : public Out::In { // { dg-error ".*" }
};
......@@ -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" }
......@@ -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" }
......@@ -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" }
......@@ -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" }
......@@ -7,5 +7,5 @@ struct A { };
int main()
{
A a;
a.i = 9; // { dg-error "no member" "" }
a.i = 9; // { dg-error "no member" }
}
......@@ -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" }
}
......@@ -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;
}
......@@ -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" }
}
......@@ -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 "" }
}
......
......@@ -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" }
}
};
......@@ -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> >);
......
// 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() { }
......@@ -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" }
}
......@@ -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" }
......@@ -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" }
};
......@@ -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" }
......
......@@ -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" }
......@@ -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" }
}
......@@ -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" }
}
......@@ -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" }
}
};
......
......@@ -13,5 +13,5 @@ int main()
{
long long m;
(void (QObject::*)()) m; // { dg-error "invalid cast" "" }
(void (QObject::*)()) m; // { dg-error "invalid cast" }
}
......@@ -8,6 +8,6 @@
void init ()
{
do { } while (0)
obj = 0; // { dg-error "expected|not declared" "" }
obj = 0; // { dg-error "expected|not declared" }
}
......@@ -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" }
}
};
......@@ -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" }
}
......@@ -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 "" }
......@@ -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" }
}
......@@ -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" }
......@@ -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 "" }
}
......@@ -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\]." }
{ }
};
......@@ -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" }
......@@ -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
......
......@@ -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
......
......@@ -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();
}
......
......@@ -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" }
......@@ -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" }
};
......@@ -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" }
};
......@@ -11,5 +11,5 @@ void anyfunc(int x);
void Foo ()
{
anyfunc (&dummy<>); // { dg-error "cannot resolve overload" "" }
anyfunc (&dummy<>); // { dg-error "cannot resolve overload" }
}
......@@ -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" }
}
......@@ -8,5 +8,5 @@
void Foo (int)
{
Foo(2 2); // { dg-error "expected" "" }
Foo(2 2); // { dg-error "expected" }
}
......@@ -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;
......
......@@ -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" }
}
......@@ -10,4 +10,4 @@
class
{
typename::
; // { dg-error "" "" }
; // { dg-error "" }
......@@ -4,4 +4,4 @@
// PR 18095: ICE
// Origin: Volker Reichelt <reichelt@gcc.gnu.org>
struct A // { dg-error "expected" "" }
struct A // { dg-error "expected" }
......@@ -4,4 +4,4 @@
// PR 18095: ICE
// Origin: Volker Reichelt <reichelt@gcc.gnu.org>
struct A {} // { dg-error "expected" "" }
struct A {} // { dg-error "expected" }
......@@ -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" }
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" }
......@@ -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
{
......
......@@ -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" }
}
......@@ -8,7 +8,7 @@ namespace N
struct X { };
}
N::X X; // { dg-error "" "" }
N::X X; // { dg-error "" }
int main()
{
......
......@@ -4,4 +4,4 @@
struct A;
void foo ();
void f() { alignas (foo (A)); } // { dg-error "expected" "" }
void f() { alignas (foo (A)); } // { dg-error "expected" }
......@@ -9,6 +9,6 @@ void f ()
{
class c
{
friend void g () { } // { dg-error "local class" "" }
friend void g () { } // { dg-error "local class" }
};
}
......@@ -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;
}
......@@ -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 "" }
......@@ -8,4 +8,4 @@
namespace A {}
int A::* p; // { dg-error "is a namespace" "" }
int A::* p; // { dg-error "is a namespace" }
......@@ -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)" }
};
// 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 "" }
......@@ -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;
......
......@@ -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" }
}
......@@ -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>;
......
......@@ -21,7 +21,7 @@ struct D
{
int Foo ()
{
return operator int (); // { dg-error "not defined" "" }
return operator int (); // { dg-error "not defined" }
}
};
......@@ -12,5 +12,5 @@ namespace N
template<typename T> void g (N::A *p)
{
(void) A (p); // { dg-message "" "" }
(void) A (p); // { dg-message "" }
}
......@@ -18,6 +18,6 @@ struct B
{
bool bar(A& a)
{
return a.foo == 0; // { dg-error "" "" }
return a.foo == 0; // { dg-error "" }
}
};
......@@ -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" }
}
......@@ -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" }
}
......@@ -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)" }
......@@ -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" }
......@@ -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" }
};
}
......
......@@ -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" }
}
......@@ -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" }
{}
};
......
......@@ -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;
......
......@@ -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" }
}
......@@ -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;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment