]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
re PR testsuite/25241 ([C++] DejaGNU does not distinguish between errors and warnings)
authorJanis Johnson <janis187@us.ibm.com>
Thu, 18 Sep 2008 22:29:39 +0000 (22:29 +0000)
committerJanis Johnson <janis@gcc.gnu.org>
Thu, 18 Sep 2008 22:29:39 +0000 (22:29 +0000)
PR testsuite/25241
* lib/g++.exp (g++_init): Enable overrides of dg-error, dg-warning
for C++ tests.
* g++.dg/conversion/ambig1.C: Clean up dg-error/dg-warning; use
dg-message for notes.
* g++.dg/conversion/simd1.C: Ditto.
* g++.dg/conversion/simd3.C: Ditto.
* g++.dg/cpp0x/rv2n.C: Ditto.
* g++.dg/cpp0x/rv3n.C: Ditto.
* g++.dg/cpp0x/rv4n.C: Ditto.
* g++.dg/cpp0x/rv5n.C: Ditto.
* g++.dg/cpp0x/rv6n.C: Ditto.
* g++.dg/cpp0x/rv7n.C: Ditto.
* g++.dg/cpp0x/variadic36.C: Ditto.
* g++.dg/cpp0x/variadic59.C: Ditto.
* g++.dg/cpp0x/variadic71.C: Ditto.
* g++.dg/cpp0x/variadic-ex13.C: Ditto.
* g++.dg/expr/cond9.C: Ditto.
* g++.dg/expr/pmf-1.C: Ditto.
* g++.dg/ext/case-range2.C: Ditto.
* g++.dg/ext/case-range3.C: Ditto.
* g++.dg/ext/is_class_error2.C: Ditto.
* g++.dg/ext/label5.C: Ditto.
* g++.dg/ext/pr27019.C: Ditto.
* g++.dg/gomp/pr26690-1.C: Ditto.
* g++.dg/gomp/pr26690-2.C: Ditto.
* g++.dg/gomp/pr34694.C: Ditto.
* g++.dg/gomp/tpl-parallel-2.C: Ditto.
* g++.dg/inherit/base3.C: Ditto.
* g++.dg/inherit/using6.C: Ditto.
* g++.dg/init/brace6.C: Ditto.
* g++.dg/init/ctor4.C: Ditto.
* g++.dg/lookup/conv-1.C: Ditto.
* g++.dg/lookup/new1.C: Ditto.
* g++.dg/lookup/scoped6.C: Ditto.
* g++.dg/lookup/using7.C: Ditto.
* g++.dg/lookup/using9.C: Ditto.
* g++.dg/other/abstract1.C: Ditto.
* g++.dg/other/abstract2.C: Ditto.
* g++.dg/other/anon5.C: Ditto.
* g++.dg/other/crash-4.C: Ditto.
* g++.dg/other/error10.C: Ditto.
* g++.dg/other/error13.C: Ditto.
* g++.dg/other/error20.C: Ditto.
* g++.dg/other/error5.C: Ditto.
* g++.dg/other/field1.C: Ditto.
* g++.dg/other/offsetof5.C: Ditto.
* g++.dg/other/semicolon.C: Ditto.
* g++.dg/overload/ambig1.C: Ditto.
* g++.dg/overload/arg3.C: Ditto.
* g++.dg/overload/builtin1.C: Ditto.
* g++.dg/overload/copy1.C: Ditto.
* g++.dg/overload/new1.C: Ditto.
* g++.dg/overload/template4.C: Ditto.
* g++.dg/overload/using2.C: Ditto.
* g++.dg/parse/bitfield2.C: Ditto.
* g++.dg/parse/constant4.C: Ditto.
* g++.dg/parse/crash20.C: Ditto.
* g++.dg/parse/crash36.C: Ditto.
* g++.dg/parse/crash5.C: Ditto.
* g++.dg/parse/error11.C: Ditto.
* g++.dg/parse/error12.C: Ditto.
* g++.dg/parse/error19.C: Ditto.
* g++.dg/parse/error28.C: Ditto.
* g++.dg/parse/friend5.C: Ditto.
* g++.dg/parse/invalid-op1.C: Ditto.
* g++.dg/parse/missing-template1.C: Ditto.
* g++.dg/parse/non-dependent2.C: Ditto.
* g++.dg/parse/ret-type2.C: Ditto.
* g++.dg/parse/specialization1.C: Ditto.
* g++.dg/parse/template18.C: Ditto.
* g++.dg/parse/template3.C: Ditto.
* g++.dg/parse/template9.C: Ditto.
* g++.dg/tc1/dr108.C: Ditto.
* g++.dg/tc1/dr152.C: Ditto.
* g++.dg/tc1/dr166.C: Ditto.
* g++.dg/template/access11.C: Ditto.
* g++.dg/template/access2.C: Ditto.
* g++.dg/template/access3.C: Ditto.
* g++.dg/template/access7.C: Ditto.
* g++.dg/template/copy1.C: Ditto.
* g++.dg/template/crash13.C: Ditto.
* g++.dg/template/crash37.C: Ditto.
* g++.dg/template/crash40.C: Ditto.
* g++.dg/template/crash58.C: Ditto.
* g++.dg/template/ctor5.C: Ditto.
* g++.dg/template/dependent-expr5.C: Ditto.
* g++.dg/template/eh2.C: Ditto.
* g++.dg/template/error2.C: Ditto.
* g++.dg/template/error33.C: Ditto.
* g++.dg/template/error4.C: Ditto.
* g++.dg/template/friend31.C: Ditto.
* g++.dg/template/friend32.C: Ditto.
* g++.dg/template/instantiate1.C: Ditto.
* g++.dg/template/instantiate3.C: Ditto.
* g++.dg/template/instantiate5.C: Ditto.
* g++.dg/template/instantiate7.C: Ditto.
* g++.dg/template/local6.C: Ditto.
* g++.dg/template/lookup2.C: Ditto.
* g++.dg/template/member5.C: Ditto.
* g++.dg/template/memfriend15.C: Ditto.
* g++.dg/template/memfriend16.C: Ditto.
* g++.dg/template/memfriend17.C: Ditto.
* g++.dg/template/memfriend7.C: Ditto.
* g++.dg/template/meminit1.C: Ditto.
* g++.dg/template/nested3.C: Ditto.
* g++.dg/template/new3.C: Ditto.
* g++.dg/template/nontype12.C: Ditto.
* g++.dg/template/nontype13.C: Ditto.
* g++.dg/template/nontype6.C: Ditto.
* g++.dg/template/non-type-template-argument-1.C: Ditto.
* g++.dg/template/overload9.C: Ditto.
* g++.dg/template/ptrmem15.C: Ditto.
* g++.dg/template/ptrmem17.C: Ditto.
* g++.dg/template/ptrmem4.C: Ditto.
* g++.dg/template/ptrmem6.C: Ditto.
* g++.dg/template/ptrmem8.C: Ditto.
* g++.dg/template/qualified-id1.C: Ditto.
* g++.dg/template/qualttp20.C: Ditto.
* g++.dg/template/qualttp3.C: Ditto.
* g++.dg/template/qualttp4.C: Ditto.
* g++.dg/template/qualttp5.C: Ditto.
* g++.dg/template/qualttp6.C: Ditto.
* g++.dg/template/qualttp7.C: Ditto.
* g++.dg/template/qualttp8.C: Ditto.
* g++.dg/template/recurse.C: Ditto.
* g++.dg/template/sfinae10.C: Ditto.
* g++.dg/template/sfinae3.C: Ditto.
* g++.dg/template/spec22.C: Ditto.
* g++.dg/template/spec23.C: Ditto.
* g++.dg/template/static9.C: Ditto.
* g++.dg/template/template-id-2.C: Ditto.
* g++.dg/template/typename2.C: Ditto.
* g++.dg/template/typename4.C: Ditto.
* g++.dg/template/using14.C: Ditto.
* g++.dg/template/using2.C: Ditto.
* g++.dg/template/warn1.C: Ditto.
* g++.dg/warn/incomplete1.C: Ditto.
* g++.dg/warn/noeffect2.C: Ditto.
* g++.dg/warn/noeffect4.C: Ditto.
* g++.dg/warn/pr8570.C: Ditto.
* g++.dg/warn/Wparentheses-13.C: Ditto.
* g++.dg/warn/Wparentheses-15.C: Ditto.
* g++.dg/warn/Wparentheses-16.C: Ditto.
* g++.dg/warn/Wparentheses-17.C: Ditto.
* g++.dg/warn/Wparentheses-18.C: Ditto.
* g++.dg/warn/Wparentheses-19.C: Ditto.
* g++.dg/warn/Wparentheses-20.C: Ditto.
* g++.dg/warn/Wparentheses-23.C: Ditto.
* g++.dg/warn/Wstrict-aliasing-3.C: Ditto.
* g++.old-deja/g++.benjamin/15799.C: Ditto.
* g++.old-deja/g++.benjamin/15800-1.C: Ditto.
* g++.old-deja/g++.benjamin/16077.C: Ditto.
* g++.old-deja/g++.bob/inherit2.C: Ditto.
* g++.old-deja/g++.brendan/ambiguity1.C: Ditto.
* g++.old-deja/g++.brendan/crash29.C: Ditto.
* g++.old-deja/g++.brendan/crash48.C: Ditto.
* g++.old-deja/g++.brendan/crash56.C: Ditto.
* g++.old-deja/g++.brendan/cvt3.C: Ditto.
* g++.old-deja/g++.brendan/overload1.C: Ditto.
* g++.old-deja/g++.brendan/overload4.C: Ditto.
* g++.old-deja/g++.brendan/overload9.C: Ditto.
* g++.old-deja/g++.bugs/900127_01.C: Ditto.
* g++.old-deja/g++.bugs/900205_04.C: Ditto.
* g++.old-deja/g++.bugs/900330_02.C: Ditto.
* g++.old-deja/g++.bugs/900404_03.C: Ditto.
* g++.old-deja/g++.bugs/900514_03.C: Ditto.
* g++.old-deja/g++.eh/ctor1.C: Ditto.
* g++.old-deja/g++.eh/spec6.C: Ditto.
* g++.old-deja/g++.ext/overload1.C: Ditto.
* g++.old-deja/g++.jason/conversion11.C: Ditto.
* g++.old-deja/g++.jason/crash3.C: Ditto.
* g++.old-deja/g++.jason/lineno3.C: Ditto.
* g++.old-deja/g++.jason/lineno4.C: Ditto.
* g++.old-deja/g++.jason/opeq3.C: Ditto.
* g++.old-deja/g++.jason/overload16.C: Ditto.
* g++.old-deja/g++.jason/overload28.C: Ditto.
* g++.old-deja/g++.jason/pmf5.C: Ditto.
* g++.old-deja/g++.jason/scoping10.C: Ditto.
* g++.old-deja/g++.jason/template30.C: Ditto.
* g++.old-deja/g++.jason/temporary2.C: Ditto.
* g++.old-deja/g++.jason/tredecl4.C: Ditto.
* g++.old-deja/g++.law/arg11.C: Ditto.
* g++.old-deja/g++.law/arg1.C: Ditto.
* g++.old-deja/g++.law/arm9.C: Ditto.
* g++.old-deja/g++.law/ctors11.C: Ditto.
* g++.old-deja/g++.law/ctors17.C: Ditto.
* g++.old-deja/g++.law/ctors5.C: Ditto.
* g++.old-deja/g++.law/ctors9.C: Ditto.
* g++.old-deja/g++.law/enum4.C: Ditto.
* g++.old-deja/g++.law/missed-error2.C: Ditto.
* g++.old-deja/g++.law/operators9.C: Ditto.
* g++.old-deja/g++.mike/net22.C: Ditto.
* g++.old-deja/g++.mike/net2.C: Ditto.
* g++.old-deja/g++.mike/p11110.C: Ditto.
* g++.old-deja/g++.mike/p1989.C: Ditto.
* g++.old-deja/g++.mike/p2431.C: Ditto.
* g++.old-deja/g++.mike/p438.C: Ditto.
* g++.old-deja/g++.mike/p807a.C: Ditto.
* g++.old-deja/g++.mike/p9068.C: Ditto.
* g++.old-deja/g++.niklas/t120.C: Ditto.
* g++.old-deja/g++.niklas/t121.C: Ditto.
* g++.old-deja/g++.niklas/t128.C: Ditto.
* g++.old-deja/g++.ns/overload2.C: Ditto.
* g++.old-deja/g++.ns/template13.C: Ditto.
* g++.old-deja/g++.ns/using12.C: Ditto.
* g++.old-deja/g++.oliva/delete1.C: Ditto.
* g++.old-deja/g++.oliva/overload1.C: Ditto.
* g++.old-deja/g++.other/crash24.C: Ditto.
* g++.old-deja/g++.other/crash25.C: Ditto.
* g++.old-deja/g++.other/decl3.C: Ditto.
* g++.old-deja/g++.other/expr1.C: Ditto.
* g++.old-deja/g++.other/overcnv2.C: Ditto.
* g++.old-deja/g++.other/overload11.C: Ditto.
* g++.old-deja/g++.other/pmf3.C: Ditto.
* g++.old-deja/g++.other/ptrmem7.C: Ditto.
* g++.old-deja/g++.other/vaarg3.C: Ditto.
* g++.old-deja/g++.other/volatile1.C: Ditto.
* g++.old-deja/g++.pt/assign1.C: Ditto.
* g++.old-deja/g++.pt/auto_ptr.C: Ditto.
* g++.old-deja/g++.pt/const2.C: Ditto.
* g++.old-deja/g++.pt/crash10.C: Ditto.
* g++.old-deja/g++.pt/crash20.C: Ditto.
* g++.old-deja/g++.pt/crash36.C: Ditto.
* g++.old-deja/g++.pt/crash38.C: Ditto.
* g++.old-deja/g++.pt/derived3.C: Ditto.
* g++.old-deja/g++.pt/error2.C: Ditto.
* g++.old-deja/g++.pt/explicit34.C: Ditto.
* g++.old-deja/g++.pt/explicit70.C: Ditto.
* g++.old-deja/g++.pt/friend23.C: Ditto.
* g++.old-deja/g++.pt/ptrmem10.C: Ditto.
* g++.old-deja/g++.pt/redecl1.C: Ditto.
* g++.old-deja/g++.pt/spec35.C: Ditto.
* g++.old-deja/g++.pt/t05.C: Ditto.
* g++.old-deja/g++.pt/typename3.C: Ditto.
* g++.old-deja/g++.pt/typename6.C: Ditto.
* g++.old-deja/g++.pt/unify8.C: Ditto.
* g++.old-deja/g++.pt/vaarg3.C: Ditto.
* g++.old-deja/g++.robertl/eb109.C: Ditto.
* g++.old-deja/g++.robertl/eb131.C: Ditto.
* g++.old-deja/g++.robertl/eb22.C: Ditto.
* g++.old-deja/g++.robertl/eb44.C: Ditto.
* g++.old-deja/g++.robertl/eb4.C: Ditto.
* g++.old-deja/g++.robertl/eb69.C: Ditto.
* g++.dg/parse/constructor1.C: Remove "error" from dg-error, preserving
column number.
* g++.dg/parse/error10.C: Ditto.
* g++.dg/parse/error13.C: Ditto.
* g++.dg/parse/error14.C: Ditto.
* g++.dg/parse/error15.C: Ditto.
* g++.dg/parse/error16.C: Ditto.
* g++.dg/parse/error17.C: Ditto.
* g++.dg/parse/error18.C: Ditto.
* g++.dg/parse/error1.C: Ditto.
* g++.dg/parse/error20.C: Ditto.
* g++.dg/parse/error21.C: Ditto.
* g++.dg/parse/error22.C: Ditto.
* g++.dg/parse/error23.C: Ditto.
* g++.dg/parse/error24.C: Ditto.
* g++.dg/parse/error25.C: Ditto.
* g++.dg/parse/error26.C: Ditto.
* g++.dg/parse/error27.C: Ditto.
* g++.dg/parse/error29.C: Ditto.
* g++.dg/parse/error2.C: Ditto.
* g++.dg/parse/error30.C: Ditto.
* g++.dg/parse/error31.C: Ditto.
* g++.dg/parse/error3.C: Ditto.
* g++.dg/parse/error4.C: Ditto.
* g++.dg/parse/error5.C: Ditto.
* g++.dg/parse/error6.C: Ditto.
* g++.dg/parse/error7.C: Ditto.
* g++.dg/parse/error8.C: Ditto.
* g++.dg/parse/error9.C: Ditto.
* g++.dg/parse/error-column.C: Ditto.
* g++.dg/template/crash80.C: Ditto.
* g++.dg/template/friend44.C: Ditto.
* g++.dg/warn/pr26785.C: Ditto.
* g++.old-deja/g++.brendan/crash16.C: Ditto.

From-SVN: r140476

275 files changed:
gcc/testsuite/ChangeLog
gcc/testsuite/g++.dg/conversion/ambig1.C
gcc/testsuite/g++.dg/conversion/simd1.C
gcc/testsuite/g++.dg/conversion/simd3.C
gcc/testsuite/g++.dg/cpp0x/rv2n.C
gcc/testsuite/g++.dg/cpp0x/rv3n.C
gcc/testsuite/g++.dg/cpp0x/rv4n.C
gcc/testsuite/g++.dg/cpp0x/rv5n.C
gcc/testsuite/g++.dg/cpp0x/rv6n.C
gcc/testsuite/g++.dg/cpp0x/rv7n.C
gcc/testsuite/g++.dg/cpp0x/variadic-ex13.C
gcc/testsuite/g++.dg/cpp0x/variadic36.C
gcc/testsuite/g++.dg/cpp0x/variadic59.C
gcc/testsuite/g++.dg/cpp0x/variadic71.C
gcc/testsuite/g++.dg/expr/cond9.C
gcc/testsuite/g++.dg/expr/pmf-1.C
gcc/testsuite/g++.dg/ext/case-range2.C
gcc/testsuite/g++.dg/ext/case-range3.C
gcc/testsuite/g++.dg/ext/is_class_error2.C
gcc/testsuite/g++.dg/ext/label5.C
gcc/testsuite/g++.dg/ext/pr27019.C
gcc/testsuite/g++.dg/gomp/pr26690-1.C
gcc/testsuite/g++.dg/gomp/pr26690-2.C
gcc/testsuite/g++.dg/gomp/pr34694.C
gcc/testsuite/g++.dg/gomp/tpl-parallel-2.C
gcc/testsuite/g++.dg/inherit/base3.C
gcc/testsuite/g++.dg/inherit/using6.C
gcc/testsuite/g++.dg/init/brace6.C
gcc/testsuite/g++.dg/init/ctor4.C
gcc/testsuite/g++.dg/lookup/conv-1.C
gcc/testsuite/g++.dg/lookup/new1.C
gcc/testsuite/g++.dg/lookup/scoped6.C
gcc/testsuite/g++.dg/lookup/using7.C
gcc/testsuite/g++.dg/lookup/using9.C
gcc/testsuite/g++.dg/other/abstract1.C
gcc/testsuite/g++.dg/other/abstract2.C
gcc/testsuite/g++.dg/other/anon5.C
gcc/testsuite/g++.dg/other/crash-4.C
gcc/testsuite/g++.dg/other/error10.C
gcc/testsuite/g++.dg/other/error13.C
gcc/testsuite/g++.dg/other/error20.C
gcc/testsuite/g++.dg/other/error5.C
gcc/testsuite/g++.dg/other/field1.C
gcc/testsuite/g++.dg/other/offsetof5.C
gcc/testsuite/g++.dg/other/semicolon.C
gcc/testsuite/g++.dg/overload/ambig1.C
gcc/testsuite/g++.dg/overload/arg3.C
gcc/testsuite/g++.dg/overload/builtin1.C
gcc/testsuite/g++.dg/overload/copy1.C
gcc/testsuite/g++.dg/overload/new1.C
gcc/testsuite/g++.dg/overload/template4.C
gcc/testsuite/g++.dg/overload/using2.C
gcc/testsuite/g++.dg/parse/bitfield2.C
gcc/testsuite/g++.dg/parse/constant4.C
gcc/testsuite/g++.dg/parse/constructor1.C
gcc/testsuite/g++.dg/parse/crash20.C
gcc/testsuite/g++.dg/parse/crash36.C
gcc/testsuite/g++.dg/parse/crash5.C
gcc/testsuite/g++.dg/parse/error-column.C
gcc/testsuite/g++.dg/parse/error1.C
gcc/testsuite/g++.dg/parse/error10.C
gcc/testsuite/g++.dg/parse/error11.C
gcc/testsuite/g++.dg/parse/error12.C
gcc/testsuite/g++.dg/parse/error13.C
gcc/testsuite/g++.dg/parse/error14.C
gcc/testsuite/g++.dg/parse/error15.C
gcc/testsuite/g++.dg/parse/error16.C
gcc/testsuite/g++.dg/parse/error17.C
gcc/testsuite/g++.dg/parse/error18.C
gcc/testsuite/g++.dg/parse/error19.C
gcc/testsuite/g++.dg/parse/error2.C
gcc/testsuite/g++.dg/parse/error20.C
gcc/testsuite/g++.dg/parse/error21.C
gcc/testsuite/g++.dg/parse/error22.C
gcc/testsuite/g++.dg/parse/error23.C
gcc/testsuite/g++.dg/parse/error24.C
gcc/testsuite/g++.dg/parse/error25.C
gcc/testsuite/g++.dg/parse/error26.C
gcc/testsuite/g++.dg/parse/error27.C
gcc/testsuite/g++.dg/parse/error28.C
gcc/testsuite/g++.dg/parse/error29.C
gcc/testsuite/g++.dg/parse/error3.C
gcc/testsuite/g++.dg/parse/error30.C
gcc/testsuite/g++.dg/parse/error31.C
gcc/testsuite/g++.dg/parse/error4.C
gcc/testsuite/g++.dg/parse/error5.C
gcc/testsuite/g++.dg/parse/error6.C
gcc/testsuite/g++.dg/parse/error7.C
gcc/testsuite/g++.dg/parse/error8.C
gcc/testsuite/g++.dg/parse/error9.C
gcc/testsuite/g++.dg/parse/friend5.C
gcc/testsuite/g++.dg/parse/invalid-op1.C
gcc/testsuite/g++.dg/parse/missing-template1.C
gcc/testsuite/g++.dg/parse/non-dependent2.C
gcc/testsuite/g++.dg/parse/ret-type2.C
gcc/testsuite/g++.dg/parse/specialization1.C
gcc/testsuite/g++.dg/parse/template18.C
gcc/testsuite/g++.dg/parse/template3.C
gcc/testsuite/g++.dg/parse/template9.C
gcc/testsuite/g++.dg/tc1/dr108.C
gcc/testsuite/g++.dg/tc1/dr152.C
gcc/testsuite/g++.dg/tc1/dr166.C
gcc/testsuite/g++.dg/template/access11.C
gcc/testsuite/g++.dg/template/access2.C
gcc/testsuite/g++.dg/template/access3.C
gcc/testsuite/g++.dg/template/access7.C
gcc/testsuite/g++.dg/template/copy1.C
gcc/testsuite/g++.dg/template/crash13.C
gcc/testsuite/g++.dg/template/crash37.C
gcc/testsuite/g++.dg/template/crash40.C
gcc/testsuite/g++.dg/template/crash58.C
gcc/testsuite/g++.dg/template/crash80.C
gcc/testsuite/g++.dg/template/ctor5.C
gcc/testsuite/g++.dg/template/dependent-expr5.C
gcc/testsuite/g++.dg/template/eh2.C
gcc/testsuite/g++.dg/template/error2.C
gcc/testsuite/g++.dg/template/error33.C
gcc/testsuite/g++.dg/template/error4.C
gcc/testsuite/g++.dg/template/friend31.C
gcc/testsuite/g++.dg/template/friend32.C
gcc/testsuite/g++.dg/template/friend44.C
gcc/testsuite/g++.dg/template/instantiate1.C
gcc/testsuite/g++.dg/template/instantiate3.C
gcc/testsuite/g++.dg/template/instantiate5.C
gcc/testsuite/g++.dg/template/instantiate7.C
gcc/testsuite/g++.dg/template/local6.C
gcc/testsuite/g++.dg/template/lookup2.C
gcc/testsuite/g++.dg/template/member5.C
gcc/testsuite/g++.dg/template/memfriend15.C
gcc/testsuite/g++.dg/template/memfriend16.C
gcc/testsuite/g++.dg/template/memfriend17.C
gcc/testsuite/g++.dg/template/memfriend7.C
gcc/testsuite/g++.dg/template/meminit1.C
gcc/testsuite/g++.dg/template/nested3.C
gcc/testsuite/g++.dg/template/new3.C
gcc/testsuite/g++.dg/template/non-type-template-argument-1.C
gcc/testsuite/g++.dg/template/nontype12.C
gcc/testsuite/g++.dg/template/nontype13.C
gcc/testsuite/g++.dg/template/nontype6.C
gcc/testsuite/g++.dg/template/overload9.C
gcc/testsuite/g++.dg/template/ptrmem15.C
gcc/testsuite/g++.dg/template/ptrmem17.C
gcc/testsuite/g++.dg/template/ptrmem4.C
gcc/testsuite/g++.dg/template/ptrmem6.C
gcc/testsuite/g++.dg/template/ptrmem8.C
gcc/testsuite/g++.dg/template/qualified-id1.C
gcc/testsuite/g++.dg/template/qualttp20.C
gcc/testsuite/g++.dg/template/qualttp3.C
gcc/testsuite/g++.dg/template/qualttp4.C
gcc/testsuite/g++.dg/template/qualttp5.C
gcc/testsuite/g++.dg/template/qualttp6.C
gcc/testsuite/g++.dg/template/qualttp7.C
gcc/testsuite/g++.dg/template/qualttp8.C
gcc/testsuite/g++.dg/template/recurse.C
gcc/testsuite/g++.dg/template/sfinae10.C
gcc/testsuite/g++.dg/template/sfinae3.C
gcc/testsuite/g++.dg/template/spec22.C
gcc/testsuite/g++.dg/template/spec23.C
gcc/testsuite/g++.dg/template/static9.C
gcc/testsuite/g++.dg/template/template-id-2.C
gcc/testsuite/g++.dg/template/typename2.C
gcc/testsuite/g++.dg/template/typename4.C
gcc/testsuite/g++.dg/template/using14.C
gcc/testsuite/g++.dg/template/using2.C
gcc/testsuite/g++.dg/template/warn1.C
gcc/testsuite/g++.dg/warn/Wparentheses-13.C
gcc/testsuite/g++.dg/warn/Wparentheses-15.C
gcc/testsuite/g++.dg/warn/Wparentheses-16.C
gcc/testsuite/g++.dg/warn/Wparentheses-17.C
gcc/testsuite/g++.dg/warn/Wparentheses-18.C
gcc/testsuite/g++.dg/warn/Wparentheses-19.C
gcc/testsuite/g++.dg/warn/Wparentheses-20.C
gcc/testsuite/g++.dg/warn/Wparentheses-23.C
gcc/testsuite/g++.dg/warn/Wstrict-aliasing-3.C
gcc/testsuite/g++.dg/warn/incomplete1.C
gcc/testsuite/g++.dg/warn/noeffect2.C
gcc/testsuite/g++.dg/warn/noeffect4.C
gcc/testsuite/g++.dg/warn/pr26785.C
gcc/testsuite/g++.dg/warn/pr8570.C
gcc/testsuite/g++.old-deja/g++.benjamin/15799.C
gcc/testsuite/g++.old-deja/g++.benjamin/15800-1.C
gcc/testsuite/g++.old-deja/g++.benjamin/16077.C
gcc/testsuite/g++.old-deja/g++.bob/inherit2.C
gcc/testsuite/g++.old-deja/g++.brendan/ambiguity1.C
gcc/testsuite/g++.old-deja/g++.brendan/crash16.C
gcc/testsuite/g++.old-deja/g++.brendan/crash29.C
gcc/testsuite/g++.old-deja/g++.brendan/crash48.C
gcc/testsuite/g++.old-deja/g++.brendan/crash56.C
gcc/testsuite/g++.old-deja/g++.brendan/cvt3.C
gcc/testsuite/g++.old-deja/g++.brendan/overload1.C
gcc/testsuite/g++.old-deja/g++.brendan/overload4.C
gcc/testsuite/g++.old-deja/g++.brendan/overload9.C
gcc/testsuite/g++.old-deja/g++.bugs/900127_01.C
gcc/testsuite/g++.old-deja/g++.bugs/900205_04.C
gcc/testsuite/g++.old-deja/g++.bugs/900330_02.C
gcc/testsuite/g++.old-deja/g++.bugs/900404_03.C
gcc/testsuite/g++.old-deja/g++.bugs/900514_03.C
gcc/testsuite/g++.old-deja/g++.eh/ctor1.C
gcc/testsuite/g++.old-deja/g++.eh/spec6.C
gcc/testsuite/g++.old-deja/g++.ext/overload1.C
gcc/testsuite/g++.old-deja/g++.jason/conversion11.C
gcc/testsuite/g++.old-deja/g++.jason/crash3.C
gcc/testsuite/g++.old-deja/g++.jason/lineno3.C
gcc/testsuite/g++.old-deja/g++.jason/lineno4.C
gcc/testsuite/g++.old-deja/g++.jason/opeq3.C
gcc/testsuite/g++.old-deja/g++.jason/overload16.C
gcc/testsuite/g++.old-deja/g++.jason/overload28.C
gcc/testsuite/g++.old-deja/g++.jason/pmf5.C
gcc/testsuite/g++.old-deja/g++.jason/scoping10.C
gcc/testsuite/g++.old-deja/g++.jason/template30.C
gcc/testsuite/g++.old-deja/g++.jason/temporary2.C
gcc/testsuite/g++.old-deja/g++.jason/tredecl4.C
gcc/testsuite/g++.old-deja/g++.law/arg1.C
gcc/testsuite/g++.old-deja/g++.law/arg11.C
gcc/testsuite/g++.old-deja/g++.law/arm9.C
gcc/testsuite/g++.old-deja/g++.law/ctors11.C
gcc/testsuite/g++.old-deja/g++.law/ctors17.C
gcc/testsuite/g++.old-deja/g++.law/ctors5.C
gcc/testsuite/g++.old-deja/g++.law/ctors9.C
gcc/testsuite/g++.old-deja/g++.law/enum4.C
gcc/testsuite/g++.old-deja/g++.law/missed-error2.C
gcc/testsuite/g++.old-deja/g++.law/operators9.C
gcc/testsuite/g++.old-deja/g++.mike/net2.C
gcc/testsuite/g++.old-deja/g++.mike/net22.C
gcc/testsuite/g++.old-deja/g++.mike/p11110.C
gcc/testsuite/g++.old-deja/g++.mike/p1989.C
gcc/testsuite/g++.old-deja/g++.mike/p2431.C
gcc/testsuite/g++.old-deja/g++.mike/p438.C
gcc/testsuite/g++.old-deja/g++.mike/p807a.C
gcc/testsuite/g++.old-deja/g++.mike/p9068.C
gcc/testsuite/g++.old-deja/g++.niklas/t120.C
gcc/testsuite/g++.old-deja/g++.niklas/t121.C
gcc/testsuite/g++.old-deja/g++.niklas/t128.C
gcc/testsuite/g++.old-deja/g++.ns/overload2.C
gcc/testsuite/g++.old-deja/g++.ns/template13.C
gcc/testsuite/g++.old-deja/g++.ns/using12.C
gcc/testsuite/g++.old-deja/g++.oliva/delete1.C
gcc/testsuite/g++.old-deja/g++.oliva/overload1.C
gcc/testsuite/g++.old-deja/g++.other/crash24.C
gcc/testsuite/g++.old-deja/g++.other/crash25.C
gcc/testsuite/g++.old-deja/g++.other/decl3.C
gcc/testsuite/g++.old-deja/g++.other/expr1.C
gcc/testsuite/g++.old-deja/g++.other/overcnv2.C
gcc/testsuite/g++.old-deja/g++.other/overload11.C
gcc/testsuite/g++.old-deja/g++.other/pmf3.C
gcc/testsuite/g++.old-deja/g++.other/ptrmem7.C
gcc/testsuite/g++.old-deja/g++.other/vaarg3.C
gcc/testsuite/g++.old-deja/g++.other/volatile1.C
gcc/testsuite/g++.old-deja/g++.pt/assign1.C
gcc/testsuite/g++.old-deja/g++.pt/auto_ptr.C
gcc/testsuite/g++.old-deja/g++.pt/const2.C
gcc/testsuite/g++.old-deja/g++.pt/crash10.C
gcc/testsuite/g++.old-deja/g++.pt/crash20.C
gcc/testsuite/g++.old-deja/g++.pt/crash36.C
gcc/testsuite/g++.old-deja/g++.pt/crash38.C
gcc/testsuite/g++.old-deja/g++.pt/derived3.C
gcc/testsuite/g++.old-deja/g++.pt/error2.C
gcc/testsuite/g++.old-deja/g++.pt/explicit34.C
gcc/testsuite/g++.old-deja/g++.pt/explicit70.C
gcc/testsuite/g++.old-deja/g++.pt/friend23.C
gcc/testsuite/g++.old-deja/g++.pt/ptrmem10.C
gcc/testsuite/g++.old-deja/g++.pt/redecl1.C
gcc/testsuite/g++.old-deja/g++.pt/spec35.C
gcc/testsuite/g++.old-deja/g++.pt/t05.C
gcc/testsuite/g++.old-deja/g++.pt/typename3.C
gcc/testsuite/g++.old-deja/g++.pt/typename6.C
gcc/testsuite/g++.old-deja/g++.pt/unify8.C
gcc/testsuite/g++.old-deja/g++.pt/vaarg3.C
gcc/testsuite/g++.old-deja/g++.robertl/eb109.C
gcc/testsuite/g++.old-deja/g++.robertl/eb131.C
gcc/testsuite/g++.old-deja/g++.robertl/eb22.C
gcc/testsuite/g++.old-deja/g++.robertl/eb4.C
gcc/testsuite/g++.old-deja/g++.robertl/eb44.C
gcc/testsuite/g++.old-deja/g++.robertl/eb69.C
gcc/testsuite/lib/g++.exp

index 66f16b1e2d0df0145787cb0d0c49cc82b35ed5cd..47885fe5bd3c703b6c43a7898bbe034c30becb90 100644 (file)
@@ -1,3 +1,284 @@
+2008-09-18  Janis Johnson  <janis187@us.ibm.com>
+
+       PR testsuite/25241
+       * lib/g++.exp (g++_init): Enable overrides of dg-error, dg-warning
+       for C++ tests.
+       * g++.dg/conversion/ambig1.C: Clean up dg-error/dg-warning; use
+       dg-message for notes.
+       * g++.dg/conversion/simd1.C: Ditto.
+       * g++.dg/conversion/simd3.C: Ditto.
+       * g++.dg/cpp0x/rv2n.C: Ditto.
+       * g++.dg/cpp0x/rv3n.C: Ditto.
+       * g++.dg/cpp0x/rv4n.C: Ditto.
+       * g++.dg/cpp0x/rv5n.C: Ditto.
+       * g++.dg/cpp0x/rv6n.C: Ditto.
+       * g++.dg/cpp0x/rv7n.C: Ditto.
+       * g++.dg/cpp0x/variadic36.C: Ditto.
+       * g++.dg/cpp0x/variadic59.C: Ditto.
+       * g++.dg/cpp0x/variadic71.C: Ditto.
+       * g++.dg/cpp0x/variadic-ex13.C: Ditto.
+       * g++.dg/expr/cond9.C: Ditto.
+       * g++.dg/expr/pmf-1.C: Ditto.
+       * g++.dg/ext/case-range2.C: Ditto.
+       * g++.dg/ext/case-range3.C: Ditto.
+       * g++.dg/ext/is_class_error2.C: Ditto.
+       * g++.dg/ext/label5.C: Ditto.
+       * g++.dg/ext/pr27019.C: Ditto.
+       * g++.dg/gomp/pr26690-1.C: Ditto.
+       * g++.dg/gomp/pr26690-2.C: Ditto.
+       * g++.dg/gomp/pr34694.C: Ditto.
+       * g++.dg/gomp/tpl-parallel-2.C: Ditto.
+       * g++.dg/inherit/base3.C: Ditto.
+       * g++.dg/inherit/using6.C: Ditto.
+       * g++.dg/init/brace6.C: Ditto.
+       * g++.dg/init/ctor4.C: Ditto.
+       * g++.dg/lookup/conv-1.C: Ditto.
+       * g++.dg/lookup/new1.C: Ditto.
+       * g++.dg/lookup/scoped6.C: Ditto.
+       * g++.dg/lookup/using7.C: Ditto.
+       * g++.dg/lookup/using9.C: Ditto.
+       * g++.dg/other/abstract1.C: Ditto.
+       * g++.dg/other/abstract2.C: Ditto.
+       * g++.dg/other/anon5.C: Ditto.
+       * g++.dg/other/crash-4.C: Ditto.
+       * g++.dg/other/error10.C: Ditto.
+       * g++.dg/other/error13.C: Ditto.
+       * g++.dg/other/error20.C: Ditto.
+       * g++.dg/other/error5.C: Ditto.
+       * g++.dg/other/field1.C: Ditto.
+       * g++.dg/other/offsetof5.C: Ditto.
+       * g++.dg/other/semicolon.C: Ditto.
+       * g++.dg/overload/ambig1.C: Ditto.
+       * g++.dg/overload/arg3.C: Ditto.
+       * g++.dg/overload/builtin1.C: Ditto.
+       * g++.dg/overload/copy1.C: Ditto.
+       * g++.dg/overload/new1.C: Ditto.
+       * g++.dg/overload/template4.C: Ditto.
+       * g++.dg/overload/using2.C: Ditto.
+       * g++.dg/parse/bitfield2.C: Ditto.
+       * g++.dg/parse/constant4.C: Ditto.
+       * g++.dg/parse/crash20.C: Ditto.
+       * g++.dg/parse/crash36.C: Ditto.
+       * g++.dg/parse/crash5.C: Ditto.
+       * g++.dg/parse/error11.C: Ditto.
+       * g++.dg/parse/error12.C: Ditto.
+       * g++.dg/parse/error19.C: Ditto.
+       * g++.dg/parse/error28.C: Ditto.
+       * g++.dg/parse/friend5.C: Ditto.
+       * g++.dg/parse/invalid-op1.C: Ditto.
+       * g++.dg/parse/missing-template1.C: Ditto.
+       * g++.dg/parse/non-dependent2.C: Ditto.
+       * g++.dg/parse/ret-type2.C: Ditto.
+       * g++.dg/parse/specialization1.C: Ditto.
+       * g++.dg/parse/template18.C: Ditto.
+       * g++.dg/parse/template3.C: Ditto.
+       * g++.dg/parse/template9.C: Ditto.
+       * g++.dg/tc1/dr108.C: Ditto.
+       * g++.dg/tc1/dr152.C: Ditto.
+       * g++.dg/tc1/dr166.C: Ditto.
+       * g++.dg/template/access11.C: Ditto.
+       * g++.dg/template/access2.C: Ditto.
+       * g++.dg/template/access3.C: Ditto.
+       * g++.dg/template/access7.C: Ditto.
+       * g++.dg/template/copy1.C: Ditto.
+       * g++.dg/template/crash13.C: Ditto.
+       * g++.dg/template/crash37.C: Ditto.
+       * g++.dg/template/crash40.C: Ditto.
+       * g++.dg/template/crash58.C: Ditto.
+       * g++.dg/template/ctor5.C: Ditto.
+       * g++.dg/template/dependent-expr5.C: Ditto.
+       * g++.dg/template/eh2.C: Ditto.
+       * g++.dg/template/error2.C: Ditto.
+       * g++.dg/template/error33.C: Ditto.
+       * g++.dg/template/error4.C: Ditto.
+       * g++.dg/template/friend31.C: Ditto.
+       * g++.dg/template/friend32.C: Ditto.
+       * g++.dg/template/instantiate1.C: Ditto.
+       * g++.dg/template/instantiate3.C: Ditto.
+       * g++.dg/template/instantiate5.C: Ditto.
+       * g++.dg/template/instantiate7.C: Ditto.
+       * g++.dg/template/local6.C: Ditto.
+       * g++.dg/template/lookup2.C: Ditto.
+       * g++.dg/template/member5.C: Ditto.
+       * g++.dg/template/memfriend15.C: Ditto.
+       * g++.dg/template/memfriend16.C: Ditto.
+       * g++.dg/template/memfriend17.C: Ditto.
+       * g++.dg/template/memfriend7.C: Ditto.
+       * g++.dg/template/meminit1.C: Ditto.
+       * g++.dg/template/nested3.C: Ditto.
+       * g++.dg/template/new3.C: Ditto.
+       * g++.dg/template/nontype12.C: Ditto.
+       * g++.dg/template/nontype13.C: Ditto.
+       * g++.dg/template/nontype6.C: Ditto.
+       * g++.dg/template/non-type-template-argument-1.C: Ditto.
+       * g++.dg/template/overload9.C: Ditto.
+       * g++.dg/template/ptrmem15.C: Ditto.
+       * g++.dg/template/ptrmem17.C: Ditto.
+       * g++.dg/template/ptrmem4.C: Ditto.
+       * g++.dg/template/ptrmem6.C: Ditto.
+       * g++.dg/template/ptrmem8.C: Ditto.
+       * g++.dg/template/qualified-id1.C: Ditto.
+       * g++.dg/template/qualttp20.C: Ditto.
+       * g++.dg/template/qualttp3.C: Ditto.
+       * g++.dg/template/qualttp4.C: Ditto.
+       * g++.dg/template/qualttp5.C: Ditto.
+       * g++.dg/template/qualttp6.C: Ditto.
+       * g++.dg/template/qualttp7.C: Ditto.
+       * g++.dg/template/qualttp8.C: Ditto.
+       * g++.dg/template/recurse.C: Ditto.
+       * g++.dg/template/sfinae10.C: Ditto.
+       * g++.dg/template/sfinae3.C: Ditto.
+       * g++.dg/template/spec22.C: Ditto.
+       * g++.dg/template/spec23.C: Ditto.
+       * g++.dg/template/static9.C: Ditto.
+       * g++.dg/template/template-id-2.C: Ditto.
+       * g++.dg/template/typename2.C: Ditto.
+       * g++.dg/template/typename4.C: Ditto.
+       * g++.dg/template/using14.C: Ditto.
+       * g++.dg/template/using2.C: Ditto.
+       * g++.dg/template/warn1.C: Ditto.
+       * g++.dg/warn/incomplete1.C: Ditto.
+       * g++.dg/warn/noeffect2.C: Ditto.
+       * g++.dg/warn/noeffect4.C: Ditto.
+       * g++.dg/warn/pr8570.C: Ditto.
+       * g++.dg/warn/Wparentheses-13.C: Ditto.
+       * g++.dg/warn/Wparentheses-15.C: Ditto.
+       * g++.dg/warn/Wparentheses-16.C: Ditto.
+       * g++.dg/warn/Wparentheses-17.C: Ditto.
+       * g++.dg/warn/Wparentheses-18.C: Ditto.
+       * g++.dg/warn/Wparentheses-19.C: Ditto.
+       * g++.dg/warn/Wparentheses-20.C: Ditto.
+       * g++.dg/warn/Wparentheses-23.C: Ditto.
+       * g++.dg/warn/Wstrict-aliasing-3.C: Ditto.
+       * g++.old-deja/g++.benjamin/15799.C: Ditto.
+       * g++.old-deja/g++.benjamin/15800-1.C: Ditto.
+       * g++.old-deja/g++.benjamin/16077.C: Ditto.
+       * g++.old-deja/g++.bob/inherit2.C: Ditto.
+       * g++.old-deja/g++.brendan/ambiguity1.C: Ditto.
+       * g++.old-deja/g++.brendan/crash29.C: Ditto.
+       * g++.old-deja/g++.brendan/crash48.C: Ditto.
+       * g++.old-deja/g++.brendan/crash56.C: Ditto.
+       * g++.old-deja/g++.brendan/cvt3.C: Ditto.
+       * g++.old-deja/g++.brendan/overload1.C: Ditto.
+       * g++.old-deja/g++.brendan/overload4.C: Ditto.
+       * g++.old-deja/g++.brendan/overload9.C: Ditto.
+       * g++.old-deja/g++.bugs/900127_01.C: Ditto.
+       * g++.old-deja/g++.bugs/900205_04.C: Ditto.
+       * g++.old-deja/g++.bugs/900330_02.C: Ditto.
+       * g++.old-deja/g++.bugs/900404_03.C: Ditto.
+       * g++.old-deja/g++.bugs/900514_03.C: Ditto.
+       * g++.old-deja/g++.eh/ctor1.C: Ditto.
+       * g++.old-deja/g++.eh/spec6.C: Ditto.
+       * g++.old-deja/g++.ext/overload1.C: Ditto.
+       * g++.old-deja/g++.jason/conversion11.C: Ditto.
+       * g++.old-deja/g++.jason/crash3.C: Ditto.
+       * g++.old-deja/g++.jason/lineno3.C: Ditto.
+       * g++.old-deja/g++.jason/lineno4.C: Ditto.
+       * g++.old-deja/g++.jason/opeq3.C: Ditto.
+       * g++.old-deja/g++.jason/overload16.C: Ditto.
+       * g++.old-deja/g++.jason/overload28.C: Ditto.
+       * g++.old-deja/g++.jason/pmf5.C: Ditto.
+       * g++.old-deja/g++.jason/scoping10.C: Ditto.
+       * g++.old-deja/g++.jason/template30.C: Ditto.
+       * g++.old-deja/g++.jason/temporary2.C: Ditto.
+       * g++.old-deja/g++.jason/tredecl4.C: Ditto.
+       * g++.old-deja/g++.law/arg11.C: Ditto.
+       * g++.old-deja/g++.law/arg1.C: Ditto.
+       * g++.old-deja/g++.law/arm9.C: Ditto.
+       * g++.old-deja/g++.law/ctors11.C: Ditto.
+       * g++.old-deja/g++.law/ctors17.C: Ditto.
+       * g++.old-deja/g++.law/ctors5.C: Ditto.
+       * g++.old-deja/g++.law/ctors9.C: Ditto.
+       * g++.old-deja/g++.law/enum4.C: Ditto.
+       * g++.old-deja/g++.law/missed-error2.C: Ditto.
+       * g++.old-deja/g++.law/operators9.C: Ditto.
+       * g++.old-deja/g++.mike/net22.C: Ditto.
+       * g++.old-deja/g++.mike/net2.C: Ditto.
+       * g++.old-deja/g++.mike/p11110.C: Ditto.
+       * g++.old-deja/g++.mike/p1989.C: Ditto.
+       * g++.old-deja/g++.mike/p2431.C: Ditto.
+       * g++.old-deja/g++.mike/p438.C: Ditto.
+       * g++.old-deja/g++.mike/p807a.C: Ditto.
+       * g++.old-deja/g++.mike/p9068.C: Ditto.
+       * g++.old-deja/g++.niklas/t120.C: Ditto.
+       * g++.old-deja/g++.niklas/t121.C: Ditto.
+       * g++.old-deja/g++.niklas/t128.C: Ditto.
+       * g++.old-deja/g++.ns/overload2.C: Ditto.
+       * g++.old-deja/g++.ns/template13.C: Ditto.
+       * g++.old-deja/g++.ns/using12.C: Ditto.
+       * g++.old-deja/g++.oliva/delete1.C: Ditto.
+       * g++.old-deja/g++.oliva/overload1.C: Ditto.
+       * g++.old-deja/g++.other/crash24.C: Ditto.
+       * g++.old-deja/g++.other/crash25.C: Ditto.
+       * g++.old-deja/g++.other/decl3.C: Ditto.
+       * g++.old-deja/g++.other/expr1.C: Ditto.
+       * g++.old-deja/g++.other/overcnv2.C: Ditto.
+       * g++.old-deja/g++.other/overload11.C: Ditto.
+       * g++.old-deja/g++.other/pmf3.C: Ditto.
+       * g++.old-deja/g++.other/ptrmem7.C: Ditto.
+       * g++.old-deja/g++.other/vaarg3.C: Ditto.
+       * g++.old-deja/g++.other/volatile1.C: Ditto.
+       * g++.old-deja/g++.pt/assign1.C: Ditto.
+       * g++.old-deja/g++.pt/auto_ptr.C: Ditto.
+       * g++.old-deja/g++.pt/const2.C: Ditto.
+       * g++.old-deja/g++.pt/crash10.C: Ditto.
+       * g++.old-deja/g++.pt/crash20.C: Ditto.
+       * g++.old-deja/g++.pt/crash36.C: Ditto.
+       * g++.old-deja/g++.pt/crash38.C: Ditto.
+       * g++.old-deja/g++.pt/derived3.C: Ditto.
+       * g++.old-deja/g++.pt/error2.C: Ditto.
+       * g++.old-deja/g++.pt/explicit34.C: Ditto.
+       * g++.old-deja/g++.pt/explicit70.C: Ditto.
+       * g++.old-deja/g++.pt/friend23.C: Ditto.
+       * g++.old-deja/g++.pt/ptrmem10.C: Ditto.
+       * g++.old-deja/g++.pt/redecl1.C: Ditto.
+       * g++.old-deja/g++.pt/spec35.C: Ditto.
+       * g++.old-deja/g++.pt/t05.C: Ditto.
+       * g++.old-deja/g++.pt/typename3.C: Ditto.
+       * g++.old-deja/g++.pt/typename6.C: Ditto.
+       * g++.old-deja/g++.pt/unify8.C: Ditto.
+       * g++.old-deja/g++.pt/vaarg3.C: Ditto.
+       * g++.old-deja/g++.robertl/eb109.C: Ditto.
+       * g++.old-deja/g++.robertl/eb131.C: Ditto.
+       * g++.old-deja/g++.robertl/eb22.C: Ditto.
+       * g++.old-deja/g++.robertl/eb44.C: Ditto.
+       * g++.old-deja/g++.robertl/eb4.C: Ditto.
+       * g++.old-deja/g++.robertl/eb69.C: Ditto.
+       * g++.dg/parse/constructor1.C: Remove "error" from dg-error, preserving
+       column number.
+       * g++.dg/parse/error10.C: Ditto.
+       * g++.dg/parse/error13.C: Ditto.
+       * g++.dg/parse/error14.C: Ditto.
+       * g++.dg/parse/error15.C: Ditto.
+       * g++.dg/parse/error16.C: Ditto.
+       * g++.dg/parse/error17.C: Ditto.
+       * g++.dg/parse/error18.C: Ditto.
+       * g++.dg/parse/error1.C: Ditto.
+       * g++.dg/parse/error20.C: Ditto.
+       * g++.dg/parse/error21.C: Ditto.
+       * g++.dg/parse/error22.C: Ditto.
+       * g++.dg/parse/error23.C: Ditto.
+       * g++.dg/parse/error24.C: Ditto.
+       * g++.dg/parse/error25.C: Ditto.
+       * g++.dg/parse/error26.C: Ditto.
+       * g++.dg/parse/error27.C: Ditto.
+       * g++.dg/parse/error29.C: Ditto.
+       * g++.dg/parse/error2.C: Ditto.
+       * g++.dg/parse/error30.C: Ditto.
+       * g++.dg/parse/error31.C: Ditto.
+       * g++.dg/parse/error3.C: Ditto.
+       * g++.dg/parse/error4.C: Ditto.
+       * g++.dg/parse/error5.C: Ditto.
+       * g++.dg/parse/error6.C: Ditto.
+       * g++.dg/parse/error7.C: Ditto.
+       * g++.dg/parse/error8.C: Ditto.
+       * g++.dg/parse/error9.C: Ditto.
+       * g++.dg/parse/error-column.C: Ditto.
+       * g++.dg/template/crash80.C: Ditto.
+       * g++.dg/template/friend44.C: Ditto.
+       * g++.dg/warn/pr26785.C: Ditto.
+       * g++.old-deja/g++.brendan/crash16.C: Ditto.
+
 2008-09-18  H.J. Lu  <hongjiu.lu@intel.com>
 
        PR target/37394
index 42ac4038ec661828f5b0e4e0f07335a845da2000..1db1667073fe933c72f4ff313dbd586b305daf6d 100644 (file)
@@ -1,8 +1,8 @@
 // PR c++/19787
 
 struct H {
-  operator char(); // { dg-error "" }
-  operator short(); // { dg-error "" }
+  operator char(); // { dg-message "note" }
+  operator short(); // { dg-message "note" }
 };
 
-int const& ref = H(); // { dg-error "" }
+int const& ref = H(); // { dg-error "ambiguous" }
index 0a5302d1bdeff70bfe762a34f8a74dc863d5e136..06cdc1ab34171e85d6f54404e83ac6d79b4d9af1 100644 (file)
@@ -5,9 +5,9 @@
 
 #define vector __attribute__((vector_size(16)))
 
-vector signed int vld (int a1, const vector signed int *a2) { return *a2; } /* { dg-error "vld" } */
+vector signed int vld (int a1, const vector signed int *a2) { return *a2; } /* { dg-message "vld" } */
 /* { dg-warning "vector returned by ref" "" { target { powerpc*-*-linux* && ilp32 } }  8 } */
-vector signed short vld (int a1, const vector signed short *a2) { return *a2; } /* { dg-error "vld" } */
+vector signed short vld (int a1, const vector signed short *a2) { return *a2; } /* { dg-message "vld" } */
 
 extern int i;
 extern vector signed short vss;
index cdc2ed68a3babcec9b30d9f1dd674fb94b3b3d3a..7aea5449d38851c68a844bd8d86cd7f6dd8b7b0b 100644 (file)
@@ -10,6 +10,6 @@ unsigned int __attribute__((vector_size(16))) e;
 void foo()
 {
        b + d; /* { dg-error "invalid operands to binary" } */
-       d += e; /* { dg-error "use -flax-vector-conversions to permit conversions between vectors with differing element types or numbers of subparts.*cannot convert 'unsigned int __vector__' to 'int __vector__' in assignment" } */
+       d += e; /* { dg-message "use -flax-vector-conversions to permit conversions between vectors with differing element types or numbers of subparts.*cannot convert 'unsigned int __vector__' to 'int __vector__' in assignment" } */
        d2 += d;
 }
index df35358a6c1f9d196c4bcdef2f04f7ef40a35fbb..a4c11c60e2d729c5af3c006630a6f8b20bfdbb87 100644 (file)
@@ -30,8 +30,8 @@ const volatile A cv_source();
 
 // 2 at a time
 
-one   sink_2_12(               A&);  // { dg-error "" }
-two   sink_2_12(const          A&);  // { dg-error "" }
+one   sink_2_12(               A&);  // { dg-message "candidates" }
+two   sink_2_12(const          A&);  // { dg-message "note" }
 
 int test2_12()
 {
@@ -46,8 +46,8 @@ int test2_12()
     return 0;
 }
 
-one   sink_2_13(               A&);  // { dg-error "" }
-three sink_2_13(volatile       A&);  // { dg-error "" }
+one   sink_2_13(               A&);  // { dg-message "candidates" }
+three sink_2_13(volatile       A&);  // { dg-message "note" }
 
 int test2_13()
 {
@@ -64,8 +64,8 @@ int test2_13()
     return 0;
 }
 
-one   sink_2_14(               A&);  // { dg-error "" }
-four  sink_2_14(const volatile A&);  // { dg-error "" }
+one   sink_2_14(               A&);  // { dg-message "candidates" }
+four  sink_2_14(const volatile A&);  // { dg-message "note" }
 
 int test2_14()
 {
@@ -80,8 +80,8 @@ int test2_14()
     return 0;
 }
 
-one   sink_2_15(               A&);  // { dg-error "" }
-five  sink_2_15(               A&&);  // { dg-error "" }
+one   sink_2_15(               A&);  // { dg-message "candidates" }
+five  sink_2_15(               A&&);  // { dg-message "note" }
 
 int test2_15()
 {
@@ -98,8 +98,8 @@ int test2_15()
     return 0;
 }
 
-one   sink_2_16(               A&);  // { dg-error "" }
-six   sink_2_16(const          A&&);  // { dg-error "" }
+one   sink_2_16(               A&);  // { dg-message "candidates" }
+six   sink_2_16(const          A&&);  // { dg-message "note" }
 
 int test2_16()
 {
@@ -114,8 +114,8 @@ int test2_16()
     return 0;
 }
 
-one   sink_2_17(               A&);  // { dg-error "" }
-seven sink_2_17(volatile       A&&);  // { dg-error "" }
+one   sink_2_17(               A&);  // { dg-message "candidates" }
+seven sink_2_17(volatile       A&&);  // { dg-message "note" }
 
 int test2_17()
 {
@@ -130,8 +130,8 @@ int test2_17()
     return 0;
 }
 
-two   sink_2_23(const          A&);  // { dg-error "" }
-three sink_2_23(volatile       A&);  // { dg-error "" }
+two   sink_2_23(const          A&);  // { dg-message "candidates" }
+three sink_2_23(volatile       A&);  // { dg-message "note" }
 
 int test2_23()
 {
@@ -146,8 +146,8 @@ int test2_23()
     return 0;
 }
 
-two   sink_2_24(const          A&);  // { dg-error "" }
-four  sink_2_24(const volatile A&);  // { dg-error "" }
+two   sink_2_24(const          A&);  // { dg-message "candidates" }
+four  sink_2_24(const volatile A&);  // { dg-message "note" }
 
 int test2_24()
 {
@@ -160,8 +160,8 @@ int test2_24()
     return 0;
 }
 
-three sink_2_34(volatile       A&);  // { dg-error "" }
-four  sink_2_34(const volatile A&);  // { dg-error "" }
+three sink_2_34(volatile       A&);  // { dg-message "candidate" }
+four  sink_2_34(const volatile A&);  // { dg-message "note" }
 
 int test2_34()
 {
@@ -176,8 +176,8 @@ int test2_34()
     return 0;
 }
 
-two   sink_2_25(const          A&);  // { dg-error "" }
-five  sink_2_25(               A&&);  // { dg-error "" }
+two   sink_2_25(const          A&);  // { dg-message "candidate" }
+five  sink_2_25(               A&&);  // { dg-message "note" }
 
 int test2_25()
 {
@@ -192,8 +192,8 @@ int test2_25()
     return 0;
 }
 
-two   sink_2_26(const          A&);  // { dg-error "" }
-six   sink_2_26(const          A&&);  // { dg-error "" }
+two   sink_2_26(const          A&);  // { dg-message "candidate" }
+six   sink_2_26(const          A&&);  // { dg-message "note" }
 
 int test2_26()
 {
@@ -208,8 +208,8 @@ int test2_26()
     return 0;
 }
 
-two   sink_2_27(const          A&);  // { dg-error "" }
-seven sink_2_27(volatile       A&&);  // { dg-error "" }
+two   sink_2_27(const          A&);  // { dg-message "candidate" }
+seven sink_2_27(volatile       A&&);  // { dg-message "note" }
 
 int test2_27()
 {
@@ -222,8 +222,8 @@ int test2_27()
     return 0;
 }
 
-three sink_2_35(volatile       A&);  // { dg-error "" }
-five  sink_2_35(               A&&);  // { dg-error "" }
+three sink_2_35(volatile       A&);  // { dg-message "candidate" }
+five  sink_2_35(               A&&);  // { dg-message "note" }
 
 int test2_35()
 {
@@ -239,8 +239,8 @@ int test2_35()
     return 0;
 }
 
-three sink_2_36(volatile       A&);  // { dg-error "" }
-six   sink_2_36(const          A&&);  // { dg-error "" }
+three sink_2_36(volatile       A&);  // { dg-message "candidate" }
+six   sink_2_36(const          A&&);  // { dg-message "note" }
 
 int test2_36()
 {
@@ -254,8 +254,8 @@ int test2_36()
     return 0;
 }
 
-three sink_2_37(volatile       A&);  // { dg-error "" }
-seven sink_2_37(volatile       A&&);  // { dg-error "" }
+three sink_2_37(volatile       A&);  // { dg-message "candidate" }
+seven sink_2_37(volatile       A&&);  // { dg-message "note" }
 
 int test2_37()
 {
@@ -270,8 +270,8 @@ int test2_37()
     return 0;
 }
 
-four  sink_2_45(const volatile A&);   // { dg-error "" }
-five  sink_2_45(               A&&);  // { dg-error "" }
+four  sink_2_45(const volatile A&);   // { dg-message "candidate" }
+five  sink_2_45(               A&&);  // { dg-message "note" }
 
 int test2_45()
 {
@@ -285,8 +285,8 @@ int test2_45()
     return 0;
 }
 
-four  sink_2_46(const volatile A&);   // { dg-error "" }
-six   sink_2_46(const          A&&);  // { dg-error "" }
+four  sink_2_46(const volatile A&);   // { dg-message "candidate" }
+six   sink_2_46(const          A&&);  // { dg-message "note" }
 
 int test2_46()
 {
@@ -299,8 +299,8 @@ int test2_46()
     return 0;
 }
 
-four  sink_2_47(const volatile A&);   // { dg-error "" }
-seven sink_2_47(volatile       A&&);  // { dg-error "" }
+four  sink_2_47(const volatile A&);   // { dg-message "candidate" }
+seven sink_2_47(volatile       A&&);  // { dg-message "note" }
 
 int test2_47()
 {
@@ -313,8 +313,8 @@ int test2_47()
     return 0;
 }
 
-five  sink_2_56(               A&&);  // { dg-error "" }
-six   sink_2_56(const          A&&);  // { dg-error "" }
+five  sink_2_56(               A&&);  // { dg-message "candidate" }
+six   sink_2_56(const          A&&);  // { dg-message "note" }
 
 int test2_56()
 {
@@ -329,8 +329,8 @@ int test2_56()
     return 0;
 }
 
-five  sink_2_57(               A&&);  // { dg-error "" }
-seven sink_2_57(volatile       A&&);  // { dg-error "" }
+five  sink_2_57(               A&&);  // { dg-message "candidate" }
+seven sink_2_57(volatile       A&&);  // { dg-message "note" }
 
 int test2_57()
 {
@@ -345,8 +345,8 @@ int test2_57()
     return 0;
 }
 
-six   sink_2_67(const          A&&);  // { dg-error "" }
-seven sink_2_67(volatile       A&&);  // { dg-error "" }
+six   sink_2_67(const          A&&);  // { dg-message "candidate" }
+seven sink_2_67(volatile       A&&);  // { dg-message "note" }
 
 int test2_67()
 {
index e04ef4fee3468238eaa580fa0d803eb91b305cc3..84675b37feea841a8535335f5167d8d6ea5a3b93 100644 (file)
@@ -30,9 +30,9 @@ const volatile A cv_source();
 
 // 3 at a time
 
-one   sink_3_123(               A&);  // { dg-error "" }
-two   sink_3_123(const          A&);  // { dg-error "" }
-three sink_3_123(volatile       A&);  // { dg-error "" }
+one   sink_3_123(               A&);  // { dg-message "candidates" }
+two   sink_3_123(const          A&);  // { dg-message "note" }
+three sink_3_123(volatile       A&);  // { dg-message "note" }
 
 int test3_123()
 {
@@ -46,13 +46,13 @@ int test3_123()
     return 0;
 }
 
-one   sink_3_125(               A&);  // { dg-error "" }
-two   sink_3_125(const          A&);  // { dg-error "" }
-five  sink_3_125(               A&&);  // { dg-error "" }
+one   sink_3_125(               A&);  // { dg-message "candidates" }
+two   sink_3_125(const          A&);  // { dg-message "note" }
+five  sink_3_125(               A&&);  // { dg-message "note" }
 
-one   sink_3_124(               A&);  // { dg-error "" }
-two   sink_3_124(const          A&);  // { dg-error "" }
-four  sink_3_124(const volatile A&);  // { dg-error "" }
+one   sink_3_124(               A&);  // { dg-message "candidates" }
+two   sink_3_124(const          A&);  // { dg-message "note" }
+four  sink_3_124(const volatile A&);  // { dg-message "note" }
 
 int test3_124()
 {
@@ -78,9 +78,9 @@ int test3_125()
     return 0;
 }
 
-one   sink_3_126(               A&);  // { dg-error "" }
-two   sink_3_126(const          A&);  // { dg-error "" }
-six   sink_3_126(const          A&&);  // { dg-error "" }
+one   sink_3_126(               A&);  // { dg-message "candidates" }
+two   sink_3_126(const          A&);  // { dg-message "note" }
+six   sink_3_126(const          A&&);  // { dg-message "note" }
 
 int test3_126()
 {
@@ -95,9 +95,9 @@ int test3_126()
     return 0;
 }
 
-one   sink_3_127(               A&);  // { dg-error "" }
-two   sink_3_127(const          A&);  // { dg-error "" }
-seven sink_3_127(volatile       A&&);  // { dg-error "" }
+one   sink_3_127(               A&);  // { dg-message "candidates" }
+two   sink_3_127(const          A&);  // { dg-message "note" }
+seven sink_3_127(volatile       A&&);  // { dg-message "note" }
 
 int test3_127()
 {
@@ -110,9 +110,9 @@ int test3_127()
     return 0;
 }
 
-one   sink_3_134(               A&);  // { dg-error "" }
-three sink_3_134(volatile       A&);  // { dg-error "" }
-four  sink_3_134(const volatile A&);  // { dg-error "" }
+one   sink_3_134(               A&);  // { dg-message "candidates" }
+three sink_3_134(volatile       A&);  // { dg-message "note" }
+four  sink_3_134(const volatile A&);  // { dg-message "note" }
 
 int test3_134()
 {
@@ -127,9 +127,9 @@ int test3_134()
     return 0;
 }
 
-one   sink_3_135(               A&);  // { dg-error "" }
-three sink_3_135(volatile       A&);  // { dg-error "" }
-five  sink_3_135(               A&&);  // { dg-error "" }
+one   sink_3_135(               A&);  // { dg-message "candidates" }
+three sink_3_135(volatile       A&);  // { dg-message "note" }
+five  sink_3_135(               A&&);  // { dg-message "note" }
 
 int test3_135()
 {
@@ -145,9 +145,9 @@ int test3_135()
     return 0;
 }
 
-one   sink_3_136(               A&);  // { dg-error "" }
-three sink_3_136(volatile       A&);  // { dg-error "" }
-six   sink_3_136(const          A&&);  // { dg-error "" }
+one   sink_3_136(               A&);  // { dg-message "candidates" }
+three sink_3_136(volatile       A&);  // { dg-message "note" }
+six   sink_3_136(const          A&&);  // { dg-message "note" }
 
 int test3_136()
 {
@@ -161,9 +161,9 @@ int test3_136()
     return 0;
 }
 
-one   sink_3_137(               A&);  // { dg-error "" }
-three sink_3_137(volatile       A&);  // { dg-error "" }
-seven sink_3_137(volatile       A&&);  // { dg-error "" }
+one   sink_3_137(               A&);  // { dg-message "candidates" }
+three sink_3_137(volatile       A&);  // { dg-message "note" }
+seven sink_3_137(volatile       A&&);  // { dg-message "note" }
 
 int test3_137()
 {
@@ -178,9 +178,9 @@ int test3_137()
     return 0;
 }
 
-one   sink_3_145(               A&);  // { dg-error "" }
-four  sink_3_145(const volatile A&);  // { dg-error "" }
-five  sink_3_145(               A&&);  // { dg-error "" }
+one   sink_3_145(               A&);  // { dg-message "candidates" }
+four  sink_3_145(const volatile A&);  // { dg-message "note" }
+five  sink_3_145(               A&&);  // { dg-message "note" }
 
 int test3_145()
 {
@@ -194,9 +194,9 @@ int test3_145()
     return 0;
 }
 
-one   sink_3_146(               A&);  // { dg-error "" }
-four  sink_3_146(const volatile A&);  // { dg-error "" }
-six   sink_3_146(const          A&&);  // { dg-error "" }
+one   sink_3_146(               A&);  // { dg-message "candidates" }
+four  sink_3_146(const volatile A&);  // { dg-message "note" }
+six   sink_3_146(const          A&&);  // { dg-message "note" }
 
 int test3_146()
 {
@@ -209,9 +209,9 @@ int test3_146()
     return 0;
 }
 
-one   sink_3_147(               A&);  // { dg-error "" }
-four  sink_3_147(const volatile A&);  // { dg-error "" }
-seven sink_3_147(volatile       A&&);  // { dg-error "" }
+one   sink_3_147(               A&);  // { dg-message "candidates" }
+four  sink_3_147(const volatile A&);  // { dg-message "note" }
+seven sink_3_147(volatile       A&&);  // { dg-message "note" }
 
 int test3_147()
 {
@@ -224,9 +224,9 @@ int test3_147()
     return 0;
 }
 
-one   sink_3_156(               A&);  // { dg-error "" }
-five  sink_3_156(               A&&);  // { dg-error "" }
-six   sink_3_156(const          A&&);  // { dg-error "" }
+one   sink_3_156(               A&);  // { dg-message "candidates" }
+five  sink_3_156(               A&&);  // { dg-message "note" }
+six   sink_3_156(const          A&&);  // { dg-message "note" }
 
 int test3_156()
 {
@@ -241,9 +241,9 @@ int test3_156()
     return 0;
 }
 
-one   sink_3_157(               A&);  // { dg-error "" }
-five  sink_3_157(               A&&);  // { dg-error "" }
-seven sink_3_157(volatile       A&&);  // { dg-error "" }
+one   sink_3_157(               A&);  // { dg-message "candidates" }
+five  sink_3_157(               A&&);  // { dg-message "note" }
+seven sink_3_157(volatile       A&&);  // { dg-message "note" }
 
 int test3_157()
 {
@@ -258,9 +258,9 @@ int test3_157()
     return 0;
 }
 
-one   sink_3_167(               A&);  // { dg-error "" }
-six   sink_3_167(const          A&&);  // { dg-error "" }
-seven sink_3_167(volatile       A&&);  // { dg-error "" }
+one   sink_3_167(               A&);  // { dg-message "candidates" }
+six   sink_3_167(const          A&&);  // { dg-message "note" }
+seven sink_3_167(volatile       A&&);  // { dg-message "note" }
 
 int test3_167()
 {
@@ -274,9 +274,9 @@ int test3_167()
     return 0;
 }
 
-two   sink_3_234(const          A&);  // { dg-error "" }
-three sink_3_234(volatile       A&);  // { dg-error "" }
-four  sink_3_234(const volatile A&);  // { dg-error "" }
+two   sink_3_234(const          A&);  // { dg-message "candidates" }
+three sink_3_234(volatile       A&);  // { dg-message "note" }
+four  sink_3_234(const volatile A&);  // { dg-message "note" }
 
 int test3_234()
 {
@@ -290,9 +290,9 @@ int test3_234()
     return 0;
 }
 
-two   sink_3_235(const          A&);  // { dg-error "" }
-three sink_3_235(volatile       A&);  // { dg-error "" }
-five  sink_3_235(               A&&);  // { dg-error "" }
+two   sink_3_235(const          A&);  // { dg-message "candidates" }
+three sink_3_235(volatile       A&);  // { dg-message "note" }
+five  sink_3_235(               A&&);  // { dg-message "note" }
 
 int test3_235()
 {
@@ -307,9 +307,9 @@ int test3_235()
     return 0;
 }
 
-two   sink_3_236(const          A&);  // { dg-error "" }
-three sink_3_236(volatile       A&);  // { dg-error "" }
-six   sink_3_236(const          A&&);  // { dg-error "" }
+two   sink_3_236(const          A&);  // { dg-message "candidates" }
+three sink_3_236(volatile       A&);  // { dg-message "note" }
+six   sink_3_236(const          A&&);  // { dg-message "note" }
 
 int test3_236()
 {
@@ -324,9 +324,9 @@ int test3_236()
     return 0;
 }
 
-two   sink_3_237(const          A&);  // { dg-error "" }
-three sink_3_237(volatile       A&);  // { dg-error "" }
-seven sink_3_237(volatile       A&&);  // { dg-error "" }
+two   sink_3_237(const          A&);  // { dg-message "candidates" }
+three sink_3_237(volatile       A&);  // { dg-message "note" }
+seven sink_3_237(volatile       A&&);  // { dg-message "note" }
 
 int test3_237()
 {
@@ -340,9 +340,9 @@ int test3_237()
     return 0;
 }
 
-two   sink_3_238(const          A&);  // { dg-error "" }
-three sink_3_238(volatile       A&);  // { dg-error "" }
-eight sink_3_238(const volatile A&&);  // { dg-error "" }
+two   sink_3_238(const          A&);  // { dg-message "candidates" }
+three sink_3_238(volatile       A&);  // { dg-message "note" }
+eight sink_3_238(const volatile A&&);  // { dg-message "note" }
 
 int test3_238()
 {
@@ -354,9 +354,9 @@ int test3_238()
     return 0;
 }
 
-two   sink_3_245(const          A&);  // { dg-error "" }
-four  sink_3_245(const volatile A&);  // { dg-error "" }
-five  sink_3_245(               A&&);  // { dg-error "" }
+two   sink_3_245(const          A&);  // { dg-message "candidates" }
+four  sink_3_245(const volatile A&);  // { dg-message "note" }
+five  sink_3_245(               A&&);  // { dg-message "note" }
 
 int test3_245()
 {
@@ -369,9 +369,9 @@ int test3_245()
     return 0;
 }
 
-two   sink_3_246(const          A&);  // { dg-error "" }
-four  sink_3_246(const volatile A&);  // { dg-error "" }
-six   sink_3_246(const          A&&);  // { dg-error "" }
+two   sink_3_246(const          A&);  // { dg-message "candidates" }
+four  sink_3_246(const volatile A&);  // { dg-message "note" }
+six   sink_3_246(const          A&&);  // { dg-message "note" }
 
 int test3_246()
 {
@@ -384,9 +384,9 @@ int test3_246()
     return 0;
 }
 
-two   sink_3_247(const          A&);  // { dg-error "" }
-four  sink_3_247(const volatile A&);  // { dg-error "" }
-seven sink_3_247(volatile       A&&);  // { dg-error "" }
+two   sink_3_247(const          A&);  // { dg-message "candidates" }
+four  sink_3_247(const volatile A&);  // { dg-message "note" }
+seven sink_3_247(volatile       A&&);  // { dg-message "note" }
 
 int test3_247()
 {
@@ -398,9 +398,9 @@ int test3_247()
     return 0;
 }
 
-two   sink_3_256(const          A&);  // { dg-error "" }
-five  sink_3_256(               A&&);  // { dg-error "" }
-six   sink_3_256(const          A&&);  // { dg-error "" }
+two   sink_3_256(const          A&);  // { dg-message "candidates" }
+five  sink_3_256(               A&&);  // { dg-message "note" }
+six   sink_3_256(const          A&&);  // { dg-message "note" }
 
 int test3_256()
 {
@@ -415,9 +415,9 @@ int test3_256()
     return 0;
 }
 
-two   sink_3_257(const          A&);  // { dg-error "" }
-five  sink_3_257(               A&&);  // { dg-error "" }
-seven sink_3_257(volatile       A&&);  // { dg-error "" }
+two   sink_3_257(const          A&);  // { dg-message "candidates" }
+five  sink_3_257(               A&&);  // { dg-message "note" }
+seven sink_3_257(volatile       A&&);  // { dg-message "note" }
 
 int test3_257()
 {
@@ -430,9 +430,9 @@ int test3_257()
     return 0;
 }
 
-two   sink_3_267(const          A&);  // { dg-error "" }
-six   sink_3_267(const          A&&);  // { dg-error "" }
-seven sink_3_267(volatile       A&&);  // { dg-error "" }
+two   sink_3_267(const          A&);  // { dg-message "candidates" }
+six   sink_3_267(const          A&&);  // { dg-message "note" }
+seven sink_3_267(volatile       A&&);  // { dg-message "note" }
 
 int test3_267()
 {
@@ -446,9 +446,9 @@ int test3_267()
     return 0;
 }
 
-three sink_3_345(volatile       A&);  // { dg-error "" }
-four  sink_3_345(const volatile A&);  // { dg-error "" }
-five  sink_3_345(               A&&);  // { dg-error "" }
+three sink_3_345(volatile       A&);  // { dg-message "candidates" }
+four  sink_3_345(const volatile A&);  // { dg-message "note" }
+five  sink_3_345(               A&&);  // { dg-message "note" }
 
 int test3_345()
 {
@@ -462,9 +462,9 @@ int test3_345()
     return 0;
 }
 
-three sink_3_346(volatile       A&);  // { dg-error "" }
-four  sink_3_346(const volatile A&);  // { dg-error "" }
-six   sink_3_346(const          A&&);  // { dg-error "" }
+three sink_3_346(volatile       A&);  // { dg-message "candidates" }
+four  sink_3_346(const volatile A&);  // { dg-message "note" }
+six   sink_3_346(const          A&&);  // { dg-message "note" }
 
 int test3_346()
 {
@@ -477,9 +477,9 @@ int test3_346()
     return 0;
 }
 
-three sink_3_347(volatile       A&);  // { dg-error "" }
-four  sink_3_347(const volatile A&);  // { dg-error "" }
-seven sink_3_347(volatile       A&&);  // { dg-error "" }
+three sink_3_347(volatile       A&);  // { dg-message "candidates" }
+four  sink_3_347(const volatile A&);  // { dg-message "note" }
+seven sink_3_347(volatile       A&&);  // { dg-message "note" }
 
 int test3_347()
 {
@@ -492,9 +492,9 @@ int test3_347()
     return 0;
 }
 
-three sink_3_356(volatile       A&);  // { dg-error "" }
-five  sink_3_356(               A&&);  // { dg-error "" }
-six   sink_3_356(const          A&&);  // { dg-error "" }
+three sink_3_356(volatile       A&);  // { dg-message "candidates" }
+five  sink_3_356(               A&&);  // { dg-message "note" }
+six   sink_3_356(const          A&&);  // { dg-message "note" }
 
 int test3_356()
 {
@@ -508,9 +508,9 @@ int test3_356()
     return 0;
 }
 
-three sink_3_357(volatile       A&);  // { dg-error "" }
-five  sink_3_357(               A&&);  // { dg-error "" }
-seven sink_3_357(volatile       A&&);  // { dg-error "" }
+three sink_3_357(volatile       A&);  // { dg-message "candidates" }
+five  sink_3_357(               A&&);  // { dg-message "note" }
+seven sink_3_357(volatile       A&&);  // { dg-message "note" }
 
 int test3_357()
 {
@@ -525,9 +525,9 @@ int test3_357()
     return 0;
 }
 
-three sink_3_367(volatile       A&);  // { dg-error "" }
-six   sink_3_367(const          A&&);  // { dg-error "" }
-seven sink_3_367(volatile       A&&);  // { dg-error "" }
+three sink_3_367(volatile       A&);  // { dg-message "candidates" }
+six   sink_3_367(const          A&&);  // { dg-message "note" }
+seven sink_3_367(volatile       A&&);  // { dg-message "note" }
 
 int test3_367()
 {
@@ -541,9 +541,9 @@ int test3_367()
     return 0;
 }
 
-four  sink_3_456(const volatile A&);  // { dg-error "" }
-five  sink_3_456(               A&&);  // { dg-error "" }
-six   sink_3_456(const          A&&);  // { dg-error "" }
+four  sink_3_456(const volatile A&);  // { dg-message "candidates" }
+five  sink_3_456(               A&&);  // { dg-message "note" }
+six   sink_3_456(const          A&&);  // { dg-message "note" }
 
 int test3_456()
 {
@@ -556,9 +556,9 @@ int test3_456()
     return 0;
 }
 
-four  sink_3_457(const volatile A&);  // { dg-error "" }
-five  sink_3_457(               A&&);  // { dg-error "" }
-seven sink_3_457(volatile       A&&);  // { dg-error "" }
+four  sink_3_457(const volatile A&);  // { dg-message "candidates" }
+five  sink_3_457(               A&&);  // { dg-message "note" }
+seven sink_3_457(volatile       A&&);  // { dg-message "note" }
 
 int test3_457()
 {
@@ -571,9 +571,9 @@ int test3_457()
     return 0;
 }
 
-four  sink_3_467(const volatile A&);  // { dg-error "" }
-six   sink_3_467(const          A&&);  // { dg-error "" }
-seven sink_3_467(volatile       A&&);  // { dg-error "" }
+four  sink_3_467(const volatile A&);  // { dg-message "candidates" }
+six   sink_3_467(const          A&&);  // { dg-message "note" }
+seven sink_3_467(volatile       A&&);  // { dg-message "note" }
 
 int test3_467()
 {
@@ -586,9 +586,9 @@ int test3_467()
     return 0;
 }
 
-five  sink_3_567(               A&&);  // { dg-error "" }
-six   sink_3_567(const          A&&);  // { dg-error "" }
-seven sink_3_567(volatile       A&&);  // { dg-error "" }
+five  sink_3_567(               A&&);  // { dg-message "candidates" }
+six   sink_3_567(const          A&&);  // { dg-message "note" }
+seven sink_3_567(volatile       A&&);  // { dg-message "note" }
 
 int test3_567()
 {
@@ -601,9 +601,9 @@ int test3_567()
     return 0;
 }
 
-six   sink_3_678(const          A&&);  // { dg-error "" }
-seven sink_3_678(volatile       A&&);  // { dg-error "" }
-eight sink_3_678(const volatile A&&);  // { dg-error "" }
+six   sink_3_678(const          A&&);  // { dg-message "candidates" }
+seven sink_3_678(volatile       A&&);  // { dg-message "note" }
+eight sink_3_678(const volatile A&&);  // { dg-message "note" }
 
 int test3_678()
 {
index 302ab8eedcc756abf1d10f2a233908c922a6c6f6..b88e3f7706175de0a3339e4eb6076bd443ca1b24 100644 (file)
@@ -30,10 +30,10 @@ const volatile A cv_source();
 
 // 4 at a time
 
-one   sink_4_1234(               A&);  // { dg-error "" }
-two   sink_4_1234(const          A&);  // { dg-error "" }
-three sink_4_1234(volatile       A&);  // { dg-error "" }
-four  sink_4_1234(const volatile A&);  // { dg-error "" }
+one   sink_4_1234(               A&);  // { dg-message "candidates" }
+two   sink_4_1234(const          A&);  // { dg-message "note" }
+three sink_4_1234(volatile       A&);  // { dg-message "note" }
+four  sink_4_1234(const volatile A&);  // { dg-message "note" }
 
 int test4_1234()
 {
@@ -46,10 +46,10 @@ int test4_1234()
     return 0;
 }
 
-one   sink_4_1235(               A&);  // { dg-error "" }
-two   sink_4_1235(const          A&);  // { dg-error "" }
-three sink_4_1235(volatile       A&);  // { dg-error "" }
-five  sink_4_1235(               A&&);  // { dg-error "" }
+one   sink_4_1235(               A&);  // { dg-message "candidates" }
+two   sink_4_1235(const          A&);  // { dg-message "note" }
+three sink_4_1235(volatile       A&);  // { dg-message "note" }
+five  sink_4_1235(               A&&);  // { dg-message "note" }
 
 int test4_1235()
 {
@@ -63,10 +63,10 @@ int test4_1235()
     return 0;
 }
 
-one   sink_4_1236(               A&);  // { dg-error "" }
-two   sink_4_1236(const          A&);  // { dg-error "" }
-three sink_4_1236(volatile       A&);  // { dg-error "" }
-six   sink_4_1236(const          A&&);  // { dg-error "" }
+one   sink_4_1236(               A&);  // { dg-message "candidates" }
+two   sink_4_1236(const          A&);  // { dg-message "note" }
+three sink_4_1236(volatile       A&);  // { dg-message "note" }
+six   sink_4_1236(const          A&&);  // { dg-message "note" }
 
 int test4_1236()
 {
@@ -80,10 +80,10 @@ int test4_1236()
     return 0;
 }
 
-one   sink_4_1237(               A&);  // { dg-error "" }
-two   sink_4_1237(const          A&);  // { dg-error "" }
-three sink_4_1237(volatile       A&);  // { dg-error "" }
-seven sink_4_1237(volatile       A&&);  // { dg-error "" }
+one   sink_4_1237(               A&);  // { dg-message "candidates" }
+two   sink_4_1237(const          A&);  // { dg-message "note" }
+three sink_4_1237(volatile       A&);  // { dg-message "note" }
+seven sink_4_1237(volatile       A&&);  // { dg-message "note" }
 
 int test4_1237()
 {
@@ -96,10 +96,10 @@ int test4_1237()
     return 0;
 }
 
-one   sink_4_1245(               A&);  // { dg-error "" }
-two   sink_4_1245(const          A&);  // { dg-error "" }
-four  sink_4_1245(const volatile A&);  // { dg-error "" }
-five  sink_4_1245(               A&&);  // { dg-error "" }
+one   sink_4_1245(               A&);  // { dg-message "candidates" }
+two   sink_4_1245(const          A&);  // { dg-message "note" }
+four  sink_4_1245(const volatile A&);  // { dg-message "note" }
+five  sink_4_1245(               A&&);  // { dg-message "note" }
 
 int test4_1245()
 {
@@ -112,10 +112,10 @@ int test4_1245()
     return 0;
 }
 
-one   sink_4_1246(               A&);  // { dg-error "" }
-two   sink_4_1246(const          A&);  // { dg-error "" }
-four  sink_4_1246(const volatile A&);  // { dg-error "" }
-six   sink_4_1246(const          A&&);  // { dg-error "" }
+one   sink_4_1246(               A&);  // { dg-message "candidates" }
+two   sink_4_1246(const          A&);  // { dg-message "note" }
+four  sink_4_1246(const volatile A&);  // { dg-message "note" }
+six   sink_4_1246(const          A&&);  // { dg-message "note" }
 
 int test4_1246()
 {
@@ -128,10 +128,10 @@ int test4_1246()
     return 0;
 }
 
-one   sink_4_1247(               A&);  // { dg-error "" }
-two   sink_4_1247(const          A&);  // { dg-error "" }
-four  sink_4_1247(const volatile A&);  // { dg-error "" }
-seven sink_4_1247(volatile       A&&);  // { dg-error "" }
+one   sink_4_1247(               A&);  // { dg-message "candidates" }
+two   sink_4_1247(const          A&);  // { dg-message "note" }
+four  sink_4_1247(const volatile A&);  // { dg-message "note" }
+seven sink_4_1247(volatile       A&&);  // { dg-message "note" }
 
 int test4_1247()
 {
@@ -143,10 +143,10 @@ int test4_1247()
     return 0;
 }
 
-one   sink_4_1256(               A&);  // { dg-error "" }
-two   sink_4_1256(const          A&);  // { dg-error "" }
-five  sink_4_1256(               A&&);  // { dg-error "" }
-six   sink_4_1256(const          A&&);  // { dg-error "" }
+one   sink_4_1256(               A&);  // { dg-message "candidates" }
+two   sink_4_1256(const          A&);  // { dg-message "note" }
+five  sink_4_1256(               A&&);  // { dg-message "note" }
+six   sink_4_1256(const          A&&);  // { dg-message "note" }
 
 int test4_1256()
 {
@@ -161,10 +161,10 @@ int test4_1256()
     return 0;
 }
 
-one   sink_4_1257(               A&);  // { dg-error "" }
-two   sink_4_1257(const          A&);  // { dg-error "" }
-five  sink_4_1257(               A&&);  // { dg-error "" }
-seven sink_4_1257(volatile       A&&);  // { dg-error "" }
+one   sink_4_1257(               A&);  // { dg-message "candidates" }
+two   sink_4_1257(const          A&);  // { dg-message "note" }
+five  sink_4_1257(               A&&);  // { dg-message "note" }
+seven sink_4_1257(volatile       A&&);  // { dg-message "note" }
 
 int test4_1257()
 {
@@ -177,10 +177,10 @@ int test4_1257()
     return 0;
 }
 
-one   sink_4_1267(               A&);  // { dg-error "" }
-two   sink_4_1267(const          A&);  // { dg-error "" }
-six   sink_4_1267(const          A&&);  // { dg-error "" }
-seven sink_4_1267(volatile       A&&);  // { dg-error "" }
+one   sink_4_1267(               A&);  // { dg-message "candidates" }
+two   sink_4_1267(const          A&);  // { dg-message "note" }
+six   sink_4_1267(const          A&&);  // { dg-message "note" }
+seven sink_4_1267(volatile       A&&);  // { dg-message "note" }
 
 int test4_1267()
 {
@@ -194,10 +194,10 @@ int test4_1267()
     return 0;
 }
 
-one   sink_4_1345(               A&);  // { dg-error "" }
-three sink_4_1345(volatile       A&);  // { dg-error "" }
-four  sink_4_1345(const volatile A&);  // { dg-error "" }
-five  sink_4_1345(               A&&);  // { dg-error "" }
+one   sink_4_1345(               A&);  // { dg-message "candidates" }
+three sink_4_1345(volatile       A&);  // { dg-message "note" }
+four  sink_4_1345(const volatile A&);  // { dg-message "note" }
+five  sink_4_1345(               A&&);  // { dg-message "note" }
 
 int test4_1345()
 {
@@ -211,10 +211,10 @@ int test4_1345()
     return 0;
 }
 
-one   sink_4_1346(               A&);  // { dg-error "" }
-three sink_4_1346(volatile       A&);  // { dg-error "" }
-four  sink_4_1346(const volatile A&);  // { dg-error "" }
-six   sink_4_1346(const          A&&);  // { dg-error "" }
+one   sink_4_1346(               A&);  // { dg-message "candidates" }
+three sink_4_1346(volatile       A&);  // { dg-message "note" }
+four  sink_4_1346(const volatile A&);  // { dg-message "note" }
+six   sink_4_1346(const          A&&);  // { dg-message "note" }
 
 int test4_1346()
 {
@@ -227,10 +227,10 @@ int test4_1346()
     return 0;
 }
 
-one   sink_4_1347(               A&);  // { dg-error "" }
-three sink_4_1347(volatile       A&);  // { dg-error "" }
-four  sink_4_1347(const volatile A&);  // { dg-error "" }
-seven sink_4_1347(volatile       A&&);  // { dg-error "" }
+one   sink_4_1347(               A&);  // { dg-message "candidates" }
+three sink_4_1347(volatile       A&);  // { dg-message "note" }
+four  sink_4_1347(const volatile A&);  // { dg-message "note" }
+seven sink_4_1347(volatile       A&&);  // { dg-message "note" }
 
 int test4_1347()
 {
@@ -243,10 +243,10 @@ int test4_1347()
     return 0;
 }
 
-one   sink_4_1356(               A&);  // { dg-error "" }
-three sink_4_1356(volatile       A&);  // { dg-error "" }
-five  sink_4_1356(               A&&);  // { dg-error "" }
-six   sink_4_1356(const          A&&);  // { dg-error "" }
+one   sink_4_1356(               A&);  // { dg-message "candidates" }
+three sink_4_1356(volatile       A&);  // { dg-message "note" }
+five  sink_4_1356(               A&&);  // { dg-message "note" }
+six   sink_4_1356(const          A&&);  // { dg-message "note" }
 
 int test4_1356()
 {
@@ -260,10 +260,10 @@ int test4_1356()
     return 0;
 }
 
-one   sink_4_1357(               A&);  // { dg-error "" }
-three sink_4_1357(volatile       A&);  // { dg-error "" }
-five  sink_4_1357(               A&&);  // { dg-error "" }
-seven sink_4_1357(volatile       A&&);  // { dg-error "" }
+one   sink_4_1357(               A&);  // { dg-message "candidates" }
+three sink_4_1357(volatile       A&);  // { dg-message "note" }
+five  sink_4_1357(               A&&);  // { dg-message "note" }
+seven sink_4_1357(volatile       A&&);  // { dg-message "note" }
 
 int test4_1357()
 {
@@ -278,10 +278,10 @@ int test4_1357()
     return 0;
 }
 
-one   sink_4_1367(               A&);  // { dg-error "" }
-three sink_4_1367(volatile       A&);  // { dg-error "" }
-six   sink_4_1367(const          A&&);  // { dg-error "" }
-seven sink_4_1367(volatile       A&&);  // { dg-error "" }
+one   sink_4_1367(               A&);  // { dg-message "candidates" }
+three sink_4_1367(volatile       A&);  // { dg-message "note" }
+six   sink_4_1367(const          A&&);  // { dg-message "note" }
+seven sink_4_1367(volatile       A&&);  // { dg-message "note" }
 
 int test4_1367()
 {
@@ -295,10 +295,10 @@ int test4_1367()
     return 0;
 }
 
-one   sink_4_1456(               A&);  // { dg-error "" }
-four  sink_4_1456(const volatile A&);  // { dg-error "" }
-five  sink_4_1456(               A&&);  // { dg-error "" }
-six   sink_4_1456(const          A&&);  // { dg-error "" }
+one   sink_4_1456(               A&);  // { dg-message "candidates" }
+four  sink_4_1456(const volatile A&);  // { dg-message "note" }
+five  sink_4_1456(               A&&);  // { dg-message "note" }
+six   sink_4_1456(const          A&&);  // { dg-message "note" }
 
 int test4_1456()
 {
@@ -311,10 +311,10 @@ int test4_1456()
     return 0;
 }
 
-one   sink_4_1457(               A&);  // { dg-error "" }
-four  sink_4_1457(const volatile A&);  // { dg-error "" }
-five  sink_4_1457(               A&&);  // { dg-error "" }
-seven sink_4_1457(volatile       A&&);  // { dg-error "" }
+one   sink_4_1457(               A&);  // { dg-message "candidates" }
+four  sink_4_1457(const volatile A&);  // { dg-message "note" }
+five  sink_4_1457(               A&&);  // { dg-message "note" }
+seven sink_4_1457(volatile       A&&);  // { dg-message "note" }
 
 int test4_1457()
 {
@@ -327,10 +327,10 @@ int test4_1457()
     return 0;
 }
 
-one   sink_4_1467(               A&);  // { dg-error "" }
-four  sink_4_1467(const volatile A&);  // { dg-error "" }
-six   sink_4_1467(const          A&&);  // { dg-error "" }
-seven sink_4_1467(volatile       A&&);  // { dg-error "" }
+one   sink_4_1467(               A&);  // { dg-message "candidates" }
+four  sink_4_1467(const volatile A&);  // { dg-message "note" }
+six   sink_4_1467(const          A&&);  // { dg-message "note" }
+seven sink_4_1467(volatile       A&&);  // { dg-message "note" }
 
 int test4_1467()
 {
@@ -343,10 +343,10 @@ int test4_1467()
     return 0;
 }
 
-one   sink_4_1567(               A&);  // { dg-error "" }
-five  sink_4_1567(               A&&);  // { dg-error "" }
-six   sink_4_1567(const          A&&);  // { dg-error "" }
-seven sink_4_1567(volatile       A&&);  // { dg-error "" }
+one   sink_4_1567(               A&);  // { dg-message "candidates" }
+five  sink_4_1567(               A&&);  // { dg-message "note" }
+six   sink_4_1567(const          A&&);  // { dg-message "note" }
+seven sink_4_1567(volatile       A&&);  // { dg-message "note" }
 
 int test4_1567()
 {
@@ -360,9 +360,9 @@ int test4_1567()
 }
 
 one   sink_4_1678(               A&);
-six   sink_4_1678(const          A&&);  // { dg-error "" }
-seven sink_4_1678(volatile       A&&);  // { dg-error "" }
-eight sink_4_1678(const volatile A&&);  // { dg-error "" }
+six   sink_4_1678(const          A&&);  // { dg-message "candidates" }
+seven sink_4_1678(volatile       A&&);  // { dg-message "note" }
+eight sink_4_1678(const volatile A&&);  // { dg-message "note" }
 
 int test4_1678()
 {
@@ -374,10 +374,10 @@ int test4_1678()
     return 0;
 }
 
-two   sink_4_2345(const          A&);  // { dg-error "" }
-three sink_4_2345(volatile       A&);  // { dg-error "" }
-four  sink_4_2345(const volatile A&);  // { dg-error "" }
-five  sink_4_2345(               A&&);  // { dg-error "" }
+two   sink_4_2345(const          A&);  // { dg-message "candidates" }
+three sink_4_2345(volatile       A&);  // { dg-message "note" }
+four  sink_4_2345(const volatile A&);  // { dg-message "note" }
+five  sink_4_2345(               A&&);  // { dg-message "note" }
 
 int test4_2345()
 {
@@ -391,10 +391,10 @@ int test4_2345()
     return 0;
 }
 
-two   sink_4_2346(const          A&);  // { dg-error "" }
-three sink_4_2346(volatile       A&);  // { dg-error "" }
-four  sink_4_2346(const volatile A&);  // { dg-error "" }
-six   sink_4_2346(const          A&&);  // { dg-error "" }
+two   sink_4_2346(const          A&);  // { dg-message "candidates" }
+three sink_4_2346(volatile       A&);  // { dg-message "note" }
+four  sink_4_2346(const volatile A&);  // { dg-message "note" }
+six   sink_4_2346(const          A&&);  // { dg-message "note" }
 
 int test4_2346()
 {
@@ -408,10 +408,10 @@ int test4_2346()
     return 0;
 }
 
-two   sink_4_2347(const          A&);  // { dg-error "" }
-three sink_4_2347(volatile       A&);  // { dg-error "" }
-four  sink_4_2347(const volatile A&);  // { dg-error "" }
-seven sink_4_2347(volatile       A&&);  // { dg-error "" }
+two   sink_4_2347(const          A&);  // { dg-message "candidates" }
+three sink_4_2347(volatile       A&);  // { dg-message "note" }
+four  sink_4_2347(const volatile A&);  // { dg-message "note" }
+seven sink_4_2347(volatile       A&&);  // { dg-message "note" }
 
 int test4_2347()
 {
@@ -424,10 +424,10 @@ int test4_2347()
     return 0;
 }
 
-two   sink_4_2348(const          A&);  // { dg-error "" }
-three sink_4_2348(volatile       A&);  // { dg-error "" }
-four  sink_4_2348(const volatile A&);  // { dg-error "" }
-eight sink_4_2348(const volatile A&&);  // { dg-error "" }
+two   sink_4_2348(const          A&);  // { dg-message "candidates" }
+three sink_4_2348(volatile       A&);  // { dg-message "note" }
+four  sink_4_2348(const volatile A&);  // { dg-message "note" }
+eight sink_4_2348(const volatile A&&);  // { dg-message "note" }
 
 int test4_2348()
 {
@@ -439,10 +439,10 @@ int test4_2348()
     return 0;
 }
 
-two   sink_4_2356(const          A&);  // { dg-error "" }
-three sink_4_2356(volatile       A&);  // { dg-error "" }
-five  sink_4_2356(               A&&);  // { dg-error "" }
-six   sink_4_2356(const          A&&);  // { dg-error "" }
+two   sink_4_2356(const          A&);  // { dg-message "candidates" }
+three sink_4_2356(volatile       A&);  // { dg-message "note" }
+five  sink_4_2356(               A&&);  // { dg-message "note" }
+six   sink_4_2356(const          A&&);  // { dg-message "note" }
 
 int test4_2356()
 {
@@ -457,10 +457,10 @@ int test4_2356()
     return 0;
 }
 
-two   sink_4_2357(const          A&);  // { dg-error "" }
-three sink_4_2357(volatile       A&);  // { dg-error "" }
-five  sink_4_2357(               A&&);  // { dg-error "" }
-seven sink_4_2357(volatile       A&&);  // { dg-error "" }
+two   sink_4_2357(const          A&);  // { dg-message "candidates" }
+three sink_4_2357(volatile       A&);  // { dg-message "note" }
+five  sink_4_2357(               A&&);  // { dg-message "note" }
+seven sink_4_2357(volatile       A&&);  // { dg-message "note" }
 
 int test4_2357()
 {
@@ -474,10 +474,10 @@ int test4_2357()
     return 0;
 }
 
-two   sink_4_2358(const          A&);  // { dg-error "" }
-three sink_4_2358(volatile       A&);  // { dg-error "" }
-five  sink_4_2358(               A&&);  // { dg-error "" }
-eight sink_4_2358(const volatile A&&);  // { dg-error "" }
+two   sink_4_2358(const          A&);  // { dg-message "candidates" }
+three sink_4_2358(volatile       A&);  // { dg-message "note" }
+five  sink_4_2358(               A&&);  // { dg-message "note" }
+eight sink_4_2358(const volatile A&&);  // { dg-message "note" }
 
 int test4_2358()
 {
@@ -489,10 +489,10 @@ int test4_2358()
     return 0;
 }
 
-two   sink_4_2367(const          A&);  // { dg-error "" }
-three sink_4_2367(volatile       A&);  // { dg-error "" }
-six   sink_4_2367(const          A&&);  // { dg-error "" }
-seven sink_4_2367(volatile       A&&);  // { dg-error "" }
+two   sink_4_2367(const          A&);  // { dg-message "candidates" }
+three sink_4_2367(volatile       A&);  // { dg-message "note" }
+six   sink_4_2367(const          A&&);  // { dg-message "note" }
+seven sink_4_2367(volatile       A&&);  // { dg-message "note" }
 
 int test4_2367()
 {
@@ -507,10 +507,10 @@ int test4_2367()
     return 0;
 }
 
-two   sink_4_2368(const          A&);  // { dg-error "" }
-three sink_4_2368(volatile       A&);  // { dg-error "" }
-six   sink_4_2368(const          A&&);  // { dg-error "" }
-eight sink_4_2368(const volatile A&&);  // { dg-error "" }
+two   sink_4_2368(const          A&);  // { dg-message "candidates" }
+three sink_4_2368(volatile       A&);  // { dg-message "note" }
+six   sink_4_2368(const          A&&);  // { dg-message "note" }
+eight sink_4_2368(const volatile A&&);  // { dg-message "note" }
 
 int test4_2368()
 {
@@ -522,10 +522,10 @@ int test4_2368()
     return 0;
 }
 
-two   sink_4_2378(const          A&);  // { dg-error "" }
-three sink_4_2378(volatile       A&);  // { dg-error "" }
-seven sink_4_2378(volatile       A&&);  // { dg-error "" }
-eight sink_4_2378(const volatile A&&);  // { dg-error "" }
+two   sink_4_2378(const          A&);  // { dg-message "candidates" }
+three sink_4_2378(volatile       A&);  // { dg-message "note" }
+seven sink_4_2378(volatile       A&&);  // { dg-message "note" }
+eight sink_4_2378(const volatile A&&);  // { dg-message "note" }
 
 int test4_2378()
 {
@@ -537,10 +537,10 @@ int test4_2378()
     return 0;
 }
 
-two   sink_4_2456(const          A&);  // { dg-error "" }
-four  sink_4_2456(const volatile A&);  // { dg-error "" }
-five  sink_4_2456(               A&&);  // { dg-error "" }
-six   sink_4_2456(const          A&&);  // { dg-error "" }
+two   sink_4_2456(const          A&);  // { dg-message "candidates" }
+four  sink_4_2456(const volatile A&);  // { dg-message "note" }
+five  sink_4_2456(               A&&);  // { dg-message "note" }
+six   sink_4_2456(const          A&&);  // { dg-message "note" }
 
 int test4_2456()
 {
@@ -553,10 +553,10 @@ int test4_2456()
     return 0;
 }
 
-two   sink_4_2457(const          A&);  // { dg-error "" }
-four  sink_4_2457(const volatile A&);  // { dg-error "" }
-five  sink_4_2457(               A&&);  // { dg-error "" }
-seven sink_4_2457(volatile       A&&);  // { dg-error "" }
+two   sink_4_2457(const          A&);  // { dg-message "candidates" }
+four  sink_4_2457(const volatile A&);  // { dg-message "note" }
+five  sink_4_2457(               A&&);  // { dg-message "note" }
+seven sink_4_2457(volatile       A&&);  // { dg-message "note" }
 
 int test4_2457()
 {
@@ -568,10 +568,10 @@ int test4_2457()
     return 0;
 }
 
-two   sink_4_2467(const          A&);  // { dg-error "" }
-four  sink_4_2467(const volatile A&);  // { dg-error "" }
-six   sink_4_2467(const          A&&);  // { dg-error "" }
-seven sink_4_2467(volatile       A&&);  // { dg-error "" }
+two   sink_4_2467(const          A&);  // { dg-message "candidates" }
+four  sink_4_2467(const volatile A&);  // { dg-message "note" }
+six   sink_4_2467(const          A&&);  // { dg-message "note" }
+seven sink_4_2467(volatile       A&&);  // { dg-message "note" }
 
 int test4_2467()
 {
@@ -584,10 +584,10 @@ int test4_2467()
     return 0;
 }
 
-two   sink_4_2567(const          A&);  // { dg-error "" }
-five  sink_4_2567(               A&&);  // { dg-error "" }
-six   sink_4_2567(const          A&&);  // { dg-error "" }
-seven sink_4_2567(volatile       A&&);  // { dg-error "" }
+two   sink_4_2567(const          A&);  // { dg-message "candidates" }
+five  sink_4_2567(               A&&);  // { dg-message "note" }
+six   sink_4_2567(const          A&&);  // { dg-message "note" }
+seven sink_4_2567(volatile       A&&);  // { dg-message "note" }
 
 int test4_2567()
 {
@@ -600,10 +600,10 @@ int test4_2567()
     return 0;
 }
 
-two   sink_4_2678(const          A&);  // { dg-error "" }
-six   sink_4_2678(const          A&&);  // { dg-error "" }
-seven sink_4_2678(volatile       A&&);  // { dg-error "" }
-eight sink_4_2678(const volatile A&&);  // { dg-error "" }
+two   sink_4_2678(const          A&);  // { dg-message "candidates" }
+six   sink_4_2678(const          A&&);  // { dg-message "note" }
+seven sink_4_2678(volatile       A&&);  // { dg-message "note" }
+eight sink_4_2678(const volatile A&&);  // { dg-message "note" }
 
 int test4_2678()
 {
@@ -615,10 +615,10 @@ int test4_2678()
     return 0;
 }
 
-three sink_4_3456(volatile       A&);  // { dg-error "" }
-four  sink_4_3456(const volatile A&);  // { dg-error "" }
-five  sink_4_3456(               A&&);  // { dg-error "" }
-six   sink_4_3456(const          A&&);  // { dg-error "" }
+three sink_4_3456(volatile       A&);  // { dg-message "candidates" }
+four  sink_4_3456(const volatile A&);  // { dg-message "note" }
+five  sink_4_3456(               A&&);  // { dg-message "note" }
+six   sink_4_3456(const          A&&);  // { dg-message "note" }
 
 int test4_3456()
 {
@@ -631,10 +631,10 @@ int test4_3456()
     return 0;
 }
 
-three sink_4_3457(volatile       A&);  // { dg-error "" }
-four  sink_4_3457(const volatile A&);  // { dg-error "" }
-five  sink_4_3457(               A&&);  // { dg-error "" }
-seven sink_4_3457(volatile       A&&);  // { dg-error "" }
+three sink_4_3457(volatile       A&);  // { dg-message "candidates" }
+four  sink_4_3457(const volatile A&);  // { dg-message "note" }
+five  sink_4_3457(               A&&);  // { dg-message "note" }
+seven sink_4_3457(volatile       A&&);  // { dg-message "note" }
 
 int test4_3457()
 {
@@ -647,10 +647,10 @@ int test4_3457()
     return 0;
 }
 
-three sink_4_3467(volatile       A&);  // { dg-error "" }
-four  sink_4_3467(const volatile A&);  // { dg-error "" }
-six   sink_4_3467(const          A&&);  // { dg-error "" }
-seven sink_4_3467(volatile       A&&);  // { dg-error "" }
+three sink_4_3467(volatile       A&);  // { dg-message "candidates" }
+four  sink_4_3467(const volatile A&);  // { dg-message "note" }
+six   sink_4_3467(const          A&&);  // { dg-message "note" }
+seven sink_4_3467(volatile       A&&);  // { dg-message "note" }
 
 int test4_3467()
 {
@@ -663,10 +663,10 @@ int test4_3467()
     return 0;
 }
 
-three sink_4_3567(volatile       A&);  // { dg-error "" }
-five  sink_4_3567(               A&&);  // { dg-error "" }
-six   sink_4_3567(const          A&&);  // { dg-error "" }
-seven sink_4_3567(volatile       A&&);  // { dg-error "" }
+three sink_4_3567(volatile       A&);  // { dg-message "candidates" }
+five  sink_4_3567(               A&&);  // { dg-message "note" }
+six   sink_4_3567(const          A&&);  // { dg-message "note" }
+seven sink_4_3567(volatile       A&&);  // { dg-message "note" }
 
 int test4_3567()
 {
@@ -680,9 +680,9 @@ int test4_3567()
 }
 
 three sink_4_3678(volatile       A&);
-six   sink_4_3678(const          A&&);  // { dg-error "" }
-seven sink_4_3678(volatile       A&&);  // { dg-error "" }
-eight sink_4_3678(const volatile A&&);  // { dg-error "" }
+six   sink_4_3678(const          A&&);  // { dg-message "candidates" }
+seven sink_4_3678(volatile       A&&);  // { dg-message "note" }
+eight sink_4_3678(const volatile A&&);  // { dg-message "note" }
 
 int test4_3678()
 {
@@ -694,10 +694,10 @@ int test4_3678()
     return 0;
 }
 
-four  sink_4_4567(const volatile A&);  // { dg-error "" }
-five  sink_4_4567(               A&&);  // { dg-error "" }
-six   sink_4_4567(const          A&&);  // { dg-error "" }
-seven sink_4_4567(volatile       A&&);  // { dg-error "" }
+four  sink_4_4567(const volatile A&);  // { dg-message "candidates" }
+five  sink_4_4567(               A&&);  // { dg-message "note" }
+six   sink_4_4567(const          A&&);  // { dg-message "note" }
+seven sink_4_4567(volatile       A&&);  // { dg-message "note" }
 
 int test4_4567()
 {
@@ -710,9 +710,9 @@ int test4_4567()
 }
 
 four  sink_4_4678(const volatile A&);
-six   sink_4_4678(const          A&&);  // { dg-error "" }
-seven sink_4_4678(volatile       A&&);  // { dg-error "" }
-eight sink_4_4678(const volatile A&&);  // { dg-error "" }
+six   sink_4_4678(const          A&&);  // { dg-message "candidates" }
+seven sink_4_4678(volatile       A&&);  // { dg-message "note" }
+eight sink_4_4678(const volatile A&&);  // { dg-message "note" }
 
 int test4_4678()
 {
index 715716e45ee0470467480a8dbc88e58124327ac6..14128b2aa36ea03fbd70597cde40b13995f63c90 100644 (file)
@@ -30,11 +30,11 @@ const volatile A cv_source();
 
 // 5 at a time
 
-one   sink_5_12345(               A&);  // { dg-error "" }
-two   sink_5_12345(const          A&);  // { dg-error "" }
-three sink_5_12345(volatile       A&);  // { dg-error "" }
-four  sink_5_12345(const volatile A&);  // { dg-error "" }
-five  sink_5_12345(               A&&);  // { dg-error "" }
+one   sink_5_12345(               A&);  // { dg-message "candidates" }
+two   sink_5_12345(const          A&);  // { dg-message "note" }
+three sink_5_12345(volatile       A&);  // { dg-message "note" }
+four  sink_5_12345(const volatile A&);  // { dg-message "note" }
+five  sink_5_12345(               A&&);  // { dg-message "note" }
 
 int test5_12345()
 {
@@ -47,11 +47,11 @@ int test5_12345()
     return 0;
 }
 
-one   sink_5_12346(               A&);  // { dg-error "" }
-two   sink_5_12346(const          A&);  // { dg-error "" }
-three sink_5_12346(volatile       A&);  // { dg-error "" }
-four  sink_5_12346(const volatile A&);  // { dg-error "" }
-six   sink_5_12346(const          A&&);  // { dg-error "" }
+one   sink_5_12346(               A&);  // { dg-message "candidates" }
+two   sink_5_12346(const          A&);  // { dg-message "note" }
+three sink_5_12346(volatile       A&);  // { dg-message "note" }
+four  sink_5_12346(const volatile A&);  // { dg-message "note" }
+six   sink_5_12346(const          A&&);  // { dg-message "note" }
 
 int test5_12346()
 {
@@ -64,11 +64,11 @@ int test5_12346()
     return 0;
 }
 
-one   sink_5_12347(               A&);  // { dg-error "" }
-two   sink_5_12347(const          A&);  // { dg-error "" }
-three sink_5_12347(volatile       A&);  // { dg-error "" }
-four  sink_5_12347(const volatile A&);  // { dg-error "" }
-seven sink_5_12347(volatile       A&&);  // { dg-error "" }
+one   sink_5_12347(               A&);  // { dg-message "candidates" }
+two   sink_5_12347(const          A&);  // { dg-message "note" }
+three sink_5_12347(volatile       A&);  // { dg-message "note" }
+four  sink_5_12347(const volatile A&);  // { dg-message "note" }
+seven sink_5_12347(volatile       A&&);  // { dg-message "note" }
 
 int test5_12347()
 {
@@ -80,11 +80,11 @@ int test5_12347()
     return 0;
 }
 
-one   sink_5_12356(               A&);  // { dg-error "" }
-two   sink_5_12356(const          A&);  // { dg-error "" }
-three sink_5_12356(volatile       A&);  // { dg-error "" }
-five  sink_5_12356(               A&&);  // { dg-error "" }
-six   sink_5_12356(const          A&&);  // { dg-error "" }
+one   sink_5_12356(               A&);  // { dg-message "candidates" }
+two   sink_5_12356(const          A&);  // { dg-message "note" }
+three sink_5_12356(volatile       A&);  // { dg-message "note" }
+five  sink_5_12356(               A&&);  // { dg-message "note" }
+six   sink_5_12356(const          A&&);  // { dg-message "note" }
 
 int test5_12356()
 {
@@ -98,11 +98,11 @@ int test5_12356()
     return 0;
 }
 
-one   sink_5_12357(               A&);  // { dg-error "" }
-two   sink_5_12357(const          A&);  // { dg-error "" }
-three sink_5_12357(volatile       A&);  // { dg-error "" }
-five  sink_5_12357(               A&&);  // { dg-error "" }
-seven sink_5_12357(volatile       A&&);  // { dg-error "" }
+one   sink_5_12357(               A&);  // { dg-message "candidates" }
+two   sink_5_12357(const          A&);  // { dg-message "note" }
+three sink_5_12357(volatile       A&);  // { dg-message "note" }
+five  sink_5_12357(               A&&);  // { dg-message "note" }
+seven sink_5_12357(volatile       A&&);  // { dg-message "note" }
 
 int test5_12357()
 {
@@ -115,11 +115,11 @@ int test5_12357()
     return 0;
 }
 
-one   sink_5_12367(               A&);  // { dg-error "" }
-two   sink_5_12367(const          A&);  // { dg-error "" }
-three sink_5_12367(volatile       A&);  // { dg-error "" }
-six   sink_5_12367(const          A&&);  // { dg-error "" }
-seven sink_5_12367(volatile       A&&);  // { dg-error "" }
+one   sink_5_12367(               A&);  // { dg-message "candidates" }
+two   sink_5_12367(const          A&);  // { dg-message "note" }
+three sink_5_12367(volatile       A&);  // { dg-message "note" }
+six   sink_5_12367(const          A&&);  // { dg-message "note" }
+seven sink_5_12367(volatile       A&&);  // { dg-message "note" }
 
 int test5_12367()
 {
@@ -133,11 +133,11 @@ int test5_12367()
     return 0;
 }
 
-one   sink_5_12456(               A&);  // { dg-error "" }
-two   sink_5_12456(const          A&);  // { dg-error "" }
-four  sink_5_12456(const volatile A&);  // { dg-error "" }
-five  sink_5_12456(               A&&);  // { dg-error "" }
-six   sink_5_12456(const          A&&);  // { dg-error "" }
+one   sink_5_12456(               A&);  // { dg-message "candidates" }
+two   sink_5_12456(const          A&);  // { dg-message "note" }
+four  sink_5_12456(const volatile A&);  // { dg-message "note" }
+five  sink_5_12456(               A&&);  // { dg-message "note" }
+six   sink_5_12456(const          A&&);  // { dg-message "note" }
 
 int test5_12456()
 {
@@ -150,11 +150,11 @@ int test5_12456()
     return 0;
 }
 
-one   sink_5_12457(               A&);  // { dg-error "" }
-two   sink_5_12457(const          A&);  // { dg-error "" }
-four  sink_5_12457(const volatile A&);  // { dg-error "" }
-five  sink_5_12457(               A&&);  // { dg-error "" }
-seven sink_5_12457(volatile       A&&);  // { dg-error "" }
+one   sink_5_12457(               A&);  // { dg-message "candidates" }
+two   sink_5_12457(const          A&);  // { dg-message "note" }
+four  sink_5_12457(const volatile A&);  // { dg-message "note" }
+five  sink_5_12457(               A&&);  // { dg-message "note" }
+seven sink_5_12457(volatile       A&&);  // { dg-message "note" }
 
 int test5_12457()
 {
@@ -166,11 +166,11 @@ int test5_12457()
     return 0;
 }
 
-one   sink_5_12467(               A&);  // { dg-error "" }
-two   sink_5_12467(const          A&);  // { dg-error "" }
-four  sink_5_12467(const volatile A&);  // { dg-error "" }
-six   sink_5_12467(const          A&&);  // { dg-error "" }
-seven sink_5_12467(volatile       A&&);  // { dg-error "" }
+one   sink_5_12467(               A&);  // { dg-message "candidates" }
+two   sink_5_12467(const          A&);  // { dg-message "note" }
+four  sink_5_12467(const volatile A&);  // { dg-message "note" }
+six   sink_5_12467(const          A&&);  // { dg-message "note" }
+seven sink_5_12467(volatile       A&&);  // { dg-message "note" }
 
 int test5_12467()
 {
@@ -183,11 +183,11 @@ int test5_12467()
     return 0;
 }
 
-one   sink_5_12567(               A&);  // { dg-error "" }
-two   sink_5_12567(const          A&);  // { dg-error "" }
-five  sink_5_12567(               A&&);  // { dg-error "" }
-six   sink_5_12567(const          A&&);  // { dg-error "" }
-seven sink_5_12567(volatile       A&&);  // { dg-error "" }
+one   sink_5_12567(               A&);  // { dg-message "candidates" }
+two   sink_5_12567(const          A&);  // { dg-message "note" }
+five  sink_5_12567(               A&&);  // { dg-message "note" }
+six   sink_5_12567(const          A&&);  // { dg-message "note" }
+seven sink_5_12567(volatile       A&&);  // { dg-message "note" }
 
 int test5_12567()
 {
@@ -201,10 +201,10 @@ int test5_12567()
 }
 
 one   sink_5_12678(               A&);
-two   sink_5_12678(const          A&);  // { dg-error "" }
-six   sink_5_12678(const          A&&);  // { dg-error "" }
-seven sink_5_12678(volatile       A&&);  // { dg-error "" }
-eight sink_5_12678(const volatile A&&);  // { dg-error "" }
+two   sink_5_12678(const          A&);  // { dg-message "candidates" }
+six   sink_5_12678(const          A&&);  // { dg-message "note" }
+seven sink_5_12678(volatile       A&&);  // { dg-message "note" }
+eight sink_5_12678(const volatile A&&);  // { dg-message "note" }
 
 int test5_12678()
 {
@@ -216,11 +216,11 @@ int test5_12678()
     return 0;
 }
 
-one   sink_5_13456(               A&);  // { dg-error "" }
-three sink_5_13456(volatile       A&);  // { dg-error "" }
-four  sink_5_13456(const volatile A&);  // { dg-error "" }
-five  sink_5_13456(               A&&);  // { dg-error "" }
-six   sink_5_13456(const          A&&);  // { dg-error "" }
+one   sink_5_13456(               A&);  // { dg-message "candidates" }
+three sink_5_13456(volatile       A&);  // { dg-message "note" }
+four  sink_5_13456(const volatile A&);  // { dg-message "note" }
+five  sink_5_13456(               A&&);  // { dg-message "note" }
+six   sink_5_13456(const          A&&);  // { dg-message "note" }
 
 int test5_13456()
 {
@@ -233,11 +233,11 @@ int test5_13456()
     return 0;
 }
 
-one   sink_5_13457(               A&);  // { dg-error "" }
-three sink_5_13457(volatile       A&);  // { dg-error "" }
-four  sink_5_13457(const volatile A&);  // { dg-error "" }
-five  sink_5_13457(               A&&);  // { dg-error "" }
-seven sink_5_13457(volatile       A&&);  // { dg-error "" }
+one   sink_5_13457(               A&);  // { dg-message "candidates" }
+three sink_5_13457(volatile       A&);  // { dg-message "note" }
+four  sink_5_13457(const volatile A&);  // { dg-message "note" }
+five  sink_5_13457(               A&&);  // { dg-message "note" }
+seven sink_5_13457(volatile       A&&);  // { dg-message "note" }
 
 int test5_13457()
 {
@@ -250,11 +250,11 @@ int test5_13457()
     return 0;
 }
 
-one   sink_5_13467(               A&);  // { dg-error "" }
-three sink_5_13467(volatile       A&);  // { dg-error "" }
-four  sink_5_13467(const volatile A&);  // { dg-error "" }
-six   sink_5_13467(const          A&&);  // { dg-error "" }
-seven sink_5_13467(volatile       A&&);  // { dg-error "" }
+one   sink_5_13467(               A&);  // { dg-message "candidates" }
+three sink_5_13467(volatile       A&);  // { dg-message "note" }
+four  sink_5_13467(const volatile A&);  // { dg-message "note" }
+six   sink_5_13467(const          A&&);  // { dg-message "note" }
+seven sink_5_13467(volatile       A&&);  // { dg-message "note" }
 
 int test5_13467()
 {
@@ -267,11 +267,11 @@ int test5_13467()
     return 0;
 }
 
-one   sink_5_13567(               A&);  // { dg-error "" }
-three sink_5_13567(volatile       A&);  // { dg-error "" }
-five  sink_5_13567(               A&&);  // { dg-error "" }
-six   sink_5_13567(const          A&&);  // { dg-error "" }
-seven sink_5_13567(volatile       A&&);  // { dg-error "" }
+one   sink_5_13567(               A&);  // { dg-message "candidates" }
+three sink_5_13567(volatile       A&);  // { dg-message "note" }
+five  sink_5_13567(               A&&);  // { dg-message "note" }
+six   sink_5_13567(const          A&&);  // { dg-message "note" }
+seven sink_5_13567(volatile       A&&);  // { dg-message "note" }
 
 int test5_13567()
 {
@@ -286,9 +286,9 @@ int test5_13567()
 
 one   sink_5_13678(               A&);
 three sink_5_13678(volatile       A&);
-six   sink_5_13678(const          A&&);  // { dg-error "" }
-seven sink_5_13678(volatile       A&&);  // { dg-error "" }
-eight sink_5_13678(const volatile A&&);  // { dg-error "" }
+six   sink_5_13678(const          A&&);  // { dg-message "candidates" }
+seven sink_5_13678(volatile       A&&);  // { dg-message "note" }
+eight sink_5_13678(const volatile A&&);  // { dg-message "note" }
 
 int test5_13678()
 {
@@ -300,11 +300,11 @@ int test5_13678()
     return 0;
 }
 
-one   sink_5_14567(               A&);  // { dg-error "" }
-four  sink_5_14567(const volatile A&);  // { dg-error "" }
-five  sink_5_14567(               A&&);  // { dg-error "" }
-six   sink_5_14567(const          A&&);  // { dg-error "" }
-seven sink_5_14567(volatile       A&&);  // { dg-error "" }
+one   sink_5_14567(               A&);  // { dg-message "candidates" }
+four  sink_5_14567(const volatile A&);  // { dg-message "note" }
+five  sink_5_14567(               A&&);  // { dg-message "note" }
+six   sink_5_14567(const          A&&);  // { dg-message "note" }
+seven sink_5_14567(volatile       A&&);  // { dg-message "note" }
 
 int test5_14567()
 {
@@ -318,9 +318,9 @@ int test5_14567()
 
 one   sink_5_14678(               A&);
 four  sink_5_14678(const volatile A&);
-six   sink_5_14678(const          A&&);  // { dg-error "" }
-seven sink_5_14678(volatile       A&&);  // { dg-error "" }
-eight sink_5_14678(const volatile A&&);  // { dg-error "" }
+six   sink_5_14678(const          A&&);  // { dg-message "candidates" }
+seven sink_5_14678(volatile       A&&);  // { dg-message "note" }
+eight sink_5_14678(const volatile A&&);  // { dg-message "note" }
 
 int test5_14678()
 {
@@ -332,11 +332,11 @@ int test5_14678()
     return 0;
 }
 
-two   sink_5_23456(const          A&);  // { dg-error "" }
-three sink_5_23456(volatile       A&);  // { dg-error "" }
-four  sink_5_23456(const volatile A&);  // { dg-error "" }
-five  sink_5_23456(               A&&);  // { dg-error "" }
-six   sink_5_23456(const          A&&);  // { dg-error "" }
+two   sink_5_23456(const          A&);  // { dg-message "candidates" }
+three sink_5_23456(volatile       A&);  // { dg-message "note" }
+four  sink_5_23456(const volatile A&);  // { dg-message "note" }
+five  sink_5_23456(               A&&);  // { dg-message "note" }
+six   sink_5_23456(const          A&&);  // { dg-message "note" }
 
 int test5_23456()
 {
@@ -350,11 +350,11 @@ int test5_23456()
     return 0;
 }
 
-two   sink_5_23457(const          A&);  // { dg-error "" }
-three sink_5_23457(volatile       A&);  // { dg-error "" }
-four  sink_5_23457(const volatile A&);  // { dg-error "" }
-five  sink_5_23457(               A&&);  // { dg-error "" }
-seven sink_5_23457(volatile       A&&);  // { dg-error "" }
+two   sink_5_23457(const          A&);  // { dg-message "candidates" }
+three sink_5_23457(volatile       A&);  // { dg-message "note" }
+four  sink_5_23457(const volatile A&);  // { dg-message "note" }
+five  sink_5_23457(               A&&);  // { dg-message "note" }
+seven sink_5_23457(volatile       A&&);  // { dg-message "note" }
 
 int test5_23457()
 {
@@ -367,11 +367,11 @@ int test5_23457()
     return 0;
 }
 
-two   sink_5_23458(const          A&);  // { dg-error "" }
-three sink_5_23458(volatile       A&);  // { dg-error "" }
-four  sink_5_23458(const volatile A&);  // { dg-error "" }
-five  sink_5_23458(               A&&);  // { dg-error "" }
-eight sink_5_23458(const volatile A&&);  // { dg-error "" }
+two   sink_5_23458(const          A&);  // { dg-message "candidates" }
+three sink_5_23458(volatile       A&);  // { dg-message "note" }
+four  sink_5_23458(const volatile A&);  // { dg-message "note" }
+five  sink_5_23458(               A&&);  // { dg-message "note" }
+eight sink_5_23458(const volatile A&&);  // { dg-message "note" }
 
 int test5_23458()
 {
@@ -383,11 +383,11 @@ int test5_23458()
     return 0;
 }
 
-two   sink_5_23467(const          A&);  // { dg-error "" }
-three sink_5_23467(volatile       A&);  // { dg-error "" }
-four  sink_5_23467(const volatile A&);  // { dg-error "" }
-six   sink_5_23467(const          A&&);  // { dg-error "" }
-seven sink_5_23467(volatile       A&&);  // { dg-error "" }
+two   sink_5_23467(const          A&);  // { dg-message "candidates" }
+three sink_5_23467(volatile       A&);  // { dg-message "note" }
+four  sink_5_23467(const volatile A&);  // { dg-message "note" }
+six   sink_5_23467(const          A&&);  // { dg-message "note" }
+seven sink_5_23467(volatile       A&&);  // { dg-message "note" }
 
 int test5_23467()
 {
@@ -401,11 +401,11 @@ int test5_23467()
     return 0;
 }
 
-two   sink_5_23468(const          A&);  // { dg-error "" }
-three sink_5_23468(volatile       A&);  // { dg-error "" }
-four  sink_5_23468(const volatile A&);  // { dg-error "" }
-six   sink_5_23468(const          A&&);  // { dg-error "" }
-eight sink_5_23468(const volatile A&&);  // { dg-error "" }
+two   sink_5_23468(const          A&);  // { dg-message "candidates" }
+three sink_5_23468(volatile       A&);  // { dg-message "note" }
+four  sink_5_23468(const volatile A&);  // { dg-message "note" }
+six   sink_5_23468(const          A&&);  // { dg-message "note" }
+eight sink_5_23468(const volatile A&&);  // { dg-message "note" }
 
 int test5_23468()
 {
@@ -417,11 +417,11 @@ int test5_23468()
    return 0;
 }
 
-two   sink_5_23478(const          A&);  // { dg-error "" }
-three sink_5_23478(volatile       A&);  // { dg-error "" }
-four  sink_5_23478(const volatile A&);  // { dg-error "" }
-seven sink_5_23478(volatile       A&&);  // { dg-error "" }
-eight sink_5_23478(const volatile A&&);  // { dg-error "" }
+two   sink_5_23478(const          A&);  // { dg-message "candidates" }
+three sink_5_23478(volatile       A&);  // { dg-message "note" }
+four  sink_5_23478(const volatile A&);  // { dg-message "note" }
+seven sink_5_23478(volatile       A&&);  // { dg-message "note" }
+eight sink_5_23478(const volatile A&&);  // { dg-message "note" }
 
 int test5_23478()
 {
@@ -433,11 +433,11 @@ int test5_23478()
     return 0;
 }
 
-two   sink_5_23567(const          A&);  // { dg-error "" }
-three sink_5_23567(volatile       A&);  // { dg-error "" }
-five  sink_5_23567(               A&&);  // { dg-error "" }
-six   sink_5_23567(const          A&&);  // { dg-error "" }
-seven sink_5_23567(volatile       A&&);  // { dg-error "" }
+two   sink_5_23567(const          A&);  // { dg-message "candidates" }
+three sink_5_23567(volatile       A&);  // { dg-message "note" }
+five  sink_5_23567(               A&&);  // { dg-message "note" }
+six   sink_5_23567(const          A&&);  // { dg-message "note" }
+seven sink_5_23567(volatile       A&&);  // { dg-message "note" }
 
 int test5_23567()
 {
@@ -451,11 +451,11 @@ int test5_23567()
     return 0;
 }
 
-two   sink_5_23568(const          A&);  // { dg-error "" }
-three sink_5_23568(volatile       A&);  // { dg-error "" }
-five  sink_5_23568(               A&&);  // { dg-error "" }
-six   sink_5_23568(const          A&&);  // { dg-error "" }
-eight sink_5_23568(const volatile A&&);  // { dg-error "" }
+two   sink_5_23568(const          A&);  // { dg-message "candidates" }
+three sink_5_23568(volatile       A&);  // { dg-message "note" }
+five  sink_5_23568(               A&&);  // { dg-message "note" }
+six   sink_5_23568(const          A&&);  // { dg-message "note" }
+eight sink_5_23568(const volatile A&&);  // { dg-message "note" }
 
 int test5_23568()
 {
@@ -467,11 +467,11 @@ int test5_23568()
     return 0;
 }
 
-two   sink_5_23578(const          A&);  // { dg-error "" }
-three sink_5_23578(volatile       A&);  // { dg-error "" }
-five  sink_5_23578(               A&&);  // { dg-error "" }
-seven sink_5_23578(volatile       A&&);  // { dg-error "" }
-eight sink_5_23578(const volatile A&&);  // { dg-error "" }
+two   sink_5_23578(const          A&);  // { dg-message "candidates" }
+three sink_5_23578(volatile       A&);  // { dg-message "note" }
+five  sink_5_23578(               A&&);  // { dg-message "note" }
+seven sink_5_23578(volatile       A&&);  // { dg-message "note" }
+eight sink_5_23578(const volatile A&&);  // { dg-message "note" }
 
 int test5_23578()
 {
@@ -483,11 +483,11 @@ int test5_23578()
     return 0;
 }
 
-two   sink_5_23678(const          A&);  // { dg-error "" }
-three sink_5_23678(volatile       A&);  // { dg-error "" }
-six   sink_5_23678(const          A&&);  // { dg-error "" }
-seven sink_5_23678(volatile       A&&);  // { dg-error "" }
-eight sink_5_23678(const volatile A&&);  // { dg-error "" }
+two   sink_5_23678(const          A&);  // { dg-message "candidates" }
+three sink_5_23678(volatile       A&);  // { dg-message "note" }
+six   sink_5_23678(const          A&&);  // { dg-message "note" }
+seven sink_5_23678(volatile       A&&);  // { dg-message "note" }
+eight sink_5_23678(const volatile A&&);  // { dg-message "note" }
 
 int test5_23678()
 {
@@ -500,11 +500,11 @@ int test5_23678()
     return 0;
 }
 
-two   sink_5_24567(const          A&);  // { dg-error "" }
-four  sink_5_24567(const volatile A&);  // { dg-error "" }
-five  sink_5_24567(               A&&);  // { dg-error "" }
-six   sink_5_24567(const          A&&);  // { dg-error "" }
-seven sink_5_24567(volatile       A&&);  // { dg-error "" }
+two   sink_5_24567(const          A&);  // { dg-message "candidates" }
+four  sink_5_24567(const volatile A&);  // { dg-message "note" }
+five  sink_5_24567(               A&&);  // { dg-message "note" }
+six   sink_5_24567(const          A&&);  // { dg-message "note" }
+seven sink_5_24567(volatile       A&&);  // { dg-message "note" }
 
 int test5_24567()
 {
@@ -516,11 +516,11 @@ int test5_24567()
     return 0;
 }
 
-two   sink_5_24678(const          A&);  // { dg-error "" }
+two   sink_5_24678(const          A&);  // { dg-message "candidates" }
 four  sink_5_24678(const volatile A&);
-six   sink_5_24678(const          A&&);  // { dg-error "" }
-seven sink_5_24678(volatile       A&&);  // { dg-error "" }
-eight sink_5_24678(const volatile A&&);  // { dg-error "" }
+six   sink_5_24678(const          A&&);  // { dg-message "note" }
+seven sink_5_24678(volatile       A&&);  // { dg-message "note" }
+eight sink_5_24678(const volatile A&&);  // { dg-message "note" }
 
 int test5_24678()
 {
@@ -532,11 +532,11 @@ int test5_24678()
     return 0;
 }
 
-three sink_5_34567(volatile       A&);  // { dg-error "" }
-four  sink_5_34567(const volatile A&);  // { dg-error "" }
-five  sink_5_34567(               A&&);  // { dg-error "" }
-six   sink_5_34567(const          A&&);  // { dg-error "" }
-seven sink_5_34567(volatile       A&&);  // { dg-error "" }
+three sink_5_34567(volatile       A&);  // { dg-message "candidates" }
+four  sink_5_34567(const volatile A&);  // { dg-message "note" }
+five  sink_5_34567(               A&&);  // { dg-message "note" }
+six   sink_5_34567(const          A&&);  // { dg-message "note" }
+seven sink_5_34567(volatile       A&&);  // { dg-message "note" }
 
 int test5_34567()
 {
@@ -550,9 +550,9 @@ int test5_34567()
 
 three sink_5_34678(volatile       A&);
 four  sink_5_34678(const volatile A&);
-six   sink_5_34678(const          A&&);  // { dg-error "" }
-seven sink_5_34678(volatile       A&&);  // { dg-error "" }
-eight sink_5_34678(const volatile A&&);  // { dg-error "" }
+six   sink_5_34678(const          A&&);  // { dg-message "candidates" }
+seven sink_5_34678(volatile       A&&);  // { dg-message "note" }
+eight sink_5_34678(const volatile A&&);  // { dg-message "note" }
 
 int test5_34678()
 {
index 9a925ef0c61788f6fb77da776d748a023a66cc17..040c0f6c3e8e12f52e90518708fff9fbf673cc63 100644 (file)
@@ -30,12 +30,12 @@ const volatile A cv_source();
 
 // 6 at a time
 
-one   sink_6_123456(               A&);  // { dg-error "" }
-two   sink_6_123456(const          A&);  // { dg-error "" }
-three sink_6_123456(volatile       A&);  // { dg-error "" }
-four  sink_6_123456(const volatile A&);  // { dg-error "" }
-five  sink_6_123456(               A&&);  // { dg-error "" }
-six   sink_6_123456(const          A&&);  // { dg-error "" }
+one   sink_6_123456(               A&);  // { dg-message "candidates" }
+two   sink_6_123456(const          A&);  // { dg-message "note" }
+three sink_6_123456(volatile       A&);  // { dg-message "note" }
+four  sink_6_123456(const volatile A&);  // { dg-message "note" }
+five  sink_6_123456(               A&&);  // { dg-message "note" }
+six   sink_6_123456(const          A&&);  // { dg-message "note" }
 
 int test6_123456()
 {
@@ -48,12 +48,12 @@ int test6_123456()
     return 0;
 }
 
-one   sink_6_123457(               A&);  // { dg-error "" }
-two   sink_6_123457(const          A&);  // { dg-error "" }
-three sink_6_123457(volatile       A&);  // { dg-error "" }
-four  sink_6_123457(const volatile A&);  // { dg-error "" }
-five  sink_6_123457(               A&&);  // { dg-error "" }
-seven sink_6_123457(volatile       A&&);  // { dg-error "" }
+one   sink_6_123457(               A&);  // { dg-message "candidates" }
+two   sink_6_123457(const          A&);  // { dg-message "note" }
+three sink_6_123457(volatile       A&);  // { dg-message "note" }
+four  sink_6_123457(const volatile A&);  // { dg-message "note" }
+five  sink_6_123457(               A&&);  // { dg-message "note" }
+seven sink_6_123457(volatile       A&&);  // { dg-message "note" }
 
 int test6_123457()
 {
@@ -65,12 +65,12 @@ int test6_123457()
     return 0;
 }
 
-two   sink_6_235678(const          A&);  // { dg-error "" }
-three sink_6_235678(volatile       A&);  // { dg-error "" }
-five  sink_6_235678(               A&&);  // { dg-error "" }
-six   sink_6_235678(const          A&&);  // { dg-error "" }
-seven sink_6_235678(volatile       A&&);  // { dg-error "" }
-eight sink_6_235678(const volatile A&&);  // { dg-error "" }
+two   sink_6_235678(const          A&);  // { dg-message "candidates" }
+three sink_6_235678(volatile       A&);  // { dg-message "note" }
+five  sink_6_235678(               A&&);  // { dg-message "note" }
+six   sink_6_235678(const          A&&);  // { dg-message "note" }
+seven sink_6_235678(volatile       A&&);  // { dg-message "note" }
+eight sink_6_235678(const volatile A&&);  // { dg-message "note" }
 
 int test6_235678()
 {
@@ -82,12 +82,12 @@ int test6_235678()
     return 0;
 }
 
-two   sink_6_234678(const          A&);  // { dg-error "" }
-three sink_6_234678(volatile       A&);  // { dg-error "" }
-four  sink_6_234678(const volatile A&);  // { dg-error "" }
-six   sink_6_234678(const          A&&);  // { dg-error "" }
-seven sink_6_234678(volatile       A&&);  // { dg-error "" }
-eight sink_6_234678(const volatile A&&);  // { dg-error "" }
+two   sink_6_234678(const          A&);  // { dg-message "candidates" }
+three sink_6_234678(volatile       A&);  // { dg-message "note" }
+four  sink_6_234678(const volatile A&);  // { dg-message "note" }
+six   sink_6_234678(const          A&&);  // { dg-message "note" }
+seven sink_6_234678(volatile       A&&);  // { dg-message "note" }
+eight sink_6_234678(const volatile A&&);  // { dg-message "note" }
 
 int test6_234678()
 {
@@ -100,12 +100,12 @@ int test6_234678()
     return 0;
 }
 
-two   sink_6_234578(const          A&);  // { dg-error "" }
-three sink_6_234578(volatile       A&);  // { dg-error "" }
-four  sink_6_234578(const volatile A&);  // { dg-error "" }
-five  sink_6_234578(               A&&);  // { dg-error "" }
-seven sink_6_234578(volatile       A&&);  // { dg-error "" }
-eight sink_6_234578(const volatile A&&);  // { dg-error "" }
+two   sink_6_234578(const          A&);  // { dg-message "candidates" }
+three sink_6_234578(volatile       A&);  // { dg-message "note" }
+four  sink_6_234578(const volatile A&);  // { dg-message "note" }
+five  sink_6_234578(               A&&);  // { dg-message "note" }
+seven sink_6_234578(volatile       A&&);  // { dg-message "note" }
+eight sink_6_234578(const volatile A&&);  // { dg-message "note" }
 
 int test6_234578()
 {
@@ -117,12 +117,12 @@ int test6_234578()
     return 0;
 }
 
-two   sink_6_234568(const          A&);  // { dg-error "" }
-three sink_6_234568(volatile       A&);  // { dg-error "" }
-four  sink_6_234568(const volatile A&);  // { dg-error "" }
-five  sink_6_234568(               A&&);  // { dg-error "" }
-six   sink_6_234568(const          A&&);  // { dg-error "" }
-eight sink_6_234568(const volatile A&&);  // { dg-error "" }
+two   sink_6_234568(const          A&);  // { dg-message "candidates" }
+three sink_6_234568(volatile       A&);  // { dg-message "note" }
+four  sink_6_234568(const volatile A&);  // { dg-message "note" }
+five  sink_6_234568(               A&&);  // { dg-message "note" }
+six   sink_6_234568(const          A&&);  // { dg-message "note" }
+eight sink_6_234568(const volatile A&&);  // { dg-message "note" }
 
 int test6_234568()
 {
@@ -134,12 +134,12 @@ int test6_234568()
     return 0;
 }
 
-two   sink_6_234567(const          A&);  // { dg-error "" }
-three sink_6_234567(volatile       A&);  // { dg-error "" }
-four  sink_6_234567(const volatile A&);  // { dg-error "" }
-five  sink_6_234567(               A&&);  // { dg-error "" }
-six   sink_6_234567(const          A&&);  // { dg-error "" }
-seven sink_6_234567(volatile       A&&);  // { dg-error "" }
+two   sink_6_234567(const          A&);  // { dg-message "candidates" }
+three sink_6_234567(volatile       A&);  // { dg-message "note" }
+four  sink_6_234567(const volatile A&);  // { dg-message "note" }
+five  sink_6_234567(               A&&);  // { dg-message "note" }
+six   sink_6_234567(const          A&&);  // { dg-message "note" }
+seven sink_6_234567(volatile       A&&);  // { dg-message "note" }
 
 int test6_234567()
 {
@@ -155,9 +155,9 @@ int test6_234567()
 one   sink_6_134678(               A&);
 three sink_6_134678(volatile       A&);
 four  sink_6_134678(const volatile A&);
-six   sink_6_134678(const          A&&);  // { dg-error "" }
-seven sink_6_134678(volatile       A&&);  // { dg-error "" }
-eight sink_6_134678(const volatile A&&);  // { dg-error "" }
+six   sink_6_134678(const          A&&);  // { dg-message "candidates" }
+seven sink_6_134678(volatile       A&&);  // { dg-message "note" }
+eight sink_6_134678(const volatile A&&);  // { dg-message "note" }
 
 int test6_134678()
 {
@@ -170,11 +170,11 @@ int test6_134678()
 }
 
 one   sink_6_124678(               A&);
-two   sink_6_124678(const          A&);  // { dg-error "" }
+two   sink_6_124678(const          A&);  // { dg-message "candidates" }
 four  sink_6_124678(const volatile A&);
-six   sink_6_124678(const          A&&);  // { dg-error "" }
-seven sink_6_124678(volatile       A&&);  // { dg-error "" }
-eight sink_6_124678(const volatile A&&);  // { dg-error "" }
+six   sink_6_124678(const          A&&);  // { dg-message "note" }
+seven sink_6_124678(volatile       A&&);  // { dg-message "note" }
+eight sink_6_124678(const volatile A&&);  // { dg-message "note" }
 
 int test6_124678()
 {
@@ -187,11 +187,11 @@ int test6_124678()
 }
 
 one   sink_6_123678(               A&);
-two   sink_6_123678(const          A&);  // { dg-error "" }
+two   sink_6_123678(const          A&);  // { dg-message "candidates" }
 three sink_6_123678(volatile       A&);
-six   sink_6_123678(const          A&&);  // { dg-error "" }
-seven sink_6_123678(volatile       A&&);  // { dg-error "" }
-eight sink_6_123678(const volatile A&&);  // { dg-error "" }
+six   sink_6_123678(const          A&&);  // { dg-message "note" }
+seven sink_6_123678(volatile       A&&);  // { dg-message "note" }
+eight sink_6_123678(const volatile A&&);  // { dg-message "note" }
 
 int test6_123678()
 {
@@ -203,12 +203,12 @@ int test6_123678()
     return 0;
 }
 
-one   sink_6_123567(               A&);  // { dg-error "" }
-two   sink_6_123567(const          A&);  // { dg-error "" }
-three sink_6_123567(volatile       A&);  // { dg-error "" }
-five  sink_6_123567(               A&&);  // { dg-error "" }
-six   sink_6_123567(const          A&&);  // { dg-error "" }
-seven sink_6_123567(volatile       A&&);  // { dg-error "" }
+one   sink_6_123567(               A&);  // { dg-message "candidates" }
+two   sink_6_123567(const          A&);  // { dg-message "note" }
+three sink_6_123567(volatile       A&);  // { dg-message "note" }
+five  sink_6_123567(               A&&);  // { dg-message "note" }
+six   sink_6_123567(const          A&&);  // { dg-message "note" }
+seven sink_6_123567(volatile       A&&);  // { dg-message "note" }
 
 int test6_123567()
 {
@@ -221,12 +221,12 @@ int test6_123567()
     return 0;
 }
 
-one   sink_6_123467(               A&);  // { dg-error "" }
-two   sink_6_123467(const          A&);  // { dg-error "" }
-three sink_6_123467(volatile       A&);  // { dg-error "" }
-four  sink_6_123467(const volatile A&);  // { dg-error "" }
-six   sink_6_123467(const          A&&);  // { dg-error "" }
-seven sink_6_123467(volatile       A&&);  // { dg-error "" }
+one   sink_6_123467(               A&);  // { dg-message "candidates" }
+two   sink_6_123467(const          A&);  // { dg-message "note" }
+three sink_6_123467(volatile       A&);  // { dg-message "note" }
+four  sink_6_123467(const volatile A&);  // { dg-message "note" }
+six   sink_6_123467(const          A&&);  // { dg-message "note" }
+seven sink_6_123467(volatile       A&&);  // { dg-message "note" }
 
 int test6_123467()
 {
@@ -239,12 +239,12 @@ int test6_123467()
     return 0;
 }
 
-one   sink_6_124567(               A&);  // { dg-error "" }
-two   sink_6_124567(const          A&);  // { dg-error "" }
-four  sink_6_124567(const volatile A&);  // { dg-error "" }
-five  sink_6_124567(               A&&);  // { dg-error "" }
-six   sink_6_124567(const          A&&);  // { dg-error "" }
-seven sink_6_124567(volatile       A&&);  // { dg-error "" }
+one   sink_6_124567(               A&);  // { dg-message "candidates" }
+two   sink_6_124567(const          A&);  // { dg-message "note" }
+four  sink_6_124567(const volatile A&);  // { dg-message "note" }
+five  sink_6_124567(               A&&);  // { dg-message "note" }
+six   sink_6_124567(const          A&&);  // { dg-message "note" }
+seven sink_6_124567(volatile       A&&);  // { dg-message "note" }
 
 int test6_124567()
 {
@@ -256,12 +256,12 @@ int test6_124567()
     return 0;
 }
 
-one   sink_6_134567(               A&);  // { dg-error "" }
-three sink_6_134567(volatile       A&);  // { dg-error "" }
-four  sink_6_134567(const volatile A&);  // { dg-error "" }
-five  sink_6_134567(               A&&);  // { dg-error "" }
-six   sink_6_134567(const          A&&);  // { dg-error "" }
-seven sink_6_134567(volatile       A&&);  // { dg-error "" }
+one   sink_6_134567(               A&);  // { dg-message "candidates" }
+three sink_6_134567(volatile       A&);  // { dg-message "note" }
+four  sink_6_134567(const volatile A&);  // { dg-message "note" }
+five  sink_6_134567(               A&&);  // { dg-message "note" }
+six   sink_6_134567(const          A&&);  // { dg-message "note" }
+seven sink_6_134567(volatile       A&&);  // { dg-message "note" }
 
 int test6_134567()
 {
index acd884bdde4cee4dea8dd1acb4d9a5689ae7da45..9d81bd5d7222ff3f254ed6a6968e2a5c18fa35e6 100644 (file)
@@ -1,6 +1,6 @@
 // I, Howard Hinnant, hereby place this code in the public domain.
 
-// Test overlaod resolution among referece types
+// Test overload resolution among reference types
 
 // { dg-do compile }
 // { dg-options "-std=c++0x" }
@@ -30,13 +30,13 @@ const volatile A cv_source();
 
 // 7 at a time
 
-one   sink_7_1234567(               A&);  // { dg-error "" }
-two   sink_7_1234567(const          A&);  // { dg-error "" }
-three sink_7_1234567(volatile       A&);  // { dg-error "" }
-four  sink_7_1234567(const volatile A&);  // { dg-error "" }
-five  sink_7_1234567(               A&&);  // { dg-error "" }
-six   sink_7_1234567(const          A&&);  // { dg-error "" }
-seven sink_7_1234567(volatile       A&&);  // { dg-error "" }
+one   sink_7_1234567(               A&);  // { dg-message "candidates" }
+two   sink_7_1234567(const          A&);  // { dg-message "note" }
+three sink_7_1234567(volatile       A&);  // { dg-message "note" }
+four  sink_7_1234567(const volatile A&);  // { dg-message "note" }
+five  sink_7_1234567(               A&&);  // { dg-message "note" }
+six   sink_7_1234567(const          A&&);  // { dg-message "note" }
+seven sink_7_1234567(volatile       A&&);  // { dg-message "note" }
 
 int test7_1234567()
 {
@@ -48,13 +48,13 @@ int test7_1234567()
     return 0;
 }
 
-two   sink_7_2345678(const          A&);  // { dg-error "" }
-three sink_7_2345678(volatile       A&);  // { dg-error "" }
-four  sink_7_2345678(const volatile A&);  // { dg-error "" }
-five  sink_7_2345678(               A&&);  // { dg-error "" }
-six   sink_7_2345678(const          A&&);  // { dg-error "" }
-seven sink_7_2345678(volatile       A&&);  // { dg-error "" }
-eight sink_7_2345678(const volatile A&&);  // { dg-error "" }
+two   sink_7_2345678(const          A&);  // { dg-message "candidates" }
+three sink_7_2345678(volatile       A&);  // { dg-message "note" }
+four  sink_7_2345678(const volatile A&);  // { dg-message "note" }
+five  sink_7_2345678(               A&&);  // { dg-message "note" }
+six   sink_7_2345678(const          A&&);  // { dg-message "note" }
+seven sink_7_2345678(volatile       A&&);  // { dg-message "note" }
+eight sink_7_2345678(const volatile A&&);  // { dg-message "note" }
 
 int test7_2345678()
 {
@@ -67,12 +67,12 @@ int test7_2345678()
 }
 
 one   sink_7_1234678(               A&);
-two   sink_7_1234678(const          A&);  // { dg-error "" }
+two   sink_7_1234678(const          A&);  // { dg-message "candidates" }
 three sink_7_1234678(volatile       A&);
 four  sink_7_1234678(const volatile A&);
-six   sink_7_1234678(const          A&&);  // { dg-error "" }
-seven sink_7_1234678(volatile       A&&);  // { dg-error "" }
-eight sink_7_1234678(const volatile A&&);  // { dg-error "" }
+six   sink_7_1234678(const          A&&);  // { dg-message "note" }
+seven sink_7_1234678(volatile       A&&);  // { dg-message "note" }
+eight sink_7_1234678(const volatile A&&);  // { dg-message "note" }
 
 int test7_1234678()
 {
index f1cce3a4363c8d85a30b5b1fb4847ef6f2ef3468..b742cb1d3699f370d905e27cfb8888b03d5ec080 100644 (file)
@@ -34,6 +34,6 @@ template<typename... Args> void g(Args... args)
    f(const_cast<const Args*>(&args)...); // okay: ``Args'' and ``args'' are expanded
    f(5 ...); // { dg-error "contains no argument packs" }
    f(args); // { dg-error "parameter packs not expanded" }
-   // { dg-error "args" "" { target *-*-* } 36 }
+   // { dg-message "args" "note" { target *-*-* } 36 }
    f(h(args...) + args...); // okay: first ``args'' expanded within h, second ``args'' expanded within f.
 }
index 370d475eb6d44bd865cdc04856d55baa5ab4e6c3..90636020401d592efcb59af40822935bcdd6fd86 100644 (file)
@@ -11,5 +11,5 @@ struct tuple_base { };
 template<typename... Values>
 struct tuple : tuple_base<Values> { }; // { dg-error "packs not expanded" }
 
-// { dg-error "args" "" { target *-*-* } 5 }
-// { dg-error "Values" "" { target *-*-* } 12 }
+// { dg-message "args" "note" { target *-*-* } 5 }
+// { dg-message "Values" "note" { target *-*-* } 12 }
index f0730d33baf01d7df8d4faecb79f047b622703b2..6d6e52f93192873fd2cb056e0aff28f453cca8bc 100644 (file)
@@ -1,4 +1,4 @@
 // { dg-options "-std=gnu++0x" }
 template<class T, typename... VarArgs>
 void print(T t, VarArgs args); // { dg-error "packs not expanded" }
-// { dg-error "VarArgs" "" { target *-*-* } 3 }
+// { dg-message "VarArgs" "note" { target *-*-* } 3 }
index d4219dace83109c03d710b83fabcf9640c35a365..bea3cc346319f42114b110bb0c017c079fbfec31 100644 (file)
@@ -9,4 +9,4 @@ struct push_front<list<Elements...>, Head> {
   typedef list<Head, Elements> type; // { dg-error "parameter packs not expanded" }
 };
 
-// { dg-error "Elements" "" { target *-*-* } 9 }
+// { dg-message "Elements" "note" { target *-*-* } 9 }
index 9e8f08c1d6b78b3ca68dfad3ff580f722cc35dc9..e71a84ba43e22216ea930e1ec3c3f415ec28297c 100644 (file)
@@ -1,7 +1,7 @@
 // PR c++/27666
 
-struct A { // { dg-error "A" }
-  A(int); // { dg-error "A" }
+struct A { // { dg-message "A" }
+  A(int); // { dg-message "A" }
 };
 
 void foo(volatile A a) { 
index 9bb8a037d7553e14b8765cede1adb32833c092c1..8f6426b401b1ce5e4236f53bfc126894a3450ec7 100644 (file)
@@ -7,13 +7,13 @@
 struct A 
 {
   void f();
-  void foo(void (A::*)(int));       // { dg-error "candidate" "" }
+  void foo(void (A::*)(int));       // { dg-message "candidate" "" }
   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 "" "" }
+    foo(&g<int>);                   // { dg-error "no matching" "" }
   }
 };
index 33befbd588a0650b38d7e92f2b84a7246de0db7e..de1f2a7e7630abc183ea9acc7411168463041252 100644 (file)
@@ -11,7 +11,7 @@ T f2 (T i)
 {
   switch (i)
   {
-    case low ... high : return i + 1;  // { dg-error "" }
+    case low ... high : return i + 1;  // { dg-error "previously" }
     case 5 : return i + 2;             // { dg-error "duplicate" }
     default : return 0;
   }
@@ -20,8 +20,8 @@ T f2 (T i)
 int f (int i)
 {
   switch (i) {
-    case 1 ... 10: return i + 1;       // { dg-error "" }
+    case 1 ... 10: return i + 1;       // { dg-error "first entry" }
     case 3 ... 5 : return i + 3;       // { dg-error "duplicate" }
-    default: return f2 (i);            // { dg-error "" }
+    default: return f2 (i);            // { dg-message "instantiated" }
   }
 }
index 569ce627455b4b4881b305435369a1035aebc56a..5a09c12d61d7acf84834c29817fc718506f58329 100644 (file)
@@ -9,7 +9,7 @@ T f2 (T i)
 {
   switch (i)
   {
-    case low ... high : return i + 1; // { dg-error "non-standard" }
+    case low ... high : return i + 1; // { dg-warning "non-standard" }
     default : return 0;
   }
 }
@@ -17,7 +17,7 @@ T f2 (T i)
 int f (int i)
 {
   switch (i) {
-    case 1 ... 10: return i + 1;      // { dg-error "non-standard" }
-    default: return f2 (i);           // { dg-error "" }
+    case 1 ... 10: return i + 1;      // { dg-warning "non-standard" }
+    default: return f2 (i);           // { dg-message "instantiated" }
   }
 }
index 9f19d6245342a864b8cf815a087ed5c50e94365b..8649dc4410f308ddb78674f359dc164d1f8aedc6 100644 (file)
@@ -13,7 +13,7 @@ template<int> void foo()
   __is_abstract(int)(); // { dg-error "'__is_abstract\\(int\\)' cannot be used" }
   __is_base_of(int, float)(); // { dg-error "'__is_base_of\\(int, float\\)' cannot be used" }
   __is_class(int)(); // { dg-error "'__is_class\\(int\\)' cannot be used" }
-  __is_convertible_to(int, float)(); // { dg-error "unimplemented" }
+  __is_convertible_to(int, float)(); // { dg-message "unimplemented" }
   __is_empty(int)(); // { dg-error "'__is_empty\\(int\\)' cannot be used" }
   __is_enum(int)(); // { dg-error "'__is_enum\\(int\\)' cannot be used" }
   __is_pod(int)(); // { dg-error "'__is_pod\\(int\\)' cannot be used" }
index 0032b0f8e67e3d99271aeb225c0c5d137d504df5..9c5a24e5803ac0f3ccd3eb837856bf46d78c1d01 100644 (file)
@@ -4,4 +4,4 @@
 struct A { };
 int main() { b: A() && && b; } // { dg-error "A\\(\\) && && *b" }
 
-// { dg-error "candidate" "additional" { target *-*-* } 5 }
+// { dg-message "candidate" "additional" { target *-*-* } 5 }
index d7644180c2975c83f731e0838fb2b59357598637..c96d51c14ec29c38c29bd13863206165b7b4d5b5 100644 (file)
@@ -8,4 +8,4 @@ struct A
                 int z[1];
 };
 
-A a = { z:{} }; // { dg-error "unimplemented" }
+A a = { z:{} }; // { dg-message "unimplemented" }
index 9efd8d45ee96cbffa02088543ac8799ebb4ea5e5..3b7a4f8d572cde7539403fd05c919ae6a19d2c42 100644 (file)
@@ -2,8 +2,8 @@
 // { dg-do compile }
 
 struct A
-{                                      // { dg-error "A::A\\(const A&\\)" }
-  A (int);                             // { dg-error "candidates" }
+{                                      // { dg-message "A::A\\(const A&\\)" }
+  A (int);                             // { dg-message "candidates" }
 };
 
 void
index 4ebf677cd083d256f827805affb6289c4652e352..5d29f322c9d8aae758f83f2341f3d3cabe339bfd 100644 (file)
@@ -3,8 +3,8 @@
 
 struct A
 {
-  A (int x = 6);                       // { dg-error "A::A\\(int\\)" }
-  A (long long x = 12LL);              // { dg-error "candidates" }
+  A (int x = 6);                       // { dg-message "A::A\\(int\\)" }
+  A (long long x = 12LL);              // { dg-message "candidates" }
 };
 
 void
index 5b98bd2a9a702bf5ccfd9d5f525cdbdea3faa5b8..c225e1545232c23aeab32e7253535c0e06cf5f46 100644 (file)
@@ -9,7 +9,7 @@ foo ()
 {
 #pragma omp parallel
   {
-    int j;     // { dg-warning "note: 'j' was declared here" }
+    int j;     // { dg-message "note: 'j' was declared here" }
     i = j;     // { dg-warning "is used uninitialized" }
   }
 }
index 3f2e3bb6211ef68237807cbe07f9cc4ec17dd71b..2dceb093287d3a862287054a36ee5bd984df63a0 100644 (file)
@@ -17,4 +17,4 @@ void S<T>::test()
 
 template struct S<int>;
 template struct S<long>;
-template struct S<float>;      // { dg-error "instantiated from here" }
+template struct S<float>;      // { dg-message "instantiated from here" }
index c586e39d19eda7a4dcefd376ee70bf26b764d7f5..866b2906c4f6362eebb2b7bfae659e0c34f044d8 100644 (file)
@@ -5,4 +5,4 @@ template<typename T> struct A : T {};  // { dg-error "struct or class type" }
 
 struct B;
 
-A<void (B::*)()> a;  // { dg-error "instantiated" }
+A<void (B::*)()> a;  // { dg-message "instantiated" }
index 46c23ce582e17079dd6dec714ca741ca4fa8b9a2..7bdfc3405c1510a44e36da4570710a0a4c646059 100644 (file)
@@ -12,4 +12,4 @@ template <typename T> struct TPL : A
 };
 
 TPL<int> i;
-TPL<float> j; // { dg-error "instantiated" }
+TPL<float> j; // { dg-message "instantiated" }
index 066d1ba65ff0168a524421b7e7605c14cfef8ab4..bff89daa2f2dc0605eae60bb35baff8210d80796 100644 (file)
@@ -6,7 +6,7 @@ struct A {
 };
 
 struct B {
-   B(const B&);                        // { dg-error "candidate" }
+   B(const B&);                        // { dg-message "candidate" }
    int b;
 };
 
index 70643ec4e10cd456d9e3fb99f3fd491f4c75fd92..0671dd8537df6551833d2a37c6642f17bfbbcc5a 100644 (file)
@@ -16,5 +16,5 @@ foo::foo() {
 
 int main(int argc, char **argv)
 {
-  bar x; // { dg-error "synthesized" }
+  bar x; // { dg-message "synthesized" }
 }
index 6a595f71997549e529c15860e23cd8fe8c97fe9d..b861c6036dfbf75bc14f3c649e5b83a91c818af8 100644 (file)
@@ -7,12 +7,12 @@
 
 struct A1 
 {
-  operator int () const; // { dg-error "A1::operator" "" }
+  operator int () const; // { dg-message "A1::operator" "" }
 };
 
 struct A2
 {
-  operator int () const; // { dg-error "A2::operator" "" }
+  operator int () const; // { dg-message "A2::operator" "" }
 };
 
 struct B : A1, A2 
index ae1121339cf5c7f7f7bfc701a8f8a7efc5d35842..b29aa46ce424f14a636d9cfd00da26f79029fbff 100644 (file)
@@ -10,4 +10,4 @@ int main() {
   return 0;
 }
 
-// { dg-error "candidate" "" { target *-*-* } 0 }
+// { dg-message "candidate" "" { target *-*-* } 0 }
index d9566a7e0994d849674b3c25ba479ea3a3001b2b..b83b08fe94f97a0b1ef44b56f9e8aa66680a0d8e 100644 (file)
@@ -10,7 +10,7 @@ public:
 class Bar {
   Foo<int> foo_;
 public:
-  Bar() {}  // { dg-error "instantiated" }
+  Bar() {}  // { dg-message "instantiated" }
 };
 
 template class Foo<int>;
index e62d3f310acf1a066f0cd944984516988e6a3ea3..b250c5823f57dc2abaf81dd4012d5ac560d61712 100644 (file)
@@ -4,8 +4,9 @@ template <typename T, bool=T::X> struct A
 };
 
 template <typename T> struct B : A<T>
-{ // { dg-error "" }
-  using A<T>::i; // { dg-error "" } 
+{ // { dg-error "incomplete" }
+  using A<T>::i; // { dg-error "incomplete" "incomplete" } 
+                 // { dg-error "using" "using" { target *-*-* } 8 }
 };
 
-B<void> b; // { dg-error "" }
+B<void> b; // { dg-message "instantiated" }
index c62267519b0b95aa7aee0eeba48b99b76557d269..7c3b30d8873b5b34e862e797c660377b13a6c7c1 100644 (file)
@@ -4,14 +4,14 @@
 //  an ambiguous overload set to be created.
 
 namespace B {
-  void f(int);     // { dg-error "note" }
-  void f(double);  // { dg-error "note" }
+  void f(int);     // { dg-message "candidates" }
+  void f(double);  // { dg-message "note" }
 }
 
 namespace C {
-  void f(int);     // { dg-error "note" }
-  void f(double);  // { dg-error "note" }
-  void f(char);    // { dg-error "note" }
+  void f(int);     // { dg-message "note" }
+  void f(double);  // { dg-message "note" }
+  void f(char);    // { dg-message "note" }
 }
 
 void h()
index 86962c7bc3a5dbee1ced2faf59d42ebc42c9a142..8406f8a25d708b68d73d78438ff5c938823b5cc5 100644 (file)
@@ -5,7 +5,7 @@
 // c++/9256: Make sure that a pointer to an array of abstract elements
 //  cannot be created, not even during template substitution (DR337).
 
-struct Abstract { virtual void f() = 0; };  // { dg-error "" } 
+struct Abstract { virtual void f() = 0; };  // { dg-message "note" } 
 struct Complete { void f(); };
 
 
@@ -35,7 +35,7 @@ template <class T> struct K {
   T (*a)[2];   // { dg-error "abstract class type" }
 };
 
-template struct K<Abstract>;  // { dg-error "from here" }
+template struct K<Abstract>;  // { dg-message "instantiated" }
 
 
 
index d242ffdc0b39599d54f9c5496cc5855a79624621..b79493285c21e8a59501236d30a6ac0b6f45d470 100644 (file)
@@ -19,22 +19,22 @@ namespace N1 {
     void g(X (*parm6)[2]);   // { dg-error "abstract" }
   };
 
-  struct X {  // { dg-error "note" }
-    virtual void xfunc(void) = 0;  // { dg-error "note" }
+  struct X {  // { dg-message "note" }
+    virtual void xfunc(void) = 0;  // { dg-message "note" }
   };
 }
 
 namespace N2 {
-  struct X1 { // { dg-error "note" }
-    virtual void xfunc(void) = 0;  // { dg-error "note" }
+  struct X1 { // { dg-message "note" }
+    virtual void xfunc(void) = 0;  // { dg-message "note" }
     void g(X1 parm7);        // { dg-error "abstract" }
     void g(X1 parm8[2]);     // { dg-error "abstract" }
     void g(X1 (*parm9)[2]);  // { dg-error "abstract" }
   };
 
   template <int N>
-  struct X2 { // { dg-error "note" }
-    virtual void xfunc(void) = 0; // { dg-error "note" }
+  struct X2 { // { dg-message "note" }
+    virtual void xfunc(void) = 0; // { dg-message "note" }
     void g(X2 parm10);        // { dg-error "abstract" }
     void g(X2 parm11[2]);     // { dg-error "abstract" }
     void g(X2 (*parm12)[2]);  // { dg-error "abstract" }
@@ -42,8 +42,8 @@ namespace N2 {
 }
 
 namespace N3 {
-  struct X { // { dg-error "note" "" }
-    virtual void xfunc(void) = 0;  // { dg-error "note" }
+  struct X { // { dg-message "note" "" }
+    virtual void xfunc(void) = 0;  // { dg-message "note" }
   };
   void g(X parm13);          // { dg-error "abstract" }
   void g(X parm14[2]);       // { dg-error "abstract" }
index a82d3f7b50ee2643e08d1a45b092e5971723eef8..53cf9e33c12af9671bcc9286e0be900a467b4bab 100644 (file)
@@ -11,7 +11,7 @@ namespace {
 
 const bool &f()
 {
-  return c::t; // { dg-error "undefined" "undefined" { target *-*-* } 0 }
+  return c::t; // { dg-message "undefined" "undefined" { target *-*-* } 0 }
                // Some targets report the error for the previous line, others
                // don't give line number inforamtion for it, so use line 0.
 }
index a37b8b2f020d51a8acf565ed390a874979f70bec..bc2c457f1b4d63fb5cb0aa0e7047e78d1b5bb685 100644 (file)
@@ -22,5 +22,5 @@ struct b
 struct c
 {
   b bb;
-  c(const b& __a): bb(__a) {} // { dg-error "synthesized" "" { target { ! default_packed } } }
+  c(const b& __a): bb(__a) {} // { dg-message "synthesized" "" { target { ! default_packed } } }
 };
index d8025801f1370a7f56d6db6ef4de4ee561d4294b..9e6da6529aa39983b7878e029c5c0059696d520a 100644 (file)
@@ -10,6 +10,6 @@ void foo(const A<N> &a)
 
 void bar()
 {
-    foo(A<0>()); // { dg-error "instantiated from here" "" }
+    foo(A<0>()); // { dg-message "instantiated from here" "" }
 }
 
index 037e28866e1064374d68e286f376f5c8487dc072..d3b1eabc0b2f17cb8aec21bbe93600925e5f3a68 100644 (file)
@@ -1,10 +1,10 @@
 //PR c++/28258
 
 struct A 
-{            // { dg-error "" }
+{            // { dg-message "note" }
   A(void x); // { dg-error "invalid use|incomplete type|candidates" }
 };
 
 struct B : A {}; // { dg-error "no matching function for call" }
  
-B b; // { dg-error "synthesized method" }
+B b; // { dg-message "synthesized method" }
index 3c8e8f22aafbb18a0f44af79021232d8c9c5645f..50a4495cff9ee22454e80078d06ad714d264d3d9 100644 (file)
@@ -2,7 +2,7 @@
 // { dg-do compile }
 
 struct A
-{              // { dg-error "candidates" }
+{              // { dg-message "candidates" }
   virtual A foo ();
 };
 
index 552f7bf27b5a081772d01020d7e8b9dc15f4184a..c7a142fb57d4d32232d87979d850cc35c3e34db0 100644 (file)
@@ -10,4 +10,4 @@ template <typename T> struct S2 : S<T> {
     using S<T>::operator typename S<T>::I*; // { dg-error "operator S\\<int\\>" "" }
 };
 
-template struct S2<int>;  // { dg-error "instantiated" "" }
+template struct S2<int>;  // { dg-message "instantiated" "" }
index 3afe3d908de5fc05212d19d956e883d5356fb894..61a9df6956320b75d3d32f3b0f77b245d7d76a46 100644 (file)
@@ -22,4 +22,4 @@ template <> struct X<int> {
   X();
 };
 
-X<float> i; // { dg-error "instantiated from" "" }
+X<float> i; // { dg-message "instantiated from" "" }
index 97dd5e93710cc0b4a63b96d217c92f0a663ae05d..3c4843380553d46cff5a80cf1d95a38d3e24ac7f 100644 (file)
@@ -19,4 +19,4 @@ struct S
   static const int j = offsetof (S, i);        // { dg-warning "invalid access|offsetof" }
 };
 
-int k = S<int>::j;                     // { dg-warning "instantiated from here" }
+int k = S<int>::j;                     // { dg-message "instantiated from here" }
index 542d3b7b554a933af4e08bf94843935d4a38e026..efbae8b7021a9295102d092354c6d2f7a6340353 100644 (file)
@@ -5,6 +5,7 @@
 
 struct A
 {
-  struct B { int i; } // { dg-error "3: error: new types may not be defined in a return type|note: \\(perhaps a semicolon is missing" }
-  void foo();   // { dg-error "12: error: two or more|return type" }
+  struct B { int i; } // { dg-error "3:new types may not be defined in a return type" }
+                      // { dg-message "perhaps a semicolon is missing" "note" { target *-*-* } 8 }
+  void foo();   // { dg-error "12:two or more" }
 };
index 2adc78c795a5d62f6576f814356fae8d61a4d53c..21948bf3146cb41679945eadcb1581dd9a586e6a 100644 (file)
@@ -14,8 +14,8 @@ struct B
   B(int);
 };
 
-void f(A);                     // { dg-error "" "candidate" }
-void f(B);                     // { dg-error "" "candidate" }
+void f(A);                     // { dg-message "note" "candidate" }
+void f(B);                     // { dg-message "note" "candidate" }
 
 int main()
 {
index 1778ce5a43c8a42a16e6631af426e5a61a9993ce..8ece6a6f3ca03d47d3382f6f9eae9729ee1c4f95 100644 (file)
@@ -10,13 +10,14 @@ struct A {};
 
 struct B : A
 {
-  B(int); // { dg-error "" "" }
-  B(B&);  // { dg-error "" "" }
+  B(int); // { dg-message "B::B" "" }
+  B(B&);  // { dg-message "candidates" "" }
 };
 
 void foo(B);
 
 void bar()
 {
-  foo(0); // { dg-error "no matching function|initializing" "" }
+  foo(0); // { dg-error "no matching function" "no matching" }
+          // { dg-error "initializing" "initializing" { target *-*-* } 21 }
 }
index 9f66e336065103b7bd36d05cd31555af37f80286..652b8e1b760cbb7d91d9992b6a92c8b3e6ba0b2a 100644 (file)
@@ -7,10 +7,11 @@ struct A {
   operator B ();
 };
 
-void operator+ (B, B);         // { dg-error "" "candidate" }
+void operator+ (B, B);         // { dg-message "operator" "operator" }
 
 int main ()
 {
   A a;
-  a + a;                       // { dg-error "" "ambiguous" }
+  a + a;                       // { dg-error "ambiguous" "ambiguous" }
+                                // { dg-message "candidates" "candidates" { target *-*-* } 15 }
 }
index 87f8317acbe84c10db216aa07111ed9c53642588..6a774c6770b4badffc856ae06fae6ab815d3f78c 100644 (file)
@@ -4,8 +4,8 @@ struct A;
 
 struct B
 {
-  B (A const &);               // { dg-warning "note" }
-  B (B &);                     // { dg-warning "note" }
+  B (A const &);               // { dg-message "note" }
+  B (B &);                     // { dg-message "note" }
 };
 
 struct A
@@ -16,5 +16,6 @@ struct A
 B
 f (B const& b)
 {
-  return b;                    // { dg-error "" }
+  return b;                    // { dg-error "matching" "matching" }
+                                // { dg-error "initializing" "initializing" { target *-*-* } 19 }
 }
index 7f8935895c9fb31f61d399fc178a0c5862004939..89282faf66cbb7c6f9e5e3acefdb4469f67e373c 100644 (file)
@@ -16,6 +16,6 @@ void f(X *x = new X[4]);       // { dg-error "" }
 void f(X *x = new (3) X(6));   // { dg-error "" } 
 
 void f(X *x = new (2) X[10]);  // { dg-error "" } 
-// { dg-error "candidate" "" { target *-*-* } 00 }
+// { dg-message "candidate" "" { target *-*-* } 00 }
 
 void f(X *x = new X[10][5]);   // { dg-error "" } 
index 4c3ca05e6c2413de8ddd7ada134a2c4e3df0d244..6638dc9d24672bead5cd6e7d453537989e9ebfbb 100644 (file)
@@ -3,14 +3,14 @@
 
 namespace
 {
-  template <int> void foo (...);       // { dg-error "" "candidate" }
-  template <int> void bar (int, ...);  // { dg-error "" "candidate" }
-  void baz (...);                      // { dg-error "" "candidate" }
+  template <int> void foo (...);       // { dg-message "foo" }
+  template <int> void bar (int, ...);  // { dg-message "bar" }
+  void baz (...);                      // { dg-message "baz" }
 }
 
-template <int> void foo (...);         // { dg-error "" "candidate" }
-template <int> void bar (int, ...);    // { dg-error "" "candidate" }
-void baz (...);                                // { dg-error "" "candidate" }
+template <int> void foo (...);         // { dg-message "candidate" }
+template <int> void bar (int, ...);    // { dg-message "candidate" }
+void baz (...);                                // { dg-message "candidate" }
 
 void
 test ()
index 2ecb5fad6b0170429286f3c575ef6fc0ab874cc3..54b12219bd8f1551ae82f6fd06538242eb452a95 100644 (file)
@@ -20,21 +20,21 @@ namespace std {
   extern "C" void *malloc (__SIZE_TYPE__) throw () __attribute__((malloc));
 
   void abort (void) throw (); // these aren't
-  void _exit (int) throw (); // { dg-error "std::_exit" }
+  void _exit (int) throw (); // { dg-message "std::_exit" }
 
   extern "C" void c1 (void) throw ();
-  void C1 (void) throw (); // { dg-error "std::C1" }
+  void C1 (void) throw (); // { dg-message "std::C1" }
 
   extern "C" void c2 (void) throw ();
   void C2 (void) throw ();
 
   extern "C" void c3 (void) throw ();
-  void C3 (void) throw (); // { dg-error "std::C3" }
+  void C3 (void) throw (); // { dg-message "std::C3" }
 }
 
 namespace other {
   extern "C" void c3 (void) throw ();
-  void C3 (void) throw (); // { dg-error "other::C3" }
+  void C3 (void) throw (); // { dg-message "other::C3" }
 }
 
 using std::exit;
@@ -46,10 +46,12 @@ using std::C1;
   extern "C" void *malloc (__SIZE_TYPE__) throw () __attribute__((malloc));
 
   void abort (void) throw ();
-  void _exit (int) throw (); // { dg-error "conflicts|void _exit" }
+  void _exit (int) throw (); // { dg-error "conflicts" "conflicts" }
+                             // { dg-message "void _exit" "_exit" { target *-*-* } 49 }
 
   extern "C" void c1 (void) throw ();
-  void C1 (void) throw (); // { dg-error "conflicts|void C1" }
+  void C1 (void) throw (); // { dg-error "conflicts" "conflicts" }
+                           // { dg-message "void C1" "C1" { target *-*-* } 53 }
 
   extern "C" void c2 (void) throw ();
   void C2 (void) throw ();
index 49aace1dc764be75794edd233cbf55dcb3a4cb0a..a04d2adf8f3049c5dfdcb73ab351dbf00ad5dfcd 100644 (file)
@@ -22,7 +22,7 @@ struct D
   T t : 3;              // { dg-error "non-integral type" }
 };
 
-D<double> d;            // { dg-error "instantiated" }
+D<double> d;            // { dg-message "instantiated" }
 
 template <typename T>
 struct E
index 65c84d94a13c72643ffb6c4274e306b4105d11a9..d69f60ba8cad33b78a7739165dad84b7a36f0598 100644 (file)
@@ -34,7 +34,7 @@ template <typename> struct X
 
 void Baz ()
 {
-  Foo<int> (); // { dg-error "instantiated" "" }
+  Foo<int> (); // { dg-message "instantiated" "" }
 }
 
   
index 8f222f80b10f293e29a7b5864f43b89ec2d6ab15..1796531487ca99b91dab1788dc23652e80ce571b 100644 (file)
@@ -1,7 +1,8 @@
 // { dg-do compile }
 // { dg-options "-fshow-column" }
 
-ACE_Process_Descriptor::ACE_Process_Descriptor () : // { dg-error "" }
-  process_ (0) // { dg-error "3: error: only constructors take base initializers" }
+ACE_Process_Descriptor::ACE_Process_Descriptor () : // { dg-error "declared" "declared" }
+  // { dg-error "no type" "no type" { target *-*-* } 4 }
+  process_ (0) // { dg-error "3: only constructors take base initializers" }
 {
 }
index b39e572c39aaba4a63e6431678d34acb1823e920..d04869fa7afa338d6e002d9a9fcf7c4cbda1c7ef 100644 (file)
@@ -11,4 +11,4 @@ template<typename T> struct A
   typedef typename T::X Y; // { dg-error "not a class" "" }
 };
 
-A<int>::Y y; // { dg-error "instantiated from here" "" }
+A<int>::Y y; // { dg-message "instantiated from here" "" }
index 1397e87d256df886c2fa9bf178d62500d6dd1092..6f5c86734a83061d87c5763f3b74188a9a0f4df2 100644 (file)
@@ -2,9 +2,10 @@
 // { dg-do compile }
 // { dg-options "-std=c++98" }
 
-template <typename... T> struct A      // { dg-error "variadic templates" }
+template <typename... T> struct A      // { dg-warning "variadic templates" }
 {
-  static T &t;                         // { dg-error "not expanded with|T" }
+  static T &t;                         // { dg-error "not expanded with" "not expanded" }
+                                       // { dg-message "T" "T" { target *-*-* } 7 }
   static const int i = sizeof (++t);   // { dg-error "was not declared in this scope" }
 };
 
index 3a4185b7e6c1c5e82d6d023f5f910820473df739..acf9e9d4bbaa82627a906a72ab8608c084225803 100644 (file)
@@ -1,13 +1,13 @@
 // { dg-options "-w" }
 
-class QString { // { dg-error "" }
-  QString (const QString & a); // { dg-error "" }
+class QString { // { dg-error "previous definition" }
+  QString (const QString & a); // { dg-message "candidates" }
 };
 
-class QString { }; // { dg-error "" }
+class QString { }; // { dg-error "redefinition" }
 
 const QString q () {
-  QString z; // { dg-error "" }
+  QString z; // { dg-error "matching" }
   int x;
-  return x ? QString () : QString (); // { dg-error "" }
+  return x ? QString () : QString (); // { dg-error "matching" }
 }
index 812a499ff4df46a93c06ae025d42448835062015..18dc4633a5d33b8df46c940a99f2b256094d5a0d 100644 (file)
@@ -5,5 +5,5 @@
 
 void foo ()
 {
-  cout << "blah"; // { dg-error "3: error: 'cout'" }
+  cout << "blah"; // { dg-error "3:'cout'" }
 }
index 60e7d6587b3b2b2e05b9fe198032324a8f97f529..1f8bb37732c6d0f72c79bc90b2ee71eefd6f2420 100644 (file)
@@ -3,5 +3,5 @@ struct INCOMPLETE;
 template <int> struct X {
     static INCOMPLETE value;
 };
-template <> INCOMPLETE X<1>::value = 0; // { dg-error "30: error: variable 'INCOMPLETE X<1>::value' has initializer but incomplete type" }
+template <> INCOMPLETE X<1>::value = 0; // { dg-error "30:variable 'INCOMPLETE X<1>::value' has initializer but incomplete type" }
 
index 6e46922a115188e91ad292bbd5289e994b92f666..8301172adbeabc98a0708f02e54d4a7256519f2b 100644 (file)
@@ -15,5 +15,5 @@ template <typename T> void foo()
 }
 
 // Here, columns nums are not very accurate either. Still acceptable though
-// { dg-error "30: error: invalid type in declaration before ';' token" "" { target *-*-* } { 14 } }
-// { dg-error "30: error: two or more data types in declaration of 'e4'" "" { target *-*-* } { 14 } }
+// { dg-error "30:invalid type in declaration before ';' token" "" { target *-*-* } 14 }
+// { dg-error "30:two or more data types in declaration of 'e4'" "" { target *-*-* } 14 }
index f7093a8f987557e16705dffa4a2f6beb79a797c2..39039a880b1404cac82bc96ed6db4179650d3f11 100644 (file)
@@ -16,45 +16,56 @@ struct Foo
   };
 
   void method(void) {
-    typename Foo<::B>::template Nested<::B> n; // { dg-error "17: error: '<::' cannot begin|17: note: '<:' is an alternate spelling|39: error: '<::' cannot begin|39: note: '<:' is an alternate" }
+    typename Foo<::B>::template Nested<::B> n; // { dg-error "17:'<::' cannot begin" "17-begin" }
+// { dg-message "17:'<:' is an alternate spelling" "17-alt" { target *-*-* } 19 }
+// { dg-error "39:'<::' cannot begin" "39-begin" { target *-*-* } 19 }
+// { dg-message "39:'<:' is an alternate spelling" "39-alt" { target *-*-* } 19 }
     n.template Nested<B>::method();
-    n.template Nested<::B>::method();  // { dg-error "22: error: '<::' cannot begin|22: note: '<:' is an alternate" }
+    n.template Nested<::B>::method();  // { dg-error "22:'<::' cannot begin" "error" }
+// { dg-message "22:'<:' is an alternate" "note" { target *-*-* } 24 }
     Nested<B>::method();
-    Nested<::B>::method(); // { dg-error "11: error: '<::' cannot begin|11: note: '<:' is an alternate" }
+    Nested<::B>::method(); // { dg-error "11:'<::' cannot begin" "error" }
+// { dg-message "11:'<:' is an alternate" "note" { target *-*-* } 27 }
   }
 };
 
 template <int N> struct Foo2 {};
-template struct Foo2<::B>;  // { dg-error "21: error: '<::' cannot begin|21: note: '<:' is an alternate|25: error: type/value mismatch|25: error:   expected a constant" }
+template struct Foo2<::B>;  // { dg-error "21:'<::' cannot begin" "begin" }
+// { dg-message "21:'<:' is an alternate" "alt" { target *-*-* } 33 }
+// { dg-message "25:type/value mismatch" "mismatch" { target *-*-* } 33 }
+// { dg-error "25:expected a constant" "const" { target *-*-* } 33 }
 
 int value = 0;
 
 void func(void)
 {
-  Foo<::B> f; // { dg-error "cannot begin|alternate spelling" }
+  Foo<::B> f; // { dg-error "cannot begin" "begin" }
+// { dg-message "alternate spelling" "alt" { target *-*-* } 42 }
   f.Foo<B>::method();
-  f.Foo<::B>::method(); // { dg-error "8: error|8: note" }
+  f.Foo<::B>::method(); // { dg-error "8:cannot begin" "begin" }
+// { dg-message "8:alternate spelling" "alt" { target *-*-* } 45 }
 
   // Check cases where we the token sequence is the correct one, but there
   //  was no digraph or whitespaces in the middle, so we should not emit
   //  the special error message.
   Foo<: :B> k2;     // { dg-bogus "cannot begin|alternate spelling" "smart error should not be triggered here" }
   Foo[:B> k1;       // { dg-bogus "cannot begin|alternate spelling" "smart error should not be triggered here" } 
-// { dg-error "6: error: missing template arguments before" "" { target *-*-* } { 41 } }
-// { dg-error "9: error: expected primary-expression before ':' token" "" { target *-*-* } 41 }
-// { dg-error "9: error: expected '\]' before ':' token" "" { target *-*-* } 41 }
-// { dg-error "9: error: expected ';' before ':' token" "" { target *-*-* } 41 }
-// { dg-error "6: error: missing template arguments before" "" { target *-*-* } 42 }
-// { dg-error "7: error: expected primary-expression before ':' token" "" { target *-*-* } 42 }
-// { dg-error "7: error: expected '\]' before ':' token" "" { target *-*-* } 42 }
-// { dg-error "7: error: expected ';' before ':' token" "" { target *-*-* } 42 }
+// { dg-error "6:missing template arguments before" "template" { target *-*-* } { 51 } }
+// { dg-error "9:expected primary-expression before ':' token" "primary" { target *-*-* } 51 }
+// { dg-error "9:expected '\]' before ':' token" "backslash" { target *-*-* } 51 }
+// { dg-error "9:expected ';' before ':' token" "semicolon" { target *-*-* } 51 }
+// { dg-error "6:missing template arguments before" "template" { target *-*-* } 52 }
+// { dg-error "7:expected primary-expression before ':' token" "primary" { target *-*-* } 52 }
+// { dg-error "7:expected '\]' before ':' token" "backslash" { target *-*-* } 52 }
+// { dg-error "7:expected ';' before ':' token" "semicolon" { target *-*-* } 52 }
 //
   int Foo[2];
   Foo[::value] = 0;
 }
 
-template struct Foo<::B>; // { dg-error "20: error: '<::' cannot begin|20: note: '<:' is an alternate" }
+template struct Foo<::B>; // { dg-error "20:'<::' cannot begin" "begin" }
+// { dg-message "20:is an alternate" "alt" { target *-*-* } 66 }
 
 // On the first error message, an additional note about the use of 
 //  -fpermissive should be present
-// { dg-error "17: note: \\(if you use '-fpermissive' G\\+\\+ will accept your code\\)" "-fpermissive" { target *-*-* } 19 }
+// { dg-message "17:\\(if you use '-fpermissive' G\\+\\+ will accept your code\\)" "-fpermissive" { target *-*-* } 19 }
index b0025885bf4e0a5d97c9cbdc2a459628385e6063..3ebcf389413e3de39026977f9128b8c4d871dff8 100644 (file)
@@ -9,5 +9,5 @@ template <class A>
 struct Foo {};
 
 Foo<::B> foo;   // { dg-bogus "error" "error in place of warning" }
-// { dg-error "4: warning: '<::' cannot begin a template-argument list" "warning <::" { target *-*-* } 11 }
-// { dg-error "4: note: '<:' is an alternate spelling for '.'. Insert whitespace between '<' and '::'" "note <:" { target *-*-* } 11 }
+// { dg-warning "4: '<::' cannot begin a template-argument list" "warning <::" { target *-*-* } 11 }
+// { dg-message "4:'<:' is an alternate spelling for '.'. Insert whitespace between '<' and '::'" "note <:" { target *-*-* } 11 }
index 94ddae89705dfe6f3592dfe770b36c84b7c2b1c4..9bce98d7fc86d56d3a42c0ea19fa9fb8b15c3c82 100644 (file)
@@ -1,14 +1,14 @@
 // { dg-options "-fshow-column" }
 // PR c++/13975
 
-public: // { dg-error "1: error: expected unqualified-id before 'public'" }
+public: // { dg-error "1:expected unqualified-id before 'public'" }
 
 int i;
 
-protected: // { dg-error "1: error: expected unqualified-id before 'protected'" }
+protected: // { dg-error "1:expected unqualified-id before 'protected'" }
 
 int j;
 
-private: // { dg-error "1: error: expected unqualified-id before 'private'" }
+private: // { dg-error "1:expected unqualified-id before 'private'" }
 
 int k;
index 906b98f87e218ea492b4d8ea7d3a4891322f4881..9e672c286b25c0c0ac4d9db2fc35691c7c416cc1 100644 (file)
@@ -19,5 +19,8 @@ struct X
         Zinc<int>( //);
                  //    }
 
-}; // { dg-error "2: error: expected '.' at end of input|1: error: expected primary-expression before '.' token|1: error: expected ';' before '.' token|1: error: expected unqualified-id at end of input" }
+}; // { dg-error "2:expected '.' at end of input" "at end of input" }
+   // { dg-error "1:expected primary-expression before '.' token" "primary" { target *-*-* } 22 }
+   // { dg-error "1:expected ';' before '.' token" "semicolon" { target *-*-* } 22 }
+   // { dg-error "1:expected unqualified-id at end of input" "unqual" { target *-*-* } 22 }
 
index 5d30b554369716bdbb554675af650f5a2648e91a..c5d3d3d7d67643c3bf2b2250842f1ba83c95704b 100644 (file)
@@ -10,29 +10,32 @@ namespace N
   int K;
 }
 
-N::A f2;              // { dg-error "1: error: invalid use of template-name 'N::A' without an argument list" }
-N::INVALID f3;        // { dg-error "1: error: 'INVALID' in namespace 'N' does not name a type" }
-N::C::INVALID f4;     // { dg-error "1: error: 'INVALID' in class 'N::C' does not name a type" }
-N::K f6;              // { dg-error "1: error: 'K' in namespace 'N' does not name a type" }
-typename N::A f7;     // { dg-error "1: error: using 'typename' outside of template|13: error: invalid use of template-name 'N::A' without an argument list|17: error: invalid type in declaration before ';' token" }
+N::A f2;              // { dg-error "1:invalid use of template-name 'N::A' without an argument list" }
+N::INVALID f3;        // { dg-error "1:'INVALID' in namespace 'N' does not name a type" }
+N::C::INVALID f4;     // { dg-error "1:'INVALID' in class 'N::C' does not name a type" }
+N::K f6;              // { dg-error "1:'K' in namespace 'N' does not name a type" }
+typename N::A f7;     // { dg-error "1:using 'typename' outside of template" "1" }
+// { dg-error "13:invalid use of template-name 'N::A' without an argument list" "13" { target *-*-* } 17 }
+// { dg-error "17:invalid type in declaration before ';' token" "17" { target *-*-* } 17 }
 
 struct B
 {
-  N::A f2;            // { dg-error "3: error: invalid use of template-name 'N::A' without an argument list" }
-  N::INVALID f3;      // { dg-error "3: error: 'INVALID' in namespace 'N' does not name a type" }
-  N::C::INVALID f4;   // { dg-error "3: error: 'INVALID' in class 'N::C' does not name a type" }
-  N::K f6;            // { dg-error "3: error: 'K' in namespace 'N' does not name a type" }
-  typename N::A f7;   // { dg-error "3: error: using 'typename' outside of template|15: error: invalid use of template-name 'N::A' without an argument list" }
+  N::A f2;            // { dg-error "3:invalid use of template-name 'N::A' without an argument list" }
+  N::INVALID f3;      // { dg-error "3:'INVALID' in namespace 'N' does not name a type" }
+  N::C::INVALID f4;   // { dg-error "3:'INVALID' in class 'N::C' does not name a type" }
+  N::K f6;            // { dg-error "3:'K' in namespace 'N' does not name a type" }
+  typename N::A f7;   // { dg-error "3:using 'typename' outside of template" }
+// { dg-error "15:invalid use of template-name 'N::A' without an argument list" "15" { target *-*-* } 27 }
 };
 
 template <int>
 struct C
 {
-  N::A f2;            // { dg-error "3: error: invalid use of template-name 'N::A' without an argument list" }
-  N::INVALID f3;      // { dg-error "3: error: 'INVALID' in namespace 'N' does not name a type" }
-  N::C::INVALID f4;   // { dg-error "3: error: 'INVALID' in class 'N::C' does not name a type" }
-  N::K f6;            // { dg-error "3: error: 'K' in namespace 'N' does not name a type" }
-  typename N::A f7;   // { dg-error "15: error: invalid use of template-name 'N::A' without an argument list" }
+  N::A f2;            // { dg-error "3:invalid use of template-name 'N::A' without an argument list" }
+  N::INVALID f3;      // { dg-error "3:'INVALID' in namespace 'N' does not name a type" }
+  N::C::INVALID f4;   // { dg-error "3:'INVALID' in class 'N::C' does not name a type" }
+  N::K f6;            // { dg-error "3:'K' in namespace 'N' does not name a type" }
+  typename N::A f7;   // { dg-error "15:invalid use of template-name 'N::A' without an argument list" }
 };
 
 // { dg-bogus "bogus excess errors in declaration" "bogus excess errors in declaration" { target *-*-* } 17 }
index ddc302c7cd6aaa8d38cee7b5273b8717a8cb0300..ba9aacc26e3369b31b49217774fe71ba7c41e169 100644 (file)
@@ -3,7 +3,7 @@
 
 struct A
 {
-  struct B {}; // { dg-error "12: error: previous definition of 'struct A::B'" }
+  struct B {}; // { dg-error "12:previous definition of 'struct A::B'" }
 };
 
-struct A::B{}; // { dg-error "11: error: redefinition of 'struct A::B'" }
+struct A::B{}; // { dg-error "11:redefinition of 'struct A::B'" }
index defd708982d95423e3d9071dfec2c128404ed183..4cd4044e3d0913847a0cf4d708cf4a610185daa7 100644 (file)
@@ -2,8 +2,10 @@
 // PR c++/16965
 
 template <typename T> struct B { 
-  static int Bar(T); // { dg-error "14: error: candidates are: |14: error:  " }
+  static int Bar(T); // { dg-error "14:candidates are: " "1" }
+  // { dg-error "14:with T = int" "2" { target *-*-* } 5 }
 }; 
 struct D : B<int>, B<char> {}; 
  
-int i2 = D::Bar(2); // { dg-error "13: error: reference to 'Bar' is ambiguous|10: error: reference to 'Bar' is ambiguous" }
+int i2 = D::Bar(2); // { dg-error "13:reference to 'Bar' is ambiguous" }
+// { dg-error "10:reference to 'Bar' is ambiguous" "2" { target *-*-* } 10 }
index 926af11eb6a8f3ba106b20c4e864e5f1feb69e77..b5e722221b91af5a6c160eb8015bea650688e2a3 100644 (file)
@@ -3,6 +3,6 @@
 
 void f()
 {
-  double Q *= 5.0; // { dg-error "12: error: expected initializer before '..' token" }
+  double Q *= 5.0; // { dg-error "12:expected initializer before '..' token" }
 }
 
index b22156a5d717f5594ea41b4e7ebfee0ab418f647..5582891c9747b5289bac9c206fbc95ff2ec501e4 100644 (file)
@@ -2,7 +2,7 @@
 // PR C++/17867
 
 struct A
-{  // { dg-error "1: note: candidates are:" }
+{  // { dg-message "1:candidates are:" }
   A(int);
 };
 
@@ -10,5 +10,5 @@ const A& foo();
 
 void bar()
 {
-  foo()=A(0); // { dg-error "12: error: no match for 'operator='" }
+  foo()=A(0); // { dg-error "12:no match for 'operator='" }
 }
index 075dcc2b0d15c86dc733c485fedf06090441d508..619f89421d97ccc1dd3d9f37d6866e58137fd523 100644 (file)
@@ -8,8 +8,8 @@ int func(double);
 template <int>
 struct Foo {};
 
-Foo<func(g)> f; // { dg-error "5: error: 'int func.double.' cannot appear in a constant-expression" "" { target *-*-* } { 11 } }
-// { dg-error "10: error: 'g' cannot appear in a constant-expression" "" { target *-*-* } { 11 } }
-// { dg-error "11: error: a function call cannot appear in a constant-expression" "" { target *-*-* } { 11 } }
-// { dg-error "12: error: template argument 1 is invalid" "" { target *-*-* } { 11 } }
-// { dg-error "15: error: invalid type in declaration before ';' token" "" { target *-*-* } { 11 } }
+Foo<func(g)> f; // { dg-error "5:'int func.double.' cannot appear in a constant-expression" "" { target *-*-* } 11 }
+// { dg-error "10:'g' cannot appear in a constant-expression" "" { target *-*-* } 11 }
+// { dg-error "11:a function call cannot appear in a constant-expression" "" { target *-*-* } 11 }
+// { dg-error "12:template argument 1 is invalid" "" { target *-*-* } 11 }
+// { dg-error "15:invalid type in declaration before ';' token" "" { target *-*-* } 11 }
index 9564fab757b7ff89a8e9e2b1698fc7ff1957c9a9..d2f9353a7cc661ff5254211fed4c875bf77a3d9b 100644 (file)
@@ -12,7 +12,7 @@ struct C {
 };
 int main() {
   C c;
-  A(c.p.i); // { dg-error "9: error: request for member 'i' in 'c.C::p', which is of non-class type 'B" }
+  A(c.p.i); // { dg-error "9:request for member 'i' in 'c.C::p', which is of non-class type 'B" }
   return 0;
 }
 
index f60bf2b9c54aed23d860a1ce55137fe86de2662c..469e5fb4e1c607c561d96521c04649cad9abd3a4 100644 (file)
@@ -7,6 +7,7 @@ void foo()
 {
   // Check that we do not complain about an unused
   // compiler-generated variable.
-  A& = a; // { dg-error "6: error: expected unqualified-id before '=' token|8: error: 'a' was not declared in this scope" }
+  A& = a; // { dg-error "6:expected unqualified-id before '=' token" "6" }
+  // { dg-error "8:'a' was not declared in this scope" "8" { target *-*-* } 10 }
 }
 
index 30141219abc885e4250bcd23850d9a51af7be008..29552c67a6e41b2307dfbd05b7e0789a5b40d8bc 100644 (file)
@@ -2,5 +2,5 @@
 // PR c++/15786
 
 struct A {
-  void foo(bar* p); /* { dg-error "12: error: 'bar' has not been declared" } */
+  void foo(bar* p); /* { dg-error "12:'bar' has not been declared" } */
 };
index 21b24349608bb845714f1b3591819c408db88dc1..9c19b562c6daf0de4d0a6a211d9a73d2ff8c362c 100644 (file)
@@ -5,5 +5,5 @@ struct QChar {
   QChar( char c );
   QChar( const QChar& c );
   //following column number is not accurate enough but will make it for now
-  static const ; // { dg-error "10: error: declaration does not declare anything" }
+  static const ; // { dg-error "10:declaration does not declare anything" }
 };
index e341c341291da3868f5bd7a34a06d726f7fee803..c8ab6d9921aa19728d605803cd56f435f63b5982 100644 (file)
@@ -2,7 +2,7 @@
 // PR c++/19395
 
 struct A {
-  typedef int ::X; // { dg-error "17: error: typedef name may not be a nested-name-specifier" }
+  typedef int ::X; // { dg-error "17:typedef name may not be a nested-name-specifier" }
 };
 
 
index b5cb57ee1f045de68f155929acddab39078a9347..a0fd24c3a6f0509efd5d06ebd111ea83a7646696 100644 (file)
@@ -9,10 +9,10 @@
 class foo
 {
   virtual void bar1 () = 0;
-  virtual void bar2 () = __null;  // { dg-error "32: error: invalid pure specifier" }
-  virtual void bar3 () = 4;       // { dg-error "27: error: invalid pure specifier" }
-  virtual void bar4 () = A::f;    // { dg-error "27: error: invalid pure specifier" }
-  virtual void bar5 () = 0l;      // { dg-error "28: error: invalid pure specifier" }
-  virtual void bar6 () = 00;      // { dg-error "28: error: invalid pure specifier" }
-  virtual void bar7 () = 0x0;     // { dg-error "29: error: invalid pure specifier" }
+  virtual void bar2 () = __null;  // { dg-error "32:invalid pure specifier" }
+  virtual void bar3 () = 4;       // { dg-error "27:invalid pure specifier" }
+  virtual void bar4 () = A::f;    // { dg-error "27:invalid pure specifier" }
+  virtual void bar5 () = 0l;      // { dg-error "28:invalid pure specifier" }
+  virtual void bar6 () = 00;      // { dg-error "28:invalid pure specifier" }
+  virtual void bar7 () = 0x0;     // { dg-error "29:invalid pure specifier" }
 };
index 81f7ba6d382f7362dc7143356b5ff9713cf5f02c..befaf3bb3b86d741168aade9d2b3bc74d5434eef 100644 (file)
@@ -3,10 +3,12 @@
 
 void foo()
 {
-  if (({int c[2];})) ; // { dg-error "7: error: ISO C.. forbids|20: error: could not convert" }
+  if (({int c[2];})) ; // { dg-error "7:ISO C.. forbids" "7" }
+  // { dg-error "20:could not convert" "20" { target *-*-* } 6 }
 }
 
 void bar()
 {
-  if (({})); // { dg-error "7: error: ISO C.. forbids|11: error: could not convert" }
+  if (({})); // { dg-error "7:ISO C.. forbids" "7" }
+  // { dg-error "11:could not convert" "11" { target *-*-* } 12 }
 }
index f1fd5376e5972e65c4bcdf638b07d65b6bd3e920..c07d1d3a75835fff69650ce83cbd93f76ca1c515 100644 (file)
@@ -1,8 +1,8 @@
 // { dg-options "-fshow-column -ansi -pedantic-errors -Wno-long-long" }
 // PR c++/20152
 
-struct KrSelectionMode {  virtual void init() = 0; }; // { dg-error "24: error: previous definition of 'struct KrSelectionMode'" }
-struct KrKDESelectionMode : public KrSelectionMode { void init() { } }; // { dg-error "52: error: previous definition of 'struct KrKDESelectionMode'" }
-struct KrSelectionMode {  virtual void init() = 0; }; // { dg-error "8: error: redefinition of 'struct KrSelectionMode'" }
-struct KrKDESelectionMode : public KrSelectionMode { void init() { } }; // { dg-error "8: error: redefinition of 'struct KrKDESelectionMode'" }
+struct KrSelectionMode {  virtual void init() = 0; }; // { dg-error "24:previous definition of 'struct KrSelectionMode'" }
+struct KrKDESelectionMode : public KrSelectionMode { void init() { } }; // { dg-error "52:previous definition of 'struct KrKDESelectionMode'" }
+struct KrSelectionMode {  virtual void init() = 0; }; // { dg-error "8:redefinition of 'struct KrSelectionMode'" }
+struct KrKDESelectionMode : public KrSelectionMode { void init() { } }; // { dg-error "8:redefinition of 'struct KrKDESelectionMode'" }
 KrKDESelectionMode krKDESelectionMode;
index 7162afa3a02074e2aab3fe9ba9bbec5955482544..50ad960e09e9c80f8e7a309d2e3e917d4dea1c88 100644 (file)
@@ -2,10 +2,10 @@
 // PR c++/21908
 
 struct virt { virt () {} virt (int i) {} };
-struct der : public virtual virt { // { dg-error "34: note:                 der::der" }
-  der (int i) : virt(i) {} // { dg-error "3: note: candidates are: der" }
+struct der : public virtual virt { // { dg-message "34:der::der" }
+  der (int i) : virt(i) {} // { dg-message "3:candidates are: der" }
 };
 struct top : public der { 
   top () {} // { dg-bogus "der\\(const" }
 };
-// { dg-error "10: error: no matching function for call to 'der" "" { target *-*-* } 9 }
+// { dg-error "10:no matching function for call to 'der" "" { target *-*-* } 9 }
index fcd091b0b6509c20256f8473b5b7653de982288b..2c3a3a7f28880458207096dd43263927fac82da0 100644 (file)
@@ -7,7 +7,7 @@ struct A {
   void operator delete(void *);
 };
 struct B { 
-  friend void A::foo() {} // { dg-error "22: error: cannot define member function 'A::foo' within 'B'" }
-  friend void A::operator delete(void*) {} // { dg-error "39: error: cannot define member function 'A::operator delete' within 'B'" }
-  friend A::A() {} // { dg-error "15: error: cannot define member function 'A::A' within 'B'" }
+  friend void A::foo() {} // { dg-error "22:cannot define member function 'A::foo' within 'B'" }
+  friend void A::operator delete(void*) {} // { dg-error "39:cannot define member function 'A::operator delete' within 'B'" }
+  friend A::A() {} // { dg-error "15:cannot define member function 'A::A' within 'B'" }
 };
index 2856850fb76bb3545836c260313264257a9b087e..55ae024d41269ab0ef3860842f4b68f9c4b6bd2a 100644 (file)
@@ -5,5 +5,5 @@ static void InstantiateConstraint(const float&, unsigned,
                                   void(*AddFunction)(const TYPE&,bool&,
                                                      char*, char*,
                                                      unsigned*));
-// { dg-error "64: error: expected ',' or '...' before '&' token" "" { target *-*-* }  { 5 } }
-// { dg-error "60: error: ISO C\\+\\+ forbids declaration of 'TYPE' with no type" "" { target *-*-* } { 5 } }
+// { dg-error "64:expected ',' or '...' before '&' token" "" { target *-*-* }  { 5 } }
+// { dg-error "60:ISO C\\+\\+ forbids declaration of 'TYPE' with no type" "" { target *-*-* } { 5 } }
index 5c52d1ee67a706ddec09f2595f3966141a8fbe2b..26c55c49c68f723a02499502f5826f582455e533 100644 (file)
@@ -8,5 +8,5 @@ struct A
   A(int);
 };
 
-A a = -A();    // { dg-error "10: error: no match for.*operator-.*in.*-A\\(\\)" }
-A b = -A(5);   // { dg-error "11: error: no match for.*operator-.*in.*-A\\(5\\)" }
+A a = -A();    // { dg-error "10:no match for.*operator-.*in.*-A\\(\\)" }
+A b = -A(5);   // { dg-error "11:no match for.*operator-.*in.*-A\\(5\\)" }
index d354cc3e0dda8433cab6c54900802b06bf587a5d..e3928522711dda02fa99008c4a5623282dab4a19 100644 (file)
@@ -6,7 +6,7 @@ template<typename T> class foo{ };
 int main() {
     foo<int> i;
     // this column number is not accurate yet, but that will make it for now.
-    foo<foo<int> j; // { dg-error "18: error: template argument 1 is invalid" }
+    foo<foo<int> j; // { dg-error "18:template argument 1 is invalid" }
     int k;
     int l;
     foo<int> m;
index 790e5c9a40b6d6097b0f5dc396147a5f431bbded..792bf4dc063c9dbe5b50cabf3b1df83b772e51af 100644 (file)
@@ -7,4 +7,4 @@ struct X {
                 int);
 };
 
-// { dg-error "4: error: 'itn' has not been declared" "" { target *-*-* } { 6 } }
+// { dg-error "4:'itn' has not been declared" "" { target *-*-* } 6 }
index 8c9a039ac3ce65b15caf99af0d4bf0c70d2eeb60..6ebb087306b67597c5a68993a4cda05fdd1e4d8b 100644 (file)
@@ -3,17 +3,17 @@
 
 class Foo { int foo() return 0; } };
 
-// { dg-error "30: error: expected identifier before numeric constant" "" { target *-*-* } { 4 } }
+// { dg-error "30:expected identifier before numeric constant" "" { target *-*-* } 4 }
 
-// { dg-error "23: error: named return values are no longer supported" "" { target *-*-* } { 4 } }
+// { dg-error "23:named return values are no longer supported" "" { target *-*-* } 4 }
 
 // the column number info of this error output is still wrong because the error
 // message has been generated by cp_parser_error() which does not
 // necessarily allow accurate column number display. At some point, we will
 // need make cp_parser_error() report more accurate column numbers.
-// { dg-error "30: error: expected '\{' at end of input" "" { target *-*-* } { 4 } }
+// { dg-error "30:expected '\{' at end of input" "" { target *-*-* } 4 }
 
-// { dg-error "35: error: expected unqualified-id before '\}' token" "" {target *-*-*  } { 4 } }
+// { dg-error "35:expected unqualified-id before '\}' token" "" {target *-*-* } 4 }
 
-// { dg-error "35: error: expected declaration before '\}' token" "" {target *-*-*  } { 4 } }
+// { dg-error "35:expected declaration before '\}' token" "" {target *-*-* } 4 }
 
index cd1b6b8cd33850c16cd00a7d2c235d2ed20a83a2..81e04e21722e671dcebcbda29484379a7fad0480 100644 (file)
@@ -5,7 +5,7 @@ int f(int not) {
   return 1-not;
 } 
 
-// { dg-error "11: error: expected ',' or '...' before '!' token" "" { target *-*-* } { 4 } }
+// { dg-error "11:expected ',' or '...' before '!' token" "" { target *-*-* } 4 }
 
-// { dg-error "15: error: expected primary\\-expression before ';' token" "" { target *-*-* }  { 5 } }
+// { dg-error "15:expected primary\\-expression before ';' token" "" { target *-*-* } 5 }
 
index f71c9aa9fa0fdcccbf7022254dc6511e8aea6a5b..78b7caac9cd1cc04d9612787dcaff0c98f94d997 100644 (file)
@@ -4,4 +4,4 @@
 void f(int x
        int y);
 
-// { dg-error "8: error: expected ',' or '...' before 'int'" "" { target *-*-* } { 5 } }
+// { dg-error "8:expected ',' or '...' before 'int'" "" { target *-*-* } 5 }
index a399cfe63f777bdd02aa10282551997d02642355..ba572b0db7d84910cf5e2a9bf86cc27dd71006ad 100644 (file)
@@ -4,7 +4,7 @@
 struct A { friend typename struct B; };
 
 
-// { dg-error "19: error: using 'typename' outside of template" "" { target *-*-* } { 4 } }
-// { dg-error "28: error: expected nested-name-specifier before 'struct'" "" { target *-*-* } { 4 } }
-// { dg-error "35: error: multiple types in one declaration" "" { target *-*-* } { 4 } }
-// { dg-error "12: error: friend declaration does not name a class or function" "" { target *-*-* } { 4 } }
+// { dg-error "19:using 'typename' outside of template" "" { target *-*-* } 4 }
+// { dg-error "28:expected nested-name-specifier before 'struct'" "" { target *-*-* } 4 }
+// { dg-error "35:multiple types in one declaration" "" { target *-*-* } 4 }
+// { dg-error "12:friend declaration does not name a class or function" "" { target *-*-* } 4 }
index c1be6979b47d7f96a044168dda09c7bd9e6d694e..b16c84e81ffdacd105fec6ca3ee957b620ff5012 100644 (file)
@@ -5,5 +5,5 @@ enum { FOO = 1, BAR = 2 };
 int a[] = { FOO: 1, BAR: 2 };
 
 // the following 2 column locations are still not accurate enough
-// { dg-error "28: error: name 'FOO' used in a GNU-style designated initializer for an array" "" { target *-*-* }  { 5 } }
-// { dg-error "28: error: name 'BAR' used in a GNU-style designated initializer for an array" "" { target *-*-* }  { 5 } }
+// { dg-error "28:name 'FOO' used in a GNU-style designated initializer for an array" "" { target *-*-* } 5 }
+// { dg-error "28:name 'BAR' used in a GNU-style designated initializer for an array" "" { target *-*-* } 5 }
index 5e23f457829de1f55e758c184f8c0baa4ef61469..ec134c26ea905afe9f9b847e16ac8b5ea8a9cd33 100644 (file)
@@ -3,5 +3,6 @@
 extern "C" struct A
 {
   friend void foo(int) {} // { dg-error "declaration" }
-  friend void foo() {} // { dg-error "foo" }
+  friend void foo() {} // { dg-error "foo" "err" }
+  // { dg-warning "already a friend" "warn" { target *-*-* } 6 }
 };
index 37e480983f82861e0fa324559dcc277b53925a08..0b75d079135a89e64ebce19e72ca083af14ab875 100644 (file)
@@ -6,8 +6,9 @@ template <int I> struct A
 {
     template <int> struct B
     {
-        enum { e = I * A<I-1>::B }; // { dg-error "" }
+        enum { e = I * A<I-1>::B }; // { dg-error "dependent-name" "depname" }
+         // { dg-message "note" "note" { target *-*-* } 9 }
     };
 };
 
-A<0>::B<0> a; // { dg-error "instantiated" }
+A<0>::B<0> a; // { dg-message "instantiated" }
index 40f8502be376c899f8ee6f2a0542e73cc0f05340..e5e03146dbb223f42efc9d89a710595539365b62 100644 (file)
@@ -12,7 +12,9 @@ template <typename T> struct A
 
 template <typename T> void foo()
 {
-    typedef typename A<T>::B<T>::X Y; // { dg-error "" }
+    typedef typename A<T>::B<T>::X Y; // { dg-error "non-template" "non" }
+    // { dg-error "not declare" "decl" { target *-*-* } 15 }
+    // { dg-message "note" "note" { target *-*-* } 15 }
 }
 
 void bar()
index ef75c17aef39e87e9b6b5ae5eaf0fc65aed0b94f..4df2da7faf4bdf02c24413d77ac03fee5fe48dbd 100644 (file)
@@ -8,14 +8,14 @@
 template <class T>
 struct Foo {
   int j; // we never see this one.
-  int k; // { dg-error "" "" }
+  int k; // { dg-error "Foo" "" }
   
 };
 
 struct Baz 
 {
   int j;
-  int k; // { dg-error "" "" }
+  int k; // { dg-error "candidates" "" }
   
 };
 
@@ -31,7 +31,7 @@ int main()
   Bar<int> bar;
 
   bar.baz ();
-  bar.foo (); // { dg-error "instantiated" "" }
+  bar.foo (); // { dg-message "instantiated" "" }
   
   return 0;
 }
index 2e8fa36ec0cc7d9de9d837fd38cfc095c02938de..35638c28afc9a26d02249ac2fd360f58c8d4c32e 100644 (file)
@@ -1,5 +1,10 @@
-struct S {} f(); // { dg-error "" }
-struct T {} *g(); // { dg-error "" }
-struct U {} h() {} // { dg-error "" }
-struct V {} *i() {} // { dg-error "" }
-struct W {} (*p) (); // { dg-error "" }
+struct S {} f(); // { dg-error "return" "err" }
+// { dg-message "note" "note" { target *-*-* } 1 }
+struct T {} *g(); // { dg-error "return" }
+// { dg-message "note" "note" { target *-*-* } 3 }
+struct U {} h() {} // { dg-error "return" }
+// { dg-message "note" "note" { target *-*-* } 5 }
+struct V {} *i() {} // { dg-error "return" }
+// { dg-message "note" "note" { target *-*-* } 7 }
+struct W {} (*p) (); // { dg-error "return" }
+// { dg-message "note" "note" { target *-*-* } 9 }
index 7378570d65d3108616f2094d7e86b4e557753521..8a47f177205239744c46ad4662d3777d89771c14 100644 (file)
@@ -3,4 +3,5 @@
 // { dg-do compile }
 
 template <typename T> class A;
-template <typename T> class A<T>::B; // { dg-error "declaration" }
+template <typename T> class A<T>::B; // { dg-error "declaration" "err" }
+// { dg-warning "declaration" "warn" { target *-*-* } 6 }
index 532f9a48971c305d8a36b86387819b9fa9801434..98209b2449c02897609f3adfeac8e2a74d7dfa8d 100644 (file)
@@ -49,4 +49,4 @@ template<int I> void f2()
   A::template B<I>::template b2<double>(0);
 }
 
-template void f2<0>(); // { dg-error "instantiated" }
+template void f2<0>(); // { dg-message "instantiated" }
index 290721eaa53c1ed9979c561da0c24d9cc4827a63..d10d46d81334f9ad71c8f7bef43762d800a885ff 100644 (file)
@@ -13,5 +13,7 @@ struct X : Outer<b>::template Inner<T>
 {};
 
 template <bool b, typename T>
-struct Y : Outer<b>::Inner<T> {}; // { dg-error "" "" }
+struct Y : Outer<b>::Inner<T> {}; // { dg-error "used as template" "temp" }
+// { dg-error "expected" "exp" { target *-*-* } 16 }
+// { dg-message "note" "note" { target *-*-* } 16 }
 
index 90ce9fe61acf268464d8224545e1be33d2efb05d..17b7da91f375103a7bcc7d924fa89ac07ac86c15 100644 (file)
@@ -1,5 +1,6 @@
 template <typename T> 
 void f() {
-  g(); // { dg-error "" }
-  h(3); // { dg-error "" }
+  g(); // { dg-error "must be available" "err" }
+       // { dg-message "note" "note" { target *-*-* } 3 }
+  h(3); // { dg-error "must be available" }
 }
index 6b567a9fad551cb55a245c726559b52ba3f1c29a..43bae15eaf10decd8e570cbf67deff0f086bbeb6 100644 (file)
@@ -7,9 +7,7 @@ template <class T> struct S {
     typedef int X;
   };
   struct I2 : public I1 {
-    X x;    // { dg-error "does not name a type" }
+    X x;    // { dg-error "does not name a type" "name" }
+           // { dg-message "note" "note" { target *-*-* } 10 }
   };
 };
-
-// Additional notes on the same line are allowed
-// { dg-error "" "additional" { target *-*-* } 10 }
index 1b6dd870d1890cd3c6e635bc148936f767041cf3..a635213b3a7d30248638ff3eefc638f17ea814f7 100644 (file)
@@ -11,7 +11,8 @@ namespace N1 {
   int foo() 
   { 
     X x; 
-    f(x);     // { dg-error "" "" }
+    f(x);     // { dg-error "matching" "matching" }
+             // { dg-error "initializing" "initializing" { target *-*-* } 14 }
   }
 }
 
@@ -29,8 +30,9 @@ namespace N2 {
   int foo() 
   { 
     X<T> x; 
-    N2::f(x);   // { dg-error "" "" }
+    N2::f(x);   // { dg-error "matching" "matching" }
+               // { dg-error "initializing " initializing" { target *-*-* } 33 }
   }
 
-  template int foo<float>();  // { dg-error "instantiated from here" }
+  template int foo<float>();  // { dg-message "instantiated from here" }
 }
index cc4631a5f38a349cb1f2203015f96cfb2e239c48..8c142906a568afc47bd87e58c0a69ea50172cecc 100644 (file)
@@ -32,7 +32,7 @@ namespace N {
     template <> void f<double>(double )
     { 
       M::B::x = 0; 
-      M::f<long>(0);   // { dg-error "instantiated" }
+      M::f<long>(0);   // { dg-message "instantiated" }
     }
 
     void g(void)
@@ -47,7 +47,7 @@ namespace N {
 
   template <> void f<int>(int )
   { 
-    N::f<long>(0);        // { dg-error "instantiated" }
+    N::f<long>(0);        // { dg-message "instantiated" }
     M::A::x = 0; 
     M::B::x = 0;       // { dg-error "within this context" }
   }
index f061f6616eb899fe408b58e0312771a11203c054..4c8dce521a894a35da7b473dd34a9fe00a6982a6 100644 (file)
@@ -21,4 +21,4 @@ template <typename T> struct X::Y {
   typename T::X x;             // { dg-error "this context" }
 };
 
-template struct X::Y<A>;       // { dg-error "instantiated" }
+template struct X::Y<A>;       // { dg-message "instantiated" }
index 9da8ecf58bf7895f6a660deb6d947ed893a3a901..c5e3f110395a9237d4a787cf4b4187cc8438e42b 100644 (file)
@@ -15,6 +15,6 @@ class B {
 
 int main()
 {
-  A<B> ab;                             // { dg-error "instantiated" }
-  ab.f();                              // { dg-error "instantiated" }
+  A<B> ab;                             // { dg-message "instantiated" }
+  ab.f();                              // { dg-message "instantiated" }
 }
index e8ee1041d13c8bff15525ec42350af6cfc00f823..c7a155e8ba6d160f1498bd85f6bbca557c35063b 100644 (file)
@@ -13,5 +13,5 @@ class B {
 
 int main()
 {
-  A<B> ab;                             // { dg-error "instantiated" }
+  A<B> ab;                             // { dg-message "instantiated" }
 }
index 92d4c68db393f50d1f25ae65df612f69e5f69aea..412ad00c0b7d48a42534f52d9114055a703f3021 100644 (file)
@@ -14,5 +14,5 @@ typename A::T* f (A) {                        // { dg-error "this context" }
 }
 
 void g () {
-  f (S<int> ());                       // { dg-error "context|instantiated" }
+  f (S<int> ());                       // { dg-message "instantiated" }
 }
index 3b45cc08386f8c557d6ae96f0505b441b4129d68..e56545332aed73dfffcafc7553a589bef48e1a2d 100644 (file)
@@ -6,9 +6,9 @@
 
 struct A
 {
-  A(A&); // { dg-error "candidate" "" }
+  A(A&); // { dg-message "candidate" }
   template <class T> A(T); 
 };
 
-A a = 0; // { dg-error "no matching function|initializing" "" }
+A a = 0; // { dg-error "no matching function" }
 
index 50ec37f2eae2ed918affc892563d73ddd3d87f45..0518666d1e56c3798aa094827baecd117f979ef9 100644 (file)
@@ -15,4 +15,4 @@ template <typename T> struct C
     X::Y;                      // { dg-error "not a base type" }
 };
 
-C<void> c;                     // { dg-error "instantiated" }
+C<void> c;                     // { dg-message "instantiated" }
index 0d837bd132d35e193d7367353792815405532dbe..8af516018f7f85cb70576a0b07f8cb2f475d1f96 100644 (file)
@@ -11,7 +11,7 @@ struct coperator_stack
 struct helper {};
 
 template<class F>
-void bla(F f) // { dg-error "candidates" }
+void bla(F f) // { dg-message "candidates" }
 {
 }
 
@@ -20,7 +20,7 @@ struct definition
 {
  definition()
  {
-   bla(coperator_stack::push3<helper>); // { dg-error "" }
+   bla(coperator_stack::push3<helper>); // { dg-error "matching" }
  }
 };
 
index 716b4a2613739a6e7103947a216bc90a7b9dde93..45123dd0d0576b0228206404ef796e88c41005eb 100644 (file)
@@ -7,4 +7,4 @@ template<typename T> void foo()
   T::~T(); // { dg-error "member" }
 }
 
-template void foo<A>(); // { dg-error "instantiated" }
+template void foo<A>(); // { dg-message "instantiated" }
index af2172c67326a71bcd1825c6cae1ce2d1927a399..5194ee263c0953c1dcd363433ed68f62a45ecb98 100644 (file)
@@ -1,6 +1,6 @@
 //PR 26938
 
-template<int, int = 0> struct A;  // { dg-error "previous declaration" }
+template<int, int = 0> struct A;  // { dg-message "previous declaration" }
 
 template<int> struct A            // { dg-error "template" }
 {
index ed462ac9d19e488632e712de39f63780e07cf1b7..a12bd8bddaa2e9e3a421175f5d9d05e66fc46e41 100644 (file)
@@ -5,5 +5,5 @@ namespace a {
 }
 
 namespace b {
-  template <> class ::a::Foo<double> {}; // { dg-error "error: global qualification of class name is invalid" }
+  template <> class ::a::Foo<double> {}; // { dg-error "global qualification of class name is invalid" }
 }
index 18e55d179fafd137de3bdc90765372986c272d0b..6938b36b62ff3121456183e77ad59c377c1e31a9 100644 (file)
@@ -5,4 +5,4 @@ template<typename T> struct A
   A() : T(0) {} // { dg-error "base" }
 };
 
-A<int*> a; // { dg-error "instantiated" }
+A<int*> a; // { dg-message "instantiated" }
index 023f433da5da0d6f0674d759b6c38af42ab3e320..64e86c7289ff8917329a0f41920abb822e120c5a 100644 (file)
@@ -7,14 +7,14 @@
 template<class F> void bind(F f) {}
 
 template<class F> void bindm(F f) {}
-template<class F, class T> void bindm(F (T::*f)(void)) {} // { dg-error "note" }
+template<class F, class T> void bindm(F (T::*f)(void)) {} // { dg-message "note" }
 
 template<class F> void bindn(F f) {}
 template<class F, class T> void bindn(F (*f)(T)) {}
 
 template<class F> void bindb(F f) {}
-template<class F, class T> void bindb(F (*f)(T)) {} // { dg-error "note" }
-template<class F, class T> void bindb(F (T::*f)(void)) {} // { dg-error "note" }
+template<class F, class T> void bindb(F (*f)(T)) {} // { dg-message "note" }
+template<class F, class T> void bindb(F (T::*f)(void)) {} // { dg-message "note" }
 
 struct foo {
   static int baist;
index 8ec767d39334130069a0e5f44064c0dcf971faaf..d2c049c8a0626f3d3db327ff870e39e5977ad646 100644 (file)
@@ -7,4 +7,4 @@ template<typename T> struct A
     void foo() throw(typename T::X);  // { dg-error "not a class" }
 };
 
-A<void> a;                            // { dg-error "instantiated" }
+A<void> a;                            // { dg-message "instantiated" }
index 0f3e975cd4ff843429db936dcdf8e263e31ca368..86486a2e7f262fed63a5e2c0a79a69e3dd0b74af 100644 (file)
@@ -7,22 +7,24 @@
 
 template<class T> struct X
 {
-  T m; // { dg-error "" "" }
+  T m; // { dg-error "as type 'void'" "void" }
+       // { dg-error "incomplete type" "incomplate" { target *-*-* } 10 }
+       // { dg-error "invalid" "invalid" { target *-*-* } 10 }
 };
 
 template<class T >
 struct Derived
 {
   class Nested : public X<T>
-  { // { dg-error "instantiated" "" }
+  { // { dg-message "instantiated" "" }
   };
   
-  Nested m; // { dg-error "instantiated" "" }
+  Nested m; // { dg-message "instantiated" "" }
   
   void Foo ();
 };
 
 void Foo (Derived<void> &x)
 {
-  x.Foo (); // { dg-error "instantiated" "" }
+  x.Foo (); // { dg-message "instantiated" "" }
 }
index e1ac82210bfc7f735f5e74259ab3906ca933eb34..b6a2a8ae8200903d053e1f0b56eb4073af34cfc1 100644 (file)
@@ -6,6 +6,7 @@ template<int> struct A
     A() { ++i; }
 };
 
-template<int> int A<0>::i(0);  // { dg-error "template" }
+template<int> int A<0>::i(0);  // { dg-error "template" "error" }
+// { dg-message "note" "note" { target *-*-* } 9 }
 
 A<0> a;
index a3196ee8e778620b6c57932b2d87007d91d3496f..12942fcb7732e66e528c1bc66e11d941c9a5b2c8 100644 (file)
@@ -5,4 +5,5 @@ template<class T> struct C1
 };
 
 template<class T, class U>
-void foo(typename C1<T>::C2<U>::Type *) { } // { dg-error "template" }
+void foo(typename C1<T>::C2<U>::Type *) { } // { dg-error "template" "error " }
+// { dg-message "note" "note" { target *-*-* } 8 }
index 222ce238d78652f1fe996b8fd1aa3b93df66c17f..5e60540b693beda186fae94503e1c70b3b82b7c1 100644 (file)
@@ -5,7 +5,7 @@
 // PR c++/15410: Declaration of friend class template with wrong
 // template parameter.
 
-template <typename T, typename U> struct F; // { dg-error "previous declaration" }
+template <typename T, typename U> struct F; // { dg-message "previous declaration" }
 
 class W
 {
index 4ce2ba3f2cca83bebadf015b64383b8bb17a7beb..81e6390d798eaf0d1acb41d693f24fa03a5d1111 100644 (file)
@@ -17,5 +17,5 @@ template<class T> class B
 
 int f ()
 {
-  B<int> b;                    // { dg-error "instantiated" }
+  B<int> b;                    // { dg-message "instantiated" }
 }
index 04d68c3e0f0225ab5269b55c5abd5dc53373e34c..814fec1d5f70b714fe975e45b70ac96f026db584 100644 (file)
@@ -3,7 +3,7 @@
 
 template<int> struct A
 {
-  friend int foo(); // { dg-error "14: error: new declaration" }
+  friend int foo(); // { dg-error "14:new declaration" }
 };
 
-void foo() { A<0> a; } // { dg-error "6: error: ambiguates old declaration" } 
+void foo() { A<0> a; } // { dg-error "6:ambiguates old declaration" } 
index 0c739d0f61550a5724bbebc8e434af679dc6ad13..828f2e9c56489a6029c61ec0ed1285cf6d6dc7ab 100644 (file)
@@ -9,11 +9,11 @@ template <class T> struct X {
 };
 
 template <class T> struct Y {
-  X<T> x;                      // { dg-error "instantiated" }
+  X<T> x;                      // { dg-message "instantiated" }
 };
 
 template <class T> struct Z {  // { dg-error "declaration" }
-  Y<Z<T> > y;                  // { dg-error "instantiated" }
+  Y<Z<T> > y;                  // { dg-message "instantiated" }
 };
 
 struct ZZ : Z<int>
index 4644fd02b550862ed7c249ad810e595a60b7752b..de3d3a084c9b4b413bd99a79b34401e25a04a2d0 100644 (file)
@@ -14,4 +14,4 @@ struct ACE_Cleanup_Adapter
   TYPE object_;                // { dg-error "incomplete type" }
 };
 
-template class ACE_Cleanup_Adapter<ACE_Null_Mutex>; // { dg-error "instantiated from here" }
+template class ACE_Cleanup_Adapter<ACE_Null_Mutex>; // { dg-message "instantiated from here" }
index 8d07635629490c9fecd1adf1432a980571f45640..70ed2b059f90eefbcbc4b3bf4607750d3a020bd5 100644 (file)
@@ -13,7 +13,7 @@ int baz() { return A<0>::i; }
 
 struct B
 {
-  static void foo (int);       // { dg-error "candidates" }
+  static void foo (int);       // { dg-message "candidates" }
 };
 
 template <typename T> struct C
@@ -21,4 +21,4 @@ template <typename T> struct C
   virtual void bar() const { T::foo(); } // { dg-error "no matching function" }
 };
 
-C<B> c;                                // { dg-error "instantiated" }
+C<B> c;                                // { dg-message "instantiated" }
index 14a1a33cf2124afc0ddfa40454859d9060c74bfd..2e54106ffdd2e923197b3edc4c7a26b0a1b588df 100644 (file)
@@ -7,4 +7,4 @@ template<typename T> struct A
     template<T&> struct B;  // { dg-error "reference to void" }
 };
 
-A<void> a;                  // { dg-error "instantiated" }
+A<void> a;                  // { dg-message "instantiated" }
index 3472f59a7d70e1db2a0565fbb1ab120e0f6b4da5..7094e7480d83df42adbd1250a445c7807494444e 100644 (file)
@@ -1,10 +1,10 @@
 template <class T> struct PCVector2
-{ // { dg-error "" }
+{ // { dg-message "candidates" }
     template <class T2> PCVector2(const PCVector2<T> &cv) ;
 
     PCVector2<T> operator- (const PCVector2<T> &ov) const 
        { 
-         return PCVector2<T>(ov.xFIELD, ov.yFIELD); // { dg-error "" }
+         return PCVector2<T>(ov.xFIELD, ov.yFIELD); // { dg-error "matching" }
        }
 
     T xFIELD, yFIELD;
@@ -15,5 +15,5 @@ void findIntersection( PCVector2<double>& p0, PCVector2<double>& p1);
 
 void findIntersection( PCVector2<double>& p0, PCVector2<double>& p1)
 {
-    PCVector2<double> e = p1 - p0;     // { dg-error "" }
+    PCVector2<double> e = p1 - p0;     // { dg-message "instantiated" }
 }
index 493b807aec98a3b576bdd1065ffbc323395fd370..15ab352682f5182ed24f6d693753c787a62159ad 100644 (file)
@@ -14,5 +14,5 @@ template <typename T> void Bar ()
 
 void Foo ()
 {
-  Bar<B> (); // { dg-error "instantiated" "" }
+  Bar<B> (); // { dg-message "instantiated" "" }
 }
index 45dcd6c6c66607123fba58ec8b81a0e0fc53d927..ba6a9705bee7ea6d044ef23f2dbc052b2456ce5f 100644 (file)
@@ -27,6 +27,7 @@ struct S {
 
 template< typename _A > void S::foo() {} 
 
-template void S::foo< 0 >();    // { dg-error "no definition available|instantiated from here" }
+template void S::foo< 0 >();    // { dg-error "no definition available" "no def" }
+                               // { dg-message "instantiated" "instantiated" { target *-*-* } 30 }
 
 }
index 08db7aef65526d7a850f5f9fd5117b436c21d671..c12ec4b5af2c04e5172d12dcd4f6e4af9eb8dbe7 100644 (file)
@@ -30,5 +30,5 @@ template<class T> void A<T>::B2::f()
 int main()
 {
   A<int>::B2 b1;
-  b1.f();      // { dg-error "instantiated" }
+  b1.f();      // { dg-message "instantiated" }
 }
index a4eeafd79fec7e7331108db262ddbfd4e9c86ce5..2827ef3f7a19b68e001707e8afd5a60ee6a91196 100644 (file)
@@ -30,5 +30,5 @@ template<class T> template <class U> void A<T>::B2<U>::f()
 int main()
 {
   A<int>::B2<int> b1;
-  b1.f();      // { dg-error "instantiated" }
+  b1.f();      // { dg-message "instantiated" }
 }
index fd26bc0171e17a71105156aa986f87db40c46e58..5e163fa477a85769ca47b886470e42028ddd0438 100644 (file)
@@ -43,4 +43,4 @@ void A<T>::B::func2(void)
     (void)F2<T*>::foo;
 }
 
-template class A<int>; // { dg-error "instantiated" }
+template class A<int>; // { dg-message "instantiated" }
index aed029500af7e04a6561cecf0ae968c22614a645..1583646c0dfe2bd2a82e3d431d3e1493a12039ba 100644 (file)
@@ -116,18 +116,18 @@ template <> void A<char>::j<0>()
 int main()
 {
   A<int *> a1;
-  a1.f(0);                             // { dg-error "instantiated" }
-  a1.g<char>();                                // { dg-error "instantiated" }
-  a1.g<int>();                         // { dg-error "instantiated" }
-  a1.h();                              // { dg-error "instantiated" }
-  a1.i('a');                           // { dg-error "instantiated" }
-  a1.j<1>();                           // { dg-error "instantiated" }
+  a1.f(0);                             // { dg-message "instantiated" }
+  a1.g<char>();                                // { dg-message "instantiated" }
+  a1.g<int>();                         // { dg-message "instantiated" }
+  a1.h();                              // { dg-message "instantiated" }
+  a1.i('a');                           // { dg-message "instantiated" }
+  a1.j<1>();                           // { dg-message "instantiated" }
   A<char> a2;
   a2.f(0);
-  a2.g<char>();                                // { dg-error "instantiated" }
+  a2.g<char>();                                // { dg-message "instantiated" }
   a2.g<int>();
   a2.h();
   a2.i('a');
-  a2.j<1>();                           // { dg-error "instantiated" }
+  a2.j<1>();                           // { dg-message "instantiated" }
   a2.j<0>();
 }
index 077bf60cb80e43a2ff034683be12f0f683057474..6fd024a26330eb44ac3622b8914e7211da0af222 100644 (file)
@@ -5,4 +5,4 @@ struct S
   S() : S() {} // { dg-error "base" }
 };
 
-S<int> s; // { dg-error "instantiated" }
+S<int> s; // { dg-message "instantiated" }
index 0094783166a6845efc714684ec681e6b740fdc58..1ae4bf7647d4ac4a05c68042809ad9baee9db615 100644 (file)
@@ -5,24 +5,27 @@ class A {
     int _k;
   };
   T1 _t1;
-  T2 _t2; // { dg-error "instantiated" }
+  T2 _t2; // { dg-message "instantiated" }
 };
 
 template <class U>
-class B { // { dg-error "" }
+class B { // { dg-error "declaration" }
   class SubB1 {
-    B _i; // { dg-error "" }
+    B _i; // { dg-error "incomplete type" }
   };
 
   class SubB2 {
     int _j;
   };
-  A<U,SubB1>::SubA<SubB2> _a; // { dg-error "" }
+  A<U,SubB1>::SubA<SubB2> _a; // { dg-error "not a base type" "not base" }
+               // { dg-message "note" "note" { target *-*-* } 20 }
+               // { dg-message "instantiated" "inst" { target *-*-* } 20 }
+               // { dg-error "non-template" "non-template" { target *-*-* } 20 }
 };
 
 
 int main() {
-  B<char> objB; // { dg-error "instantiated" }
+  B<char> objB; // { dg-message "instantiated" }
 
   return 0;
 }
index c6c108903e179c89419916db98a31cd59698f6e7..50be5f1c3ba1d9ca1feedd6be0b0efd167539d86 100644 (file)
@@ -1,4 +1,4 @@
-extern void *operator new(__SIZE_TYPE__); // { dg-error "candidate" }
+extern void *operator new(__SIZE_TYPE__); // { dg-message "candidate" }
 
 template <class T >
 struct C
index 9d400d5b10433319a7f6182fed3f74e55426168e..41243649a11d22cb1ca0980f8dd1959fe28ec5c4 100644 (file)
@@ -9,4 +9,4 @@ template <typename T> struct D
    C<T::X> c;                   // { dg-error "parsed as a non-type|if a type is meant" }
 };
 
-D<B> d;                         // { dg-error "instantiated from here" }
+D<B> d;                         // { dg-message "instantiated from here" }
index 0200e870b956f0a170e9478a1dd8c09738aba228..a290ec337ea041e0f956aa73ac182266bd317a67 100644 (file)
@@ -9,7 +9,7 @@ template<typename T> struct A
 };
 
 A<char>   a1;
-A<double> a2;                                   // { dg-error "instantiated" }
+A<double> a2;                                   // { dg-message "instantiated" }
 
 template<typename T> struct B
 {
@@ -27,9 +27,9 @@ template<typename T> struct C
   template<T> int foo();                        // { dg-error "double" }
 };
 
-template<typename T> int baz(T) { C<T> c; }     // { dg-error "instantiated" }
+template<typename T> int baz(T) { C<T> c; }     // { dg-message "instantiated" }
 
 void foobar()
 {
-  baz(1.2);                                     // { dg-error "instantiated" }
+  baz(1.2);                                     // { dg-message "instantiated" }
 }
index 9b76d1aa65abfffdc45c8bbdd948ac193eecc6e2..6fffb8d8e5353204e4bfbd496cc307a8a805cf51 100644 (file)
@@ -24,6 +24,6 @@ struct Dummy
 int main()
 {
   Dummy<int> d;
-  d.tester<true> (); // { dg-error "instantiated" }
+  d.tester<true> (); // { dg-message "instantiated" }
 }
 
index 298ce82591c98cfaa9eda13a45bf86fbf33d866a..97b093ae5517ec475e43b2697a17f29e506d07a8 100644 (file)
@@ -12,8 +12,8 @@ struct A
 template <class T>
 void func(void)
 {
-  (void)A<T>::type();   // { dg-error "if a type is meant" }
-// { dg-error "parsed as a non-type" "non-type" { target *-*-* } 15 }
+  (void)A<T>::type();   // { dg-error "non-type" "non-type" }
+// { dg-message "if a type" "note" { target *-*-* } 15 }
 }
 
-template void func<float>(void);    // { dg-error "instantiated from here" }
+template void func<float>(void);    // { dg-message "instantiated from here" }
index bc73c41fc8870bd9dd94ec7e770238992854ecc7..cef8ebe9fc801008f85f86c9236c09d7df847f43 100644 (file)
@@ -7,7 +7,7 @@ template <typename T> A<T>& operator<<(A<T>&, const B<T>&);
 template <typename T>
 struct A 
 {
-  A<T>& operator<<(A<T>& (*)(A<T>&)); // { dg-error "candidate" }
+  A<T>& operator<<(A<T>& (*)(A<T>&)); // { dg-message "candidate" }
 };
 
 template <typename T> A<T>& foo(A<T>&);
index 553d2953fd9cd40b1dd926fe39f86df4742aa586..b52ff89174a6fc3c661d9203659a8b4ee2c36cc7 100644 (file)
@@ -6,4 +6,4 @@ template<typename T> struct A
     T A::* p;  // { dg-error "void" }
 };
 
-A<void> a;     // { dg-error "instantiated" }
+A<void> a;     // { dg-message "instantiated" }
index 154f17a8d86f296a335d19ded63aef92c4a27985..a79e3c882fa175e3a347326b8e83ca413cb55018 100644 (file)
@@ -7,4 +7,4 @@ template<int> struct A
   ~A() { &A::i; } // { dg-error "reference" }
 };
 
-A<0> a; // { dg-error "instantiated" }
+A<0> a; // { dg-message "instantiated" }
index db80eecf830f8ecbc54b8e7739adb02c7c54ab26..0ea73a13106bf66c871b788b3dfd0586475f1314 100644 (file)
@@ -6,7 +6,7 @@
 // Pointer to member function template argument deduction ICE.
 
 
-template <class CONT> void queryAliases(CONT& fill_me); // { dg-error "candidates" }
+template <class CONT> void queryAliases(CONT& fill_me); // { dg-message "candidates" }
 
 struct SpyExample
 {
@@ -16,5 +16,5 @@ struct SpyExample
 
 void SpyExample::ready()
 {
-  queryAliases(inputs); // { dg-error "" }
+  queryAliases(inputs); // { dg-error "matching" }
 }
index 0d7dec219813d585c2590a6f2097d9edd84376ff..a355cfe893991d87be9baa37c64fcf68f9a4971d 100644 (file)
@@ -4,7 +4,7 @@ void g(int S::**);
 
 template <typename T>
 void f (int T::* volatile *p) {
-  g(p); // { dg-error "" }
+  g(p); // { dg-error "conversion" }
 }
 
-template void f(int S::* volatile *); // { dg-error "instantiated" }
+template void f(int S::* volatile *); // { dg-message "instantiated" }
index 588ac1fc50a2fc5caea7d9b194e188870787a3a3..e25b4084129b7236c638144792b24aeb38915f5a 100644 (file)
@@ -15,6 +15,10 @@ template <int (D::*fun)() const> int Get();
 
 int main () 
 {
-  Get<&B::I>();   // { dg-error "" }
-  Get<&D::I>();   // { dg-error "" }
+  Get<&B::I>();   // { dg-error "not a valid template argument" "not valid" }
+  // { dg-error "no match" "no match" { target *-*-* } 18 }
+  // { dg-message "note" "note" { target *-*-* } 18 }
+  Get<&D::I>();   // { dg-error "not a valid template argument" "not valid" }
+  // { dg-error "no match" "no match" { target *-*-* } 21 }
+  // { dg-message "note" "note" { target *-*-* } 21 }
 }
index 967764281c03f20b6ccb63cba3e137f493d29921..602be5bf154c02a677eb6293d9a3d83f07dcd8db 100644 (file)
@@ -16,11 +16,12 @@ template <> struct A::B<false> {};
 
 template <typename T> void foo()
 {
-  T::C (); // { dg-error "parsed as a non-type|if a type is meant" "" }
-  T::template B<false>(); // { dg-error "parsed as a non-type|if a type is meant" "" }
+  T::C (); // { dg-error "parsed as a non-type|if a type is meant" }
+  T::template B<false>(); // { dg-error "parsed as a non-type" "non-type" }
+                         // { dg-message "if a type" "if a type" { target *-*-* } 20 }
 }
 
 void bar()
 {
-  foo<A>(); // { dg-error "instantiated" "" }
+  foo<A>(); // { dg-message "instantiated" }
 }
index ae20d7629020fe28badceebb28669c7b1e14247f..d65fd1b61e73fdc1a03a50132fb60941cc241438 100644 (file)
@@ -32,5 +32,5 @@ template <typename T> struct B2 : T
   myconst b;
 };
 
-B1<AS> b1;     // { dg-error "instantiated" "" }
+B1<AS> b1;     // { dg-message "instantiated" "" }
 B2<AS> b2;
index 929fa628ca73e92bf13dd3423dc19de4ac27411a..4b9ffe34ea6fb0740440dae0e98dba48e5773880 100644 (file)
@@ -14,10 +14,10 @@ template <template <class> class TT> struct X
 
 template <class T> struct C
 {
-       X<T::template B> x; // { dg-error "type" "" }
+       X<T::template B> x; // { dg-error "type" }
 };
 
 int main()
 {
-       C<A> c; // { dg-error "instantiated" }
+       C<A> c; // { dg-message "instantiated" }
 }
index 04335f16cc8b7667a66c78005e762e466c12a846..c55ce2d3750a1a151727fb9dfe667d60255c5edb 100644 (file)
@@ -10,7 +10,7 @@ struct A
 template <template <class, class> class TT> // { dg-error "provided" }
 struct X
 {
-       TT<int> y; // { dg-error "number|type" }
+       TT<int> y; // { dg-error "number" }
 };
 
 template <class T> struct C
@@ -20,5 +20,5 @@ template <class T> struct C
 
 int main()
 {
-       C<A> c; // { dg-error "instantiated" }
+       C<A> c; // { dg-message "instantiated" }
 }
index 7ac7a315abb823a85afd3aed4bfe72af0347253a..7d1062e3a8fb6adc584087cf3e56ab4034cdb49b 100644 (file)
@@ -4,7 +4,7 @@
 
 template <class U> struct A
 {
-       template <class T> class B {}; // { dg-error "candidates" }
+       template <class T> class B {}; // { dg-message "candidates" }
 };
 
 template <template <class> class TT> void f()
@@ -15,11 +15,11 @@ template <template <class> class TT> void f()
 
 template <class T> struct C
 {
-       void g() { f<A<T>::template B>(); } // { dg-error "instantiated" }
+       void g() { f<A<T>::template B>(); } // { dg-message "instantiated" }
 };
 
 int main()
 {
        C<int> c;
-       c.g(); // { dg-error "instantiated" }
+       c.g(); // { dg-message "instantiated" }
 }
index 046895830d838e384623a38f6b5495be04a69e33..aa1a4670033d08c9fb43c873367cc29caed18191 100644 (file)
@@ -12,4 +12,4 @@ template <class T> struct D {
 struct E {
 };
 
-D<E> d; // { dg-error "instantiated" }
+D<E> d; // { dg-message "instantiated" }
index f6573ac5d9516932fa421d3cc40db4c0e07267c8..f37123e778fbfe75a3d44c0569e4f281451ba655 100644 (file)
@@ -9,4 +9,4 @@ template <class T> struct D {
        C<T::template B> c; // { dg-error "no class template" }
 };
 
-D<int> d; // { dg-error "instantiated" }
+D<int> d; // { dg-message "instantiated" }
index da67a09fc46837312dea41c9acf35ae945c7c94f..5f55e60b3165c42520796331c6dc2ec46ca01aba 100644 (file)
@@ -14,4 +14,4 @@ struct E {
        template <class T> class B {}; // { dg-error "private" }
 };
 
-D<E> d; // { dg-error "instantiated" }
+D<E> d; // { dg-message "instantiated" }
index ce4c9268cfe0523787de01180362e8cbdded7e6d..25552d05ef97692aedbff335ee82efd877a21a20 100644 (file)
@@ -5,8 +5,9 @@ template <int I> struct F
 {
   int operator()()
     {
-      F<I+1> f;                        // { dg-error "" "" }
-      return f()*I;             // { dg-error "" "" }
+      F<I+1> f;                        // { dg-error "incomplete type" "incomplete" }
+                               // { dg-error "exceeds maximum" "exceeds" { target *-*-* } 8 }
+      return f()*I;             // { dg-message "instantiated" "recurse" }
     }
 };
 
@@ -18,5 +19,8 @@ template <> struct F<52>
 int main ()
 {
   F<1> f;
-  return f();          // { dg-error "instantiate" "excessive recursion" }
+  return f();          // { dg-message "instantiated from here" "excessive recursion" }
 }
+
+// Ignore excess messages from recursion.
+// { dg-prune-output "instantiated from 'int" }
index e0680db65a60efde763f011d432af56a0ffd4f25..f44c4458f35fc100e3a863714c596865a801db2c 100644 (file)
@@ -169,13 +169,13 @@ STATIC_ASSERT((has_postdecrement<X>::value));
 STATIC_ASSERT((!has_postdecrement<Y>::value));
 
 // Check for private members
-STATIC_ASSERT((has_unary_plus<Z>::value)); // { dg-error "instantiated from here" }
-STATIC_ASSERT((is_negatable<Z>::value)); // { dg-error "instantiated from here" }
-STATIC_ASSERT((is_dereferenceable<Z>::value)); // { dg-error "instantiated from here" }
-STATIC_ASSERT((has_bitwise_not<Z>::value)); // { dg-error "instantiated from here" }
-STATIC_ASSERT((has_truth_not<Z>::value)); // { dg-error "instantiated from here" }
-STATIC_ASSERT((has_preincrement<Z>::value)); // { dg-error "instantiated from here" }
-STATIC_ASSERT((has_predecrement<Z>::value)); // { dg-error "instantiated from here" }
-STATIC_ASSERT((has_postincrement<Z>::value)); // { dg-error "instantiated from here" }
-STATIC_ASSERT((has_postdecrement<Z>::value)); // { dg-error "instantiated from here" }
+STATIC_ASSERT((has_unary_plus<Z>::value)); // { dg-message "instantiated from here" }
+STATIC_ASSERT((is_negatable<Z>::value)); // { dg-message "instantiated from here" }
+STATIC_ASSERT((is_dereferenceable<Z>::value)); // { dg-message "instantiated from here" }
+STATIC_ASSERT((has_bitwise_not<Z>::value)); // { dg-message "instantiated from here" }
+STATIC_ASSERT((has_truth_not<Z>::value)); // { dg-message "instantiated from here" }
+STATIC_ASSERT((has_preincrement<Z>::value)); // { dg-message "instantiated from here" }
+STATIC_ASSERT((has_predecrement<Z>::value)); // { dg-message "instantiated from here" }
+STATIC_ASSERT((has_postincrement<Z>::value)); // { dg-message "instantiated from here" }
+STATIC_ASSERT((has_postdecrement<Z>::value)); // { dg-message "instantiated from here" }
 
index 8d141ea0ad136c208db93187c405c4db7b028afe..5799a364e4253d74c77a7fd3a58fbb9bd9ab54c0 100644 (file)
@@ -9,7 +9,7 @@ template<typename> struct A
 
 template<typename> struct B
 {
-  B(const B&); // { dg-error "candidate" }
+  B(const B&); // { dg-message "candidate" }
   typedef typename A<char[A<B>::i]>::X Y;
   template<typename T> B(T, Y); // { dg-error "call" }
 };
index a091b0f36bf6517062bd680b8e9fd0a530f7226f..7e627f16763b12a0e6cdbcae47c96fb313024b5d 100644 (file)
@@ -8,11 +8,11 @@
 template <typename T> class srp;
 template <typename T> struct ptr
 {
-  template <typename U> ptr(const srp<U> &other); // { dg-error "ptr<T>::ptr" }
+  template <typename U> ptr(const srp<U> &other); // { dg-message "ptr<T>::ptr" }
 };
 template <typename T> struct srp
 {
-  template <typename U> operator ptr<U>(void) const; // { dg-error "srp<T>::operator" }
+  template <typename U> operator ptr<U>(void) const; // { dg-message "srp<T>::operator" }
 };
 ptr<int> parent_get()
 {
index 00272ad4995c1a2c0bf42a1855f5b6fb4848f16e..1c027fa43886ae2a9c4b5550f19484b2a22bec9a 100644 (file)
@@ -8,18 +8,18 @@
 struct Foo
 {
   template <typename T>
-  Foo (const T &); // { dg-error "T = Bar" "" }
+  Foo (const T &); // { dg-message "T = Bar" }
 };
 
 struct Bar
 {
   template <typename T>
-  operator T () const;   // { dg-error "T = Foo" "" }
+  operator T () const;   // { dg-message "T = Foo" }
 };
 
 Foo Quux (Bar const &b)
 {
-  return b; // { dg-error "ambiguous" "" }
+  return b; // { dg-error "ambiguous" }
 }
 
 
index 4575708e4e507e2766ffb6f863b17e409f76f6d9..a98144185bb4ad1e5171a9810b54d3910d6571e1 100644 (file)
@@ -2,7 +2,8 @@
 
 template<typename T> struct A
 {
-  static const T i = 0; // { dg-error "" }
+  static const T i = 0; // { dg-error "declared void" "void" }
+                       // { dg-error "invalid" "invalid" { target *-*-* } 5 }
 };
 
-A<void> a; // { dg-error "" }
+A<void> a; // { dg-message "instantiated" }
index 1bc378c14e6772055a416c9fb99883c4068c5fea..6d37350e93b4f91be38a173b1c2760a1b45e04e3 100644 (file)
@@ -18,5 +18,5 @@ template<> struct A<void>
 void bar()
 {
     A<void> a;
-    a.foo<int>();              // { dg-error "instantiated" }
+    a.foo<int>();              // { dg-message "instantiated" }
 }
index 644c62a7f4ce07431705b1537edb931fbe423e64..b0e16d46434e8ced2b6cd5edccd20eb4a849f658 100644 (file)
@@ -21,5 +21,6 @@ class ctype : public __ctype_abstract_base<_CharT>
 template<typename _CharT>
 class ctype2 : public __ctype_abstract_base<_CharT>
 {
-  typedef mask mask; // { dg-error "" }
+  typedef mask mask; // { dg-error "does not name a type" "no type" }
+  // { dg-message "note" "note" { target *-*-* } 24 }
 };
index add95156cec2a8a865fafafb1497fb7ccf474a99..18cdd1aba01594235296fb7fc746da0a0d1ce718 100644 (file)
@@ -1,3 +1,3 @@
 struct B { template <typename U> struct C; };
-template <typename T> struct A { typedef typename T::C V; }; // { dg-error "" }
-void f () { A<B>::V p; } // { dg-error "" }
+template <typename T> struct A { typedef typename T::C V; }; // { dg-error "not a type" }
+void f () { A<B>::V p; } // { dg-message "instantiated" }
index d104948773257424eabe18586db1f7a1773fba65..ebb4e090a37ca09b9aff2d186d852a306a1c08d2 100644 (file)
@@ -10,12 +10,12 @@ template <class T> struct C : public B1<T>, public B2
   void f()
   {
     i();                       // should be accepted
-    i.i();                     // { dg-error "" }
+    i.i();                     // { dg-error "member" }
   }
 };
 
 int main()
 {
   C<int> c;
-  c.f();                       // { dg-error "instantiated" }
+  c.f();                       // { dg-message "instantiated" }
 }
index 87cdbc1865712e926e8f1744cf959a4e4b379878..5d21f575b3ce1fc1bdcabc5299533fd0f7d0dc67 100644 (file)
@@ -7,12 +7,12 @@
 
 template <class T>
 struct Foo {
-  int i; // { dg-error "" "" }
+  int i; // { dg-error "Foo" }
 };
 
 struct Baz 
 {
-  int i; // { dg-error "" "" }
+  int i; // { dg-error "Baz" }
 };
 
 template <class T>
@@ -20,11 +20,11 @@ struct Bar : public Foo<T>, Baz {
   using Foo<T>::i;
   using Baz::i;
 
-  int foo () { return i; } // { dg-error "request for member" "" }
+  int foo () { return i; } // { dg-error "request for member" }
 };
 
 void foo (Bar<int> &bar)
 {
-  bar.foo(); // { dg-error "instantiated" "" }
+  bar.foo(); // { dg-message "instantiated" }
 }
 
index 827c65e24c59e070f656be5633b01a6bc54e80ef..0cdffcd3c5110fd603c1524d33386184b3c97bf5 100644 (file)
@@ -17,7 +17,7 @@ template <class T>  void Foo(T i)
  
 void Bar ()
 { 
-  Foo (1);  // { dg-error "instantiated" "" }
+  Foo (1);  // { dg-message "instantiated" }
 }
 
 struct M {};
@@ -31,6 +31,6 @@ struct C
 
 void Baz (int i)
 {
-  i ? i + 1 : i + 2; // { dg-error "operand of" "" }
+  i ? i + 1 : i + 2; // { dg-warning "operand of" }
   i ? i++ : 0;
 }
index 22525cd9d1c867936ebdedc0ab2147c9a75ecf00..ebe8f426a3b7124d10082334bcfc18bc10e6a8b1 100644 (file)
@@ -66,4 +66,4 @@ bar (T)
   foo (27);
 }
 
-template void bar<int> (int); // { dg-warning "instantiated" }
+template void bar<int> (int); // { dg-message "instantiated" }
index ab156b757e00dd85be4fffa6748702fc452e6ff4..db73d430aeafa882159085fa0f2e3e400d609a6e 100644 (file)
@@ -65,4 +65,4 @@ bar (T a, T b, T c)
   foo (1 != (2 != 3));
 }
 
-template void bar<int> (int, int, int); // { dg-warning "instantiated" }
+template void bar<int> (int, int, int); // { dg-message "instantiated" }
index d8151aecdd17b98e80c632744fcd25fc59aa503c..6381552370dddd330da501532ca2d97cbf6d4945 100644 (file)
@@ -83,4 +83,4 @@ bar (T a, T b, T c)
   foo (6 >> (5 - 4));
 }
 
-template void bar<int> (int, int, int); // { dg-warning "instantiated" }
+template void bar<int> (int, int, int); // { dg-message "instantiated" }
index def181a12dc0e2ef6058449143fc22f3ab895477..1af1e2e0380c98bc27e5c1b1cc1d0fb4614373d1 100644 (file)
@@ -29,4 +29,4 @@ bar (T a, T b, T c)
   foo (1 || (2 && 3));
 }
 
-template void bar<int> (int, int, int); // { dg-warning "instantiated" }
+template void bar<int> (int, int, int); // { dg-message "instantiated" }
index 32fa1fe958fa8e9dab15d128260e6d8a5c17e87d..d562315f3c79bbc49afa803f09ca7d36ff69d942 100644 (file)
@@ -119,4 +119,4 @@ bar (T a, T b, T c)
   foo (1 | (2 <= 3));
 }
 
-template void bar<int> (int, int, int); // { dg-warning "instantiated" }
+template void bar<int> (int, int, int); // { dg-message "instantiated" }
index c7e45cf1afc543a0247383d2be60bf7115faa33e..e3dfc5d05c3a784fc80ee20869e4645d7611f2c9 100644 (file)
@@ -119,4 +119,4 @@ bar (T a, T b, T c)
   foo (1 ^ (2 < 3));
 }
 
-template void bar<int> (int, int, int); // { dg-warning "instantiated" }
+template void bar<int> (int, int, int); // { dg-message "instantiated" }
index 8789d592f9a21f1763543ffeb14f17b24937301b..a1ba89dfcd57e5c99bfb43db7570e6ba61ac8e10 100644 (file)
@@ -101,4 +101,4 @@ bar (T a, T b, T c)
   foo (1 & (2 != 3));
 }
 
-template void bar<int> (int, int, int); // { dg-warning "instantiated" }
+template void bar<int> (int, int, int); // { dg-message "instantiated" }
index 755c574d0f23ddede5d2ac51825aa08620faa8b8..cadc287fe967209c7a15d950959a57f4daa06d71 100644 (file)
@@ -114,8 +114,8 @@ bar4 (T)
   return (a = a);
 }
 
-template void bar<int> (int); // { dg-warning "instantiated" }
-template bool bar1<int> (int); // { dg-warning "instantiated" }
+template void bar<int> (int); // { dg-message "instantiated" }
+template bool bar1<int> (int); // { dg-message "instantiated" }
 template bool bar2<int> (int);
-template bool bar3<int> (int); // { dg-warning "instantiated" }
+template bool bar3<int> (int); // { dg-message "instantiated" }
 template bool bar4<int> (int);
index 9fc3538907352c78be30825f92d36f62243239c2..94c2f47020f676cdead2388c65a5549b2bc091db 100644 (file)
@@ -9,6 +9,6 @@ T *foo(void)
   return (T *)&x; /* { dg-warning "strict-aliasing" } */
 }
 
-template int *foo<int>(void); /* { dg-warning "instantiated from here" } */
+template int *foo<int>(void); /* { dg-message "instantiated from here" } */
 template char *foo<char>(void); /* { dg-bogus "instantiated from here" } */
 
index aed32a19ac4948c4fb152bdb14963394d8ab4b5e..26cfe2eae4bdec0e578e679ed0b45088c76eaa51 100644 (file)
@@ -16,6 +16,7 @@ A *a;         // { dg-warning "'a' has incomplete type" "" }
 int
 main (int argc, char **argv)
 {
-  delete a;    // { dg-warning "delete" "" }
+  delete a;    // { dg-warning "delete" "warn" }
+  // { dg-message "note" "note" { target *-*-* } 19 }
   return 0;
 }
index 69adf3963671b819634f18e711e9a01891ee4b77..01323659597492a5cb5b98fd36cff509cc8a2e87 100644 (file)
@@ -12,9 +12,9 @@ extern "C" void FormatDisk();
   struct C {
     C(){ FormatDisk(), 0; }  // { dg-warning "right-hand operand of comma" "" }
   };
-  template struct C<int>; // { dg-warning "instantiated" }
+  template struct C<int>; // { dg-message "instantiated" }
   template <class T>
   void f() { FormatDisk(), 0; } // { dg-warning "right-hand operand of comma" "" }
-  template void f<int> (); // { dg-warning "instantiated" }
+  template void f<int> (); // { dg-message "instantiated" }
 void g() { FormatDisk(), 0; } // { dg-warning "right-hand operand of comma" "" }
 
index 7b051dd6766705f244d40298d2582755506f5a0e..966716bbc48c36f52f11494bbbaa3e63e1bd60cb 100644 (file)
@@ -85,4 +85,4 @@ template<int I> void Foo (X &x)
   __alignof__ (x++);           // { dg-warning "no effect" "" }
 }
 
-template void Foo<4> (X&);     // { dg-warning "instantiated" }
+template void Foo<4> (X&);     // { dg-message "instantiated" }
index b3c0313eaf6bb9dde99f37275e5d8c0596dc3dcd..f3984d58e58bc080562a91f636e10165e317674b 100644 (file)
@@ -3,7 +3,7 @@
 // { dg-options "-fshow-column" }
 
 class foo {
-  foo::foo // { dg-error "3: error: extra qualification" }
+  foo::foo // { dg-error "3:extra qualification" }
   (int a, 
    int b,
    int c);
index 0136bb1050a0ca52b41062e44935a8fd1b0a8723..608f4d6b5bf5f0fdbae55e5821f1152dadc135a9 100644 (file)
@@ -2,12 +2,12 @@
 // { dg-do compile }
 // { dg-options "" }
 template <typename T, typename P>
-class X { // { dg-warning "note: previous declaration .* used 2" }
+class X { // { dg-message "note: previous declaration .* used 2" }
 public:
   X() { }
 
 private:
-  template <typename U> friend class X; // { dg-error "error: .*redeclared with 1 template parameter" }
+  template <typename U> friend class X; // { dg-error "redeclared with 1 template parameter" }
 };
 
-X<int, int> i;
+X<int, int> i;         // { dg-message "instantiated" }
index 64195fcf0287618783b90a52a0249087ae02f20e..35d882b21b355381b6a3a6a1b916f0cc4c1ddd94 100644 (file)
@@ -15,15 +15,15 @@ typedef unsigned long uint_32;
 class sanjose {
 public:
    sanjose();
-   sanjose(const sanjose&);  // { dg-error "" } candidate
-   sanjose(int_8 value);  // { dg-error "" }  // ERROR -
-   sanjose(uint_32 value);  // { dg-error "" }  // ERROR -
+   sanjose(const sanjose&);  // { dg-message "note" }
+   sanjose(int_8 value);  // { dg-message "note" }
+   sanjose(uint_32 value);  // { dg-message "note" }
 };
 
 enum { first, last};
 
 void foo(void) {
-  sanjose obj(first); // { dg-error "" }  // ERROR -
+  sanjose obj(first); // { dg-error "ambiguous" }
 }
 
 
index 2fdcdfc432a2e6a3a270503623f0500ae0a8e952..deedfba75a2746ec10301f620d4a49f5b475c9b5 100644 (file)
@@ -5,13 +5,13 @@
 struct panama {
   panama();
   panama(panama &);
-  panama& operator=(panama&); // { dg-error "" } // ERROR -
+  panama& operator=(panama&); // { dg-message "candidates" }
 };
 
 extern panama dig();
 
 void foo() {
    panama obj;
-   obj = dig(); // { dg-error "" }  // ERROR -
+   obj = dig(); // { dg-error "no match" }
 }
 
index 9f854b5e189b19492fa091a203f147dc150c71db..9338e8755320bdc709932ac0ddd631edd15d2b63 100644 (file)
@@ -21,7 +21,9 @@ public:
 void peace(const colombia&);
 
 void foo(nicaragua& b) {
-  peace(b); // { dg-warning "" } // WARNING -
+  peace(b); // { dg-warning "choosing 'nicaragua::operator" "nic" }
+  // { dg-warning "conversion" "conv" { target *-*-* } 24 }
+  // { dg-message "note" "note" { target *-*-* } 24 }
 }
 
 
index 9a64de4dc3e1cf4f0eeb5c7ce2413d9cd84b2538..14bc32b6a780472e46c266427c8ff6677dd1d1f9 100644 (file)
@@ -20,5 +20,6 @@ void f(B b) {
 
 void g() {
   B h;
-  f(h); // { dg-error "synthesized|argument" } 
+  f(h); // { dg-error "argument" "arg" } 
+  // { dg-message "synthesized" "synth" { target *-*-* } 23 }
 }
index b0c37e1965dceabe99c04ed4e5774f6476df455f..ddf93c4bdae8bfa831ee7eb478fec99b3387ff9d 100644 (file)
@@ -8,10 +8,10 @@ struct B {
   B (int);
 };
 
-void myfunc (const A& t0); // { dg-error "" } 
-void myfunc (const B& t0); // { dg-error "" } 
+void myfunc (const A& t0); // { dg-message "candidates" } 
+void myfunc (const B& t0); // { dg-message "note" } 
 
 int main ()
 {
-   myfunc(1);   // { dg-error "" } ambiguous call
+   myfunc(1);   // { dg-error "ambiguous" }
 }
index d05c73b8015163448cd5b7d93aeeff21422199a0..674fc4fa6791eca5071d2916b45a8039d82775c1 100644 (file)
@@ -2,13 +2,13 @@
 // { dg-options "-fshow-column" }
 // GROUPS passed old-abort
 
-class Graph { // { dg-error "1: error: new types|1: note: \\(perhaps" }
+class Graph { // { dg-error "1:new types|1: note: \\(perhaps" }
 public:
       unsigned         char N;
-      Graph(void) {} // { dg-error "7: error: 'Graph" }
+      Graph(void) {} // { dg-error "7:'Graph" }
 }
 
-Graph::Graph(void) // { dg-error "18: error: return type|1: error: redefinition" }
+Graph::Graph(void) // { dg-error "18:return type|1: error: redefinition" }
 {    N = 10;
 }
 
index 6fd031f345018f7ba1c02fff8ccb9845104195ff..fd2fa2ff9860e8c86d26406be7014dd4c68164ae 100644 (file)
@@ -7,13 +7,13 @@ union Value
 };
 
 struct GlobalAddress
-{// { dg-error "" }  candidates .*
-       GlobalAddress(Value *nvar){}// { dg-error "" } .*
+{// { dg-message "note" }
+       GlobalAddress(Value *nvar){} // { dg-message "candidates" }
 };
 
 int
 main()
 {
-       new GlobalAddress(Value());             // internal error occured here// { dg-error "" }  no matching function .*
+       new GlobalAddress(Value());             // internal error occured here// { dg-error "no matching" }
        //new GlobalAddress(new Value());       // This line is correct code
 }
index bdb522aeb56c96e27c42a3921672cefc6a8ee549..e7d621cf0a25d55b2a8586063748f1e372f14325 100644 (file)
@@ -1,16 +1,16 @@
 // { dg-do compile }
 // GROUPS passed old-abort
-class internal { // { dg-error "internal::internal" }
+class internal { // { dg-message "internal::internal" }
        int field;
        int anotherfield;
 };
 
-class bug { // { dg-error "bug::bug" }
+class bug { // { dg-message "bug::bug" }
        internal* numbers;
        bug(int size);
 };
 
-bug::bug(int size) // { dg-error "bug::bug" }
+bug::bug(int size) // { dg-message "bug::bug" }
 {
   numbers = new internal(size * size);// { dg-error "no match" }
 }
index d1cae6d198a136d09d41cbd42c249fadaaec67be..dcb89dc9e48cefb393896debbcd17f3903d0ab57 100644 (file)
@@ -343,7 +343,7 @@ operator>=(const SetLD<T>& a, const SetLD<T>& b)
 class String { };
 class IcaseString: public String { };
 template <> class SetLD< IcaseString >: public SetLD<    String  > {   public:  SetLD (): SetLD<    String  >() { };    SetLD (const ListD<   IcaseString  >& other): SetLD<    String  >()    { ListD<   IcaseString  >::Vix x;       for (other.first(x); 0 != x; other.next(x))     add(other(x)); };        SetLD (const  SetLD & other): SetLD<    String  >(other) { };  const    IcaseString  & operator()(const Vix& x) const  { return (   IcaseString  &) SetLD<    String  >::operator()(x); }      };      typedef SetLD<  String > SetLD_String_IcaseString_old_tmp99;    typedef SetLD< IcaseString > SetLD_String_IcaseString_new_tmp99;        
-inline int      operator== (const SetLD_String_IcaseString_new_tmp99& a,       const SetLD_String_IcaseString_new_tmp99& b) // { dg-error "operator==" }
+inline int      operator== (const SetLD_String_IcaseString_new_tmp99& a,       const SetLD_String_IcaseString_new_tmp99& b) // { dg-message "operator==" }
 {
 const SetLD_String_IcaseString_old_tmp99& oa = a;
 const SetLD_String_IcaseString_old_tmp99& ob = b;
index 9849c4a8df9337d5970499404ee5dc318357c28e..638ba9f92521d7173acc706a590ca43d151904c9 100644 (file)
@@ -38,11 +38,11 @@ struct bar
 class nnyacc
 {
 public:
-      static void assign(void*& lval, void*& rval); // { dg-error "" } candidates
+      static void assign(void*& lval, void*& rval); // { dg-message "candidates" }
 };
 
 void
 foo (bar yylval, bar *yyvsp)
 {
-  nnyacc::assign(yylval.valueList, yyvsp[0].valueList);// { dg-error "" } 
+  nnyacc::assign(yylval.valueList, yyvsp[0].valueList);// { dg-error "no matching" } 
 }
index e30ccdf2860476adc7ea3946b1ec1b332007eed5..92b04c4d02b5f8e06d8e211b14aded75c52199d1 100644 (file)
@@ -9,13 +9,13 @@ public:
 class Bar : public Foo
 {
 public:
-      int f (int); // { dg-error "" } candidates are
+      int f (int); // { dg-message "candidates" }
 };
 
 int main ()
 {
   Bar b;
 
-  b.f ();// { dg-error "" } 
+  b.f ();// { dg-error "no matching" } 
   b.f (10);
 }
index ac4f8c8ddfb1fdb572af0980654a161694e56a07..d832a4b47c140472ae39092ce9e781728f450e0a 100644 (file)
@@ -5,7 +5,7 @@
   class B
   {
   public:
-       static void WantsNew (NewObject creator); // { dg-error "" } candidates are
+       static void WantsNew (NewObject creator); // { dg-message "candidates" }
   };
   
   class A
@@ -18,6 +18,6 @@
          B::WantsNew ( (NewObject) A::NewOne );
          // This used to die in convert_harshness_{ansi,old} cuz it
          // didn't know what to do about a void type.
-         B::WantsNew ( A::NewOne );// { dg-error "" } 
+         B::WantsNew ( A::NewOne );// { dg-error "no matching" } 
       }
   };
index 32d69406b889897052817569b9658f2ca95087c9..b168e860410b1b535ec5cd6f9d2d90e5fe45efa0 100644 (file)
@@ -3,8 +3,8 @@
 class CLogger
 {
 public:
-      void operator() (int,const char *) {}; // { dg-error "" } candidates
-      void operator() (int,const char *, ...) {}; // { dg-error "" } candidates
+      void operator() (int,const char *) {}; // { dg-message "candidates" }
+      void operator() (int,const char *, ...) {}; // { dg-message "note" }
 } Log;
 
 class CGLogger : public CLogger
@@ -13,8 +13,8 @@ class CGLogger : public CLogger
 
 int main()
 {
-        Log(1,"Test");// { dg-error "" }  call of.*
+        Log(1,"Test");// { dg-error "ambiguous" }
         Log(1,"Test %d",3);
-        GLog(1,"Test");// { dg-error "" }  call of.*
+        GLog(1,"Test");// { dg-error "ambiguous" }
         GLog(1,"Test %d",3);
 }
index 3ea60aae23c421998a579b6fe1f57b43a889616a..1c315b7fadde784b197a2d3efa20687e986cb689 100644 (file)
@@ -15,12 +15,12 @@ int foo (void);
 typedef int (*f_ptr_t1) (void);
 typedef void (*f_ptr_t2) (int);
 
-void bar (f_ptr_t1);           // { dg-error "" } 
-void bar (f_ptr_t2);           // { dg-error "" } 
+void bar (f_ptr_t1);           // { dg-message "note" } 
+void bar (f_ptr_t2);           // { dg-message "note" } 
 
 void function ()
 {
-  bar (foo);                   // { dg-error "" } ambiguous
+  bar (foo);                   // { dg-error "ambiguous" }
 }
 
 int main () { return 0; }
index d93181ebb1e1c64258ee1f20fa7d038ac81661c0..8d91db67ae866f6d5a6157623dc071d77fe42d15 100644 (file)
 // implicitly-declared constructor is used, then it is implicitly
 // defined and found to be ill-formed.
 
-struct struct0 { // { dg-error "note" }
+struct struct0 { // { dg-message "note" }
   int data_member;
 
   struct0 (int, void *);       // suppresses implicit default constructor
 };
 
-struct0::struct0 (int, void *) // { dg-error "note" }
+struct0::struct0 (int, void *) // { dg-message "note" }
 {
 }
 
 struct struct0_derived_struct_0 : public struct0 { // { dg-error "no matching" }
 };
 
-struct0_derived_struct_0 object; // { dg-error "synthesized" }
+struct0_derived_struct_0 object; // { dg-message "synthesized" }
 
 int main () { return 0; }
index 98393ba3b4abd32141b15e59db138655367313d9..f1da7fba722aeea39abf3fa16afee06d341942f5 100644 (file)
@@ -19,12 +19,12 @@ struct B {
 };
 
 struct D : public B {
-  int f(struct B);             // { dg-error "" } referred to below
+  int f(struct B);             // { dg-message "candidates" } referred to below
 };
 
 void h(D* pd)
 {
-  pd->f(1);            // { dg-error "" } D::f(struct B) hides B::f(int)
+  pd->f(1);            // { dg-error "no matching" } D::f(struct B) hides B::f(int)
 }
 
 int main () { return 0; }
index 726f9ef933e5cfeb4ad98246185cb877e47131f2..6f7ea3f4581c6282e86889f78f70346a1e1382de 100644 (file)
@@ -8,12 +8,12 @@
 
 // keywords: overloading, ambiguity, resolution
 
-void function0 (int i, char c) // { dg-error "function0" }
+void function0 (int i, char c) // { dg-message "function0" }
 {
   i = c;
 }
 
-void function0 (char c, int i)  // { dg-error "function0" }
+void function0 (char c, int i)  // { dg-message "function0" }
 {
   i = c;
 }
index a5419fb9ee95e2afbacb39820fb45f536489a19b..3826e08e009f1683b8ba2f60d6624a51a7385676 100644 (file)
@@ -19,14 +19,14 @@ struct t_0_st_0;
 struct t_0_st_1 {
   int member;
 
-  t_0_st_1 (t_0_st_0&);// { dg-error "" } 
+  t_0_st_1 (t_0_st_0&);// { dg-message "note" } 
   t_0_st_1 ();
 };
 
 struct t_0_st_0 {
   int member;
 
-  operator t_0_st_1 ();// { dg-error "" } 
+  operator t_0_st_1 ();// { dg-message "note" } 
 };
 
 t_0_st_0 t_0_st_0_obj0;
@@ -37,13 +37,13 @@ void t_0_assignment ()
   t_0_st_1 t_0_st_1_obj1;
   t_0_st_1 t_0_st_1_obj2;
 
-  t_0_st_1_obj0 = t_0_st_0_obj0;                       // { dg-error "" } caught
+  t_0_st_1_obj0 = t_0_st_0_obj0;                       // { dg-error "ambiguous" } caught
   t_0_st_1_obj1 = t_0_st_1 (t_0_st_0_obj0);
 }
 
 void t_0_local_init ()
 {
-  t_0_st_1 t_0_st_1_obj0 = t_0_st_0_obj0;              // { dg-error "" } 
+  t_0_st_1 t_0_st_1_obj0 = t_0_st_0_obj0;              // { dg-error "ambiguous" } 
   t_0_st_1 t_0_st_1_obj1 = t_0_st_1 (t_0_st_0_obj0);
 }
 
@@ -52,15 +52,15 @@ struct t_1_st_0;
 struct t_1_st_1 {
   int member;
 
-  t_1_st_1 (t_1_st_0&);                                        // { dg-error "" } 
+  t_1_st_1 (t_1_st_0&);                                        // { dg-message "note" } 
   t_1_st_1 ();
-  void operator= (t_1_st_1&);                          // { dg-error "" } 
+  void operator= (t_1_st_1&);                          // { dg-message "note" } 
 };
 
 struct t_1_st_0 {
   int member;
 
-  operator t_1_st_1 ();                                        // { dg-error "" } 
+  operator t_1_st_1 ();                                        // { dg-message "note" } 
 };
 
 t_1_st_0 t_1_st_0_obj0;
@@ -71,13 +71,13 @@ void t_1_assignment ()
   t_1_st_1 t_1_st_1_obj1;
   t_1_st_1 t_1_st_1_obj2;
 
-  t_1_st_1_obj0 = t_1_st_0_obj0;                       // { dg-error "" } 
-  t_1_st_1_obj1 = t_1_st_1 (t_1_st_0_obj0);            // { dg-error "" } 
+  t_1_st_1_obj0 = t_1_st_0_obj0;                       // { dg-error "no match" } 
+  t_1_st_1_obj1 = t_1_st_1 (t_1_st_0_obj0);            // { dg-error "no match" } 
 }
 
 void t_1_local_init ()
 {
-  t_1_st_1 t_1_st_1_obj0 = t_1_st_0_obj0;              // { dg-error "" } 
+  t_1_st_1 t_1_st_1_obj0 = t_1_st_0_obj0;              // { dg-error "ambiguous" } 
   t_1_st_1 t_1_st_1_obj1 = t_1_st_1 (t_1_st_0_obj0);
 }
 
@@ -86,14 +86,14 @@ struct t_2_st_0;
 struct t_2_st_1 {
   int member;
 
-  t_2_st_1 (t_2_st_0);         // { dg-error "" } candidate
+  t_2_st_1 (t_2_st_0);         // { dg-message "note" }
   t_2_st_1 ();
 };
 
 struct t_2_st_0 {
   int member;
 
-  operator t_2_st_1 ();                // { dg-error "" } candidate
+  operator t_2_st_1 ();                // { dg-message "candidate" }
 };
 
 t_2_st_0 t_2_st_0_obj0;
@@ -104,12 +104,12 @@ void t_2_assignment ()
   t_2_st_1 t_2_st_1_obj1;
   t_2_st_1 t_2_st_1_obj2;
 
-  t_2_st_1_obj0 = t_2_st_0_obj0;                       // { dg-error "" } caught
+  t_2_st_1_obj0 = t_2_st_0_obj0;                       // { dg-error "ambiguous" } caught
   t_2_st_1_obj1 = t_2_st_1 (t_2_st_0_obj0);
 }
 
 void t_2_local_init ()
 {
-  t_2_st_1 t_2_st_1_obj0 = t_2_st_0_obj0;              // { dg-error "" } 
+  t_2_st_1 t_2_st_1_obj0 = t_2_st_0_obj0;              // { dg-error "ambiguous" } 
   t_2_st_1 t_2_st_1_obj1 = t_2_st_1 (t_2_st_0_obj0);
 }
index 6071d7ee27fe13ece5b2ec48ffc7fcfaf22dec0d..ac2f24f60ceb9ab9e3dab2e0e5482064fd039231 100644 (file)
@@ -2,7 +2,7 @@
 struct A
 {
   A();
-  A(A&);                       // { dg-error "" } referenced below
+  A(A&);                       // { dg-message "candidates" } referenced below
 };
 
 int
@@ -10,7 +10,8 @@ main ()
 {
   try
     {
-      throw A();               // { dg-error "" } can't copy
+      throw A();               // { dg-error "no matching" "match" } can't copy
+// { dg-error "thrown expression" "expr" { target *-*-* } 13 }
     }
   catch (...) { }
 }
index b9ccd6e83693085a7fc8bced65f0621ac88730f8..b6e7f264552339f4ea4e2a389ed46925195652ee 100644 (file)
@@ -25,7 +25,7 @@ template<class T> void fnx(T *) throw(T){}  // { dg-error "" } invalid use of vo
 void fx()
 {
   fnx((int *)0);
-  fnx((void *)0);              // { dg-error "" } instantiated from here
+  fnx((void *)0);              // { dg-message "instantiated from here" }
 }
 
 // [except.spec] 2, exception specifiers must be the same set of types (but
index e72916355b708c097f392ad5c9b0b5f1b12fb4a6..f7c8018ecdd21a5325b1560245d622b22f8b87fc 100644 (file)
@@ -11,10 +11,10 @@ struct X
 {
   X (int);
 };
-void Foo (int, float, bool);   // { dg-warning "" } candidate
-void Foo (float, int, X);      // { dg-warning "" } candidate
+void Foo (int, float, bool);   // { dg-message "candidate" }
+void Foo (float, int, X);      // { dg-message "candidate" }
 
 void Baz ()
 {
-  Foo (1, 1, 0);    // { dg-warning "" } least worse
+  Foo (1, 1, 0);    // { dg-warning "worst" }
 }
index 368dcbc140a3ba3426a5971d750509e73aa7b65c..78e46e1cd38ac34f9c84ee3d9e06a52a8632442a 100644 (file)
@@ -14,14 +14,14 @@ public:
 
 class Something {
 public:
-  void DoSomething(Ding A);    // { dg-error "" } referred to
+  void DoSomething(Ding A);    // { dg-message "candidates" } referred to
 };
 
 void DoSomething(Ding A);
 
 void foo(Something* pX)
 {
-  DoSomething(1);              // { dg-error "" } 
-  pX->DoSomething(1);          // { dg-error "" } 
-  (*pX).DoSomething(1);                // { dg-error "" } 
+  DoSomething(1);              // { dg-error "conversion" } 
+  pX->DoSomething(1);          // { dg-error "no matching" } 
+  (*pX).DoSomething(1);                // { dg-error "no matching" } 
 }
index 4a3d097d7868839fdc2d3b49e8224b019039f6de..5d5b3af9cb4fe26e0d7e4f13cbc1c32f80a78761 100644 (file)
@@ -3,11 +3,11 @@
 // and fails.
 
 struct Node
-{                              // { dg-error "" } 
+{                              // { dg-message "note" } 
   Node* child[2];
 };
 
 void bug(int i)
 {
-  Node* q = new Node(i);       // { dg-error "" } 
+  Node* q = new Node(i);       // { dg-error "no matching" } 
 }
index cf39f1c76a4a4b4258bd21a4e49f6fdb362e7f80..997267e724487ae1e53422bdd3998e753d33583a 100644 (file)
@@ -8,6 +8,7 @@ template <class T> class A
 public:
 # 200 "lineno3.C"
       int foo () { undef1(); } // { dg-error "" "" { target *-*-* } 200 }
+      // { dg-message "note" "note" { target *-*-* } 200 }
 };
 
 template class A<int>;
index 272c050d7919d9913e411d846dceebc6f9d1c524..caa5bc216cd4fd92c0ab5ab71c5ab390f3638fc2 100644 (file)
@@ -8,6 +8,7 @@ public:
 
 # 200 "lineno4.C"
       int foo () { undef1(); } // { dg-error "" "" { target *-*-* } 200 }
+      // { dg-message "note" "note" { target *-*-* } 200 }
 };
 
 template class A<int>;
index 8fbda4fc14922656dc2b6578166186b788bded35..7a50abb25674c099486a84e4ac462c92ca30d418 100644 (file)
@@ -11,5 +11,5 @@ void foo ()
 {
   int one=1, two=2;
   X a(one), b(two);
-  a = b;                       // { dg-error "synthesized" }
+  a = b;                       // { dg-message "synthesized" }
 }
index 135370878367ca73aa999e0cb598aac7f9a3bea7..455376fc8812af7b9455b1907e8134c6fdba99fb 100644 (file)
@@ -1,7 +1,7 @@
 // { dg-do assemble  }
-void f (int);                  // { dg-error "" } 
-void f (long);                 // { dg-error "" } 
+void f (int);                  // { dg-message "candidates" } 
+void f (long);                 // { dg-message "note" } 
 int main()
 {
-  f (1 & 0xffffff00UL);                // { dg-error "" } ambiguous
+  f (1 & 0xffffff00UL);                // { dg-error "ambiguous" }
 }
index a3dcb8d6a13579f6ea9c6c01b4a27704de96adec..46bf918d047cf470a2844845ce88971550d4d9d7 100644 (file)
@@ -2,11 +2,11 @@
 // PRMS Id: 6056
 
 struct Foo {
-  Foo()           { }          // { dg-error "" } candidate
-  Foo(int i = 25) { }          // { dg-error "" } candidate
+  Foo()           { }          // { dg-message "note" }
+  Foo(int i = 25) { }          // { dg-message "note" }
 };
 
 int main()
 {
-  Foo* f1 = new Foo();         // { dg-error "" } ambiguous
+  Foo* f1 = new Foo();         // { dg-error "ambiguous" }
 }
index a5405243fcc5e1353835f21e2faf12ddc197b186..26fa9432acaff2b27a4c6cceb50beb0a7265db69 100644 (file)
@@ -15,4 +15,5 @@ struct ThingEntry {
 static ThingEntry KeyWordTable[] = {
         &Thing::FunctionA,
         Thing::OverloadFn,
-};                             // { dg-warning "" } implicit &
+};                             // { dg-error "assuming" "assuming" } implicit &
+// { dg-message "note" "note" { target *-*-* } 18 }
index 88411fa993ea9e3b3d92cf73bb5720916a709359..d5763748f61983d45c8b257e0b734705ea65eb11 100644 (file)
@@ -3,7 +3,7 @@
 
 void f (char *);
 struct A {
-  void f ();                   // { dg-error "" } referred to 
+  void f ();                   // { dg-message "candidates" } referred to 
 };
 struct B : public A {
   void g (char *);
index 370bb18a561c34b08673d38ba081d4f7994d169d..e5d194012ea0c74a1aba6d60bbeaa62aea9fab4c 100644 (file)
@@ -1,14 +1,14 @@
 // { dg-do assemble  }
 template <class T, class U>    
-int func(U, T);                        // { dg-error "" } ref below
+int func(U, T);                        // { dg-message "candidates" }
 
 template <class T, class U>    
-int func(T, U)                 // { dg-error "" } ref below
+int func(T, U)                 // { dg-message "note" }
 {
         return 2;
 }
 
 int main ()
 {
-  func (0, 1);                 // { dg-error "" } ambiguous
+  func (0, 1);                 // { dg-error "ambiguous" }
 }
index 97185d47ac07cb7cd28e56c7abfb23d719c9dff4..efd09fd06b18ef6325f7f9ff5601197f14fd3159 100644 (file)
@@ -2,9 +2,9 @@
 class X // Indentation has been done so to see the similarities.
 {
 public:
-  X() {}                 // { dg-error "" } referenced below
-         X(X& x) {x.i=7;} // { dg-error "" } Both functions modify the
-  void bar(X& x) {x.i=7;} // { dg-error "" } reference parameter x.
+  X() {}                 // { dg-message "note" } referenced below
+         X(X& x) {x.i=7;} // { dg-message "note" } Both functions modify the
+  void bar(X& x) {x.i=7;} // { dg-message "note" } reference parameter x.
   int i;
 };
 
@@ -12,6 +12,6 @@ X foo() { X x; return x; }
 
 int main() 
 {
-  X   x(foo()); // { dg-error "" } Compiler doesn't warn about temporary reference.
-  x.bar(foo()); // { dg-error "" } The same mistake is warned about in this case.
+  X   x(foo()); // { dg-error "no match" } Compiler doesn't warn about temporary reference.
+  x.bar(foo()); // { dg-error "no match" } The same mistake is warned about in this case.
 }
index c5bb92e1b15031a067b4fe9ddbb8f05ca24a0baf..0fa6aef5f2c7a6f415b9410ec5fb3bd2f2dfa8be 100644 (file)
@@ -2,5 +2,5 @@
 // It is illegal to use the name of a class template for anything else,
 // including another class template.
 
-template <class T> class A { };        // { dg-error "" } 
-template <class U, class V> class A { }; // { dg-error "" } 
+template <class T> class A { };        // { dg-message "previous" } 
+template <class U, class V> class A { }; // { dg-error "redeclared" } 
index 9da5e6e02732e9ecb4ba2f8e39edf71d20b8e1a4..8b117aa89168feb746d68e8caa01f694a7cd6914 100644 (file)
@@ -9,14 +9,14 @@
 //  check the order of declarations
 class A {
 public:
-      void f(double* p) { std::cout << "A(double*)\n"; } // { dg-error "" } candidate
-      void f(int* p) { std::cout << "A(int*)\n"; } // { dg-error "" } candidate
+      void f(double* p) { std::cout << "A(double*)\n"; } // { dg-message "candidates" }
+      void f(int* p) { std::cout << "A(int*)\n"; } // { dg-message "note" }
 };
 
 class B {
 public:
-      void f(int* p) { std::cout << "B(int*)\n"; } // { dg-error "" } candidate
-      void f(double* p) { std::cout << "B(double*)\n"; } // { dg-error "" } candidate
+      void f(int* p) { std::cout << "B(int*)\n"; } // { dg-message "candidates" }
+      void f(double* p) { std::cout << "B(double*)\n"; } // { dg-message "note" }
 };
 
 int main()
@@ -24,7 +24,7 @@ int main()
     A a;
     B b;
 
-    a.f(0);// { dg-error "" } .*
-    b.f(0);// { dg-error "" } .*
+    a.f(0);// { dg-error "ambiguous" }
+    b.f(0);// { dg-error "ambiguous" }
 }
 
index 3772b07990ee48dd6e57138369a6f9fdec158fc7..b6a0194f314d9c4399377d628ba22734ecb30285 100644 (file)
@@ -9,14 +9,14 @@ struct String { String(const char*); };
 
 struct Ack { Ack(String); };
 
-struct S { void method(Ack); };        // { dg-error "" } referenced below
+struct S { void method(Ack); };        // { dg-message "candidates" } referenced below
 
 void function(Ack);
 
 int
 foo(S *o)
 { // Neither call has a usable constructor for conversions of char[5] to Ack.
-  function("adsf");// { dg-error "" } 
-  o->method("adsf");// { dg-error "" } 
+  function("adsf");// { dg-error "conversion" } 
+  o->method("adsf");// { dg-error "no matching" } 
   return 0;
 }
index 49232fcd15ee11f8ad5b6e3cd7e2028fb0ba061b..7c7cfea0c8feca181d46212a1b7b3c3b172e6e33 100644 (file)
@@ -19,11 +19,11 @@ class B : public A {
 public:
     void set (f2 f);
 };
-void B::set (f2 f) { std::cout << "called B\n";} // { dg-error "" } candidate
+void B::set (f2 f) { std::cout << "called B\n";} // { dg-message "candidates" }
 
 int main() {
     B b;
-    b.set(F1); // ARM page 309: should call A.set(f1) and that what g++ does,// { dg-error "" } .*
+    b.set(F1); // ARM page 309: should call A.set(f1) and that what g++ does,// { dg-error "match" }
                // but 13.1 of ARM clearly states that it should call B::set()
                // or generate an error because overloading works only for
                // functions within the same scope (first page of chapter 13)
index 84c95172b6d726e4076d95775bd38403f238a9e5..39ee76b0ae7818dafb3b1a9102c00164ddf2a16c 100644 (file)
@@ -10,12 +10,12 @@ public:
   inline A(int x){printf("constructing A with %d\n", x);}
 };
 
-class B:public A{ // { dg-error "" } non-default constructor
+class B:public A{ // { dg-message "note" } non-default constructor
 private:
 public:
 };
 
 int main()
 {
-  B(10);// { dg-error "" } B doesn't have a constructor taking int
+  B(10);// { dg-error "match" } B doesn't have a constructor taking int
 }
index 1cee3082595932784d12b70a952365b31ec9972b..3d63d01c0a9bb049568c6a0285a95affdbb44255 100644 (file)
@@ -9,13 +9,13 @@
 
 #include <fstream>
 
-class X : public std::ifstream { // { dg-error "" } candidate
+class X : public std::ifstream { // { dg-message "note" } candidate
     public:
-      X(int a, const char *b) {} // { dg-error "" } candidate
+      X(int a, const char *b) {} // { dg-message "note" } candidate
 };
 int main()
 {
     X *y = new X(10, "123");
     // the compiler must reject this constructor call:
-    X *x = new X("abc");// { dg-error "" } .*
+    X *x = new X("abc");// { dg-error "match" }
 }
index c9851bf21b705be35285397dc395b3ceb7e13e13..02c5fb06fe4aa8e97a926d7f0cd5a1e08c6ee415 100644 (file)
@@ -6,7 +6,7 @@
 // Date: Tue, 1 Sep 92 10:38:44 EDT
 
 class X
-{ // { dg-error "1: note:                 X::X\\(const X&\\)" } implicit constructor
+{ // { dg-message "1:X::X\\(const X&\\)" } implicit constructor
   private:
     int x;
   public:
@@ -14,21 +14,23 @@ class X
     X( int );
 };
 
-class Y // { dg-error "1: error: new types may not be defined in a return type|1: note: \\(perhaps a semicolon is missing after the definition of 'Y'\\)" }
+class Y // { dg-error "1:new types may not be defined in a return type" "err" }
+        // { dg-message "1:\\(perhaps a semicolon is missing after the definition of 'Y'\\)" "note" { target *-*-* } 17 }
 {
   private:
     X xx;
   public:
     Y();
 }
-X::X( int xi ) // { dg-error "14: error: return type specification for constructor invalid|1: note: candidates are: X::X\\(int\\)" }
+X::X( int xi ) // { dg-error "14:return type specification for constructor invalid" "err" }
+// { dg-message "1:candidates are: X::X\\(int\\)" "note" { target *-*-* } 25 }
 {
     x = xi;
 }
 
 const X X::x0( 0 );
 
-Y::Y() // { dg-error "6: error: no matching function for call to 'X::X\\(\\)'" }
+Y::Y() // { dg-error "6:no matching function for call to 'X::X\\(\\)'" }
 {
     xx = X::x0;
 }
index bc51426459aafb2968e9c0fffa86b74a9c1dd86c..17207f6acf5ac067a6ccffc996778cc2ad024cd4 100644 (file)
@@ -21,7 +21,7 @@ Foo::Foo(int aa)
 
 
 struct var_Foo: public Foo
-{ // { dg-error "" }  base.*// ERROR -  in class.*
+{ // { dg-message "note" }  base.*// ERROR -  in class.*
   var_Foo* operator-> () {return this;}
 };
 
@@ -32,7 +32,7 @@ int blort(Foo& f)
 
 int main()
 {
-  var_Foo b(2);// { dg-error "" } 
+  var_Foo b(2);// { dg-error "match" } 
   b->a = 0;
   int x = blort(b);
   return x;
index e41e9f308bc670adda668a0969681d225abc8333..742f54bc4595a7120216eb3dd617591f8dfc410d 100644 (file)
@@ -11,7 +11,7 @@ enum Enum {enumerator1, enumerator2};
 struct Struct
 {
   int i;
-      int getI(Enum) {return i;} // { dg-error "" } candidates
+      int getI(Enum) {return i;} // { dg-message "candidates" }
 };
 
 int funct (Enum)
@@ -23,7 +23,7 @@ int main()
 {
   Enum e = enumerator1;
   Struct s;
-  int x = funct(e+1);// { dg-error "" } .*
-  int y = s.getI(e+1);// { dg-error "" } .*
+  int x = funct(e+1);// { dg-error "invalid" }
+  int y = s.getI(e+1);// { dg-error "match" }
   return x+y;
 }
index a26f456f20a0925fd22ffb18f8f19fd4b6bad6c1..5f1187a592b31e1d9acb14b72ae8d2efb0f7b27e 100644 (file)
 #undef max
 #endif
 
-inline int max(int a, int b) {return a > b ? a : b;}; // { dg-error "" } candidate
-inline double max(double a, double b) {return a > b ? a : b;}; // { dg-error "" } candidate
+inline int max(int a, int b) {return a > b ? a : b;}; // { dg-message "candidate" } 
+ // { dg-error "extra ';'" "extra ;" { target *-*-* } 17 }
+inline double max(double a, double b) {return a > b ? a : b;}; // { dg-message "note" } candidate
+ // { dg-error "extra ';'" "extra ;" { target *-*-* } 19 }
 
 int main() {
    static void foo(int i, int j, double x, double y) ;// { dg-error "" } .*
index 127aa8cf7b87b8cf39f6bf1a0f57c5f7a712b95e..8ec6825abfa02f995ed8f92e50c0709d1d654b8e 100644 (file)
@@ -9,11 +9,12 @@
 class B
 {
 public:
-      operator=(B &); // { dg-error "" } no type or storage class
+      operator=(B &); // { dg-error "no type" }
+      // { dg-message "candidates" "note" { target *-*-* } 12 }
 };
 
 void
 test(B &b1, const B &b2)
 {
-        b1 = b2;// { dg-error "" } .*
+        b1 = b2;// { dg-error "match" }
 }
index c9aff266fdb41ae456cb004df75a523c3d9b6037..f2240ddfc18c6094272f1e24412c1de63f8967d6 100644 (file)
@@ -3,11 +3,11 @@
 
 class B;
 
-class A {                      // { dg-error "" } copy ctor candidate
+class A {                      // { dg-message "note" } copy ctor candidate
   private:
-    A(B *);                    // { dg-error "" } 
+    A(B *);                    // { dg-message "note" } 
   public:
-    A(long);                   // { dg-error "" } 
+    A(long);                   // { dg-message "note" } 
 };
 
-A a(0); // { dg-error "" } should be ambigious
+A a(0); // { dg-error "ambiguous" }
index de39a529e1baacbfdbe1972620b60eabb1de2b50..e5e1cb1081d331942da73fa64e58dedb94620c04 100644 (file)
@@ -5,10 +5,10 @@ public:
   Parent( char *s ) {}
 };
 
-class Child : public Parent {          // { dg-error "" } called
+class Child : public Parent {          // { dg-message "note" } called
 };
 
 int main() {
-  Child c( "String initializer" );     // { dg-error "" } bad
+  Child c( "String initializer" );     // { dg-error "match" } bad
   return 0;
 }
index 6be0a08685f2dd84cf441bb41ec147b201226a64..746a57ccfd648a2174720730aed465f7d855270c 100644 (file)
@@ -6,7 +6,7 @@ class data;
 class conatiner {
 public:
   virtual void* first    ();
-  virtual data* contents (void* i);     // { dg-error "" } candidates
+  virtual data* contents (void* i);     // { dg-message "candidates" }
 };
 
 class user {
@@ -17,5 +17,5 @@ private:
 };
 
 data* user::data1() const {
-  return (_c.contents (_c.first));     // { dg-error "" } 
+  return (_c.contents (_c.first));     // { dg-error "match" } 
 }
index 807803f0a949df6b9e6be86c8c28d84067234bd0..c8664390b4ad36beabe01c9c5e1210fb0f927508 100644 (file)
@@ -196,7 +196,7 @@ Pix
 List_DLS<T>::search(const T& item) const
 {
     for (Pix x=this->first(); 0 != x; this->next(x)) {
-       if (item == this->operator()(x)) // { dg-error "" } const subversion
+       if (item == this->operator()(x)) // { dg-error "match" } const subversion
            return x;
     }
     return 0;
@@ -485,8 +485,8 @@ class STRLIdentifier {
     char buf[10];
 };
 
-extern int operator==(vertex<STRLIdentifier*>&, vertex<STRLIdentifier*>&); // { dg-error "" } const subversion
-extern int operator==(STRLIdentifier&, STRLIdentifier&); // { dg-error "" } fn ref in err msg
+extern int operator==(vertex<STRLIdentifier*>&, vertex<STRLIdentifier*>&); // { dg-message "candidates" } const subversion
+extern int operator==(STRLIdentifier&, STRLIdentifier&); // { dg-message "note" } fn ref in err msg
 
 extern int x(List_DLSp<STRLIdentifier *>);
 
index 897adfd58a61850bfb3cc4b19fc1f554f31c7883..1d5b3974f9aaa645f3105a9bd0ca2570e0ff8498 100644 (file)
@@ -3,7 +3,7 @@
 class A
 {
        public:
-      A(A &); // { dg-error "" } candidates are
+      A(A &); // { dg-message "candidates" }
 };
 
 class B
@@ -18,6 +18,6 @@ class C
        C()
        {
                B       b;
-               A a = b;// { dg-error "" } 
+               A a = b;// { dg-error "match" } 
        }
 };
index c2bdce312f6794ba73b4fec43a08d87466f00323..a08a404aa91cac144a103780d62c0a9b73c86045 100644 (file)
@@ -12,12 +12,12 @@ class C
 class D
 {
    public:
-   void a(C& b); // { dg-error "" } referenced below
+   void a(C& b); // { dg-message "candidates" }
 };
 
 void C::test() const
 {
    D d;
 
-   d.a(*this); // { dg-error "" } *this is const, so should get error
+   d.a(*this); // { dg-error "match" } *this is const, so should get error
 }
index 748231c66b8ab5c04115e583c13a516a596039f7..83879bd7390b989fbc4369f5f0751bc4eeb56b72 100644 (file)
@@ -10,13 +10,13 @@ class B;
 
 class A {
 public:
-       A(B&);                  // { dg-error "" } fn ref in err msg
+       A(B&);                  // { dg-message "note" } fn ref in err msg
 };
 
 class B {
 public:
-       operator A();           // { dg-error "" } fn ref in err msg
+       operator A();           // { dg-message "candidates" } fn ref in err msg
 };
 
 B b;
-A a = b;  // { dg-error "" } should fail as it is ambigious.
+A a = b;  // { dg-error "ambiguous" } should fail as it is ambigious.
index ab2d034b868cdf7105c0b76fe45da8d19489ded9..aff4a6a7bc70e77d8065609ee9362478b40578be 100644 (file)
@@ -2,7 +2,7 @@
 // prms-id: 9068
 
 struct ostream {
-  void operator<< (int);       // { dg-error "" } fn ref in err msg
+  void operator<< (int);       // { dg-message "candidates" } fn ref in err msg
 };
 
 class C {
@@ -13,7 +13,7 @@ public:
 
 void foo (ostream& lhs, const C& rhs)
 {
-  lhs << rhs.i;                // { dg-error "" } no such i for any opr << ()
+  lhs << rhs.i;                // { dg-error "match" } no such i for any opr << ()
 }
 
 int& C::i () {
index 89fd8e6fc0e6103b9c147ec4b07e66ad3513f68f..17eaf0743fc0ffb5c0685aec6097ae50c66bd133 100644 (file)
@@ -2,4 +2,5 @@
 // GROUPS passed niklas ellipsis
 typedef void (*T) (...);
 void f ();
-struct S { void g (T); void h() { g(f); } };// { dg-error "" } 
+struct S { void g (T); void h() { g(f); } };// { dg-error "match" "match" } 
+// { dg-message "candidates" "note" { target *-*-* } 5 }
index d25c79fb77e8a50be2752a8eec5a51396621affe..cf3373964a224801f298ebdca233c9aa95d8fd6d 100644 (file)
@@ -1,5 +1,6 @@
 // { dg-do assemble  }
 // GROUPS passed niklas ellipsis
 void f ();
-void g1 (void (*) (...)); void h1 () { g1 (f); }// { dg-error "" } .*
-struct S { void g2 (void (*) (...)); void h2 () { g2 (f); } };// { dg-error "" } 
+void g1 (void (*) (...)); void h1 () { g1 (f); }// { dg-error "invalid conversion" }
+struct S { void g2 (void (*) (...)); void h2 () { g2 (f); } };// { dg-error "match" "match" } 
+// { dg-message "candidates" "note" { target *-*-* } 5 }
index 4fe96eb3a68860fb74941562893f9e482f5f2a61..19e3ca1dab0b2d085ddfdc380b05bab95e039b3c 100644 (file)
@@ -1,5 +1,5 @@
 // { dg-do assemble  }
 // GROUPS niklas uncaught default-construct
 struct A { A (int); };
-struct B : A {}; // { dg-error "" } without ctor // ERROR - candidates
-void f () { B (0); }// { dg-error "" } .*
+struct B : A {}; // { dg-message "note" } without ctor // ERROR - candidates
+void f () { B (0); }// { dg-error "match" } .*
index a6ea9439d085dea02eb77bc7db315519d388b4df..85df6bd694b4a898e92be8e119a60a997e7ee0e7 100644 (file)
@@ -1,13 +1,13 @@
 // { dg-do assemble  }
 namespace A{
-  void f();   // { dg-error "" } .*
+  void f();   // { dg-message "note" }
 }
 
 using namespace A;
 
-void f();     // { dg-error "" } .*
+void f();     // { dg-message "note" }
 
 void g()
 {
-  f();        // { dg-error "" } ambiguous, ::f or A::f ?
+  f();        // { dg-error "ambiguous" } ambiguous, ::f or A::f ?
 }
index 7059b1949f85327f7c0d499b078a8376e4fb4cbb..a9559c7153b6409cac6856bed67f352b0ed43588 100644 (file)
@@ -5,7 +5,7 @@ namespace bar
   // trick it to provide some prior declaration
   template<class T>
   void foo(); // { dg-error "definition" }
-  template<class T>class X; // { dg-error "note: previous declaration" }
+  template<class T>class X; // { dg-message "note: previous declaration" }
 }
 
 template <typename T>
@@ -20,4 +20,4 @@ template<> void bar::foo<int>()     // { dg-error "different namespace" }
 }
 
 template<class T,class U>
-class bar::X{};         // { dg-error "error: redeclared with 2 template parameter" }
+class bar::X{};         // { dg-error "redeclared with 2 template parameter" }
index 057457c708713cb151ca8b98fae9edc2ac1b7fd9..c3425c7f290629105242387bb52f414369664a68 100644 (file)
@@ -3,17 +3,17 @@
 
 namespace foo
 {
-  void x (bool);     // { dg-error "" } candidates
-  void x (char);     // { dg-error "" } candidates
-  void x (int);      // { dg-error "" } candidates
-  void x (double);   // { dg-error "" } candidates
+  void x (bool);     // { dg-message "candidates" }
+  void x (char);     // { dg-message "note" } candidates
+  void x (int);      // { dg-message "note" } candidates
+  void x (double);   // { dg-message "note" } candidates
 }
 
-namespace baz { void x (int); }  // { dg-error "" } candidates
+namespace baz { void x (int); }  // { dg-message "note" }  candidates
 
 void fn (int i)
 {
   using foo::x;
   using baz::x;
-  x(i);         // { dg-error "" } ambiguous
+  x(i);         // { dg-error "ambiguous" }
 }
index e6ab00b907cb18a2c9db06c57c986df25c42a63d..3912dbad5ed25807e7868b30be480f56a3a29f7b 100644 (file)
@@ -29,3 +29,4 @@ struct baz : foo {
 } baz_;
 
 struct bad : baz {} bad_; // { dg-error "" } delete is private in vdtor
+// { dg-message "synthesized" "note" { target *-*-* } 31 }
index 5864be7cdb6c6a87a40512837d549fe481281698..91b3b02a439a654c57ae513ab037eda03114b887 100644 (file)
@@ -6,18 +6,19 @@
 // Based on bug report by JDonner <jdonner@schedsys.com>
 
 struct foo {
-  static int bar(); // { dg-error "" } candidate
-  void bar(int); // { dg-error "" } candidate
+  static int bar(); // { dg-error "candidate" }
+  void bar(int); // { dg-error "foo::bar" }
 };
 
 /* gcc emits a hard error without -pedantic, and a warning with
    -pedantic, even in bad1.  */
 int (*ok1)() = foo::bar;
-void (foo::*bad1)(int) = foo::bar; // { dg-error "" } missing &
+void (foo::*bad1)(int) = foo::bar; // { dg-error "assuming pointer" }
+// { dg-message "note" "note" { target *-*-* } 16 }
 
 int (*ok2)() = &foo::bar; // ok
-void (*bad2)(int) = foo::bar; // { dg-error "" } overload resolution fails
+void (*bad2)(int) = foo::bar; // { dg-error "no matches" }
 
 void (foo::*ok3)(int) = &foo::bar; // ok
-int (foo::*bad3)() = foo::bar; // { dg-error "" } overload resolution fails
+int (foo::*bad3)() = foo::bar; // { dg-error "no matches" }
 
index 09e9788e26f8b100ee011257f6e36caffa4ece58..9d6af1dfe879318dd522138ef4246da6badf3e9c 100644 (file)
@@ -7,11 +7,12 @@ class foo {
    friend class __iterator;
    typedef __iterator const_iterator;
    virtual ~foo() { }
-   __iterator begin();                         // { dg-error "" } 
+   __iterator begin();                         // { dg-message "candidates" } 
 };
 static void iteratorTest(const foo &x)
 {
-   foo::const_iterator i = x.begin();          // { dg-error "" } 
+   foo::const_iterator i = x.begin();          // { dg-error "incomplete type" "incomplete type" } 
+   // { dg-error "no matching" "no matching" { target *-*-* } 14 }
    for (; i; ++i)
       *i;
 }
index 517bac2d5d6866f5570508dc4210b90bdb6ec00c..5460e03886fcc73c95efd1d9aa9beaeefa87e283 100644 (file)
@@ -2,16 +2,17 @@
 // { dg-options "-fshow-column" }
 // Origin: Jakub Jelinek <jakub@redhat.com>
 
-class X { // { dg-error "1: error: new types may not be defined in a return type|1: note: \\(perhaps a semicolon is missing after the definition of 'X'\\)" }
+class X { // { dg-error "1:new types may not be defined in a return type" "new types" }
+// { dg-message "1:\\(perhaps a semicolon is missing after the definition of 'X'\\)" "note" { target *-*-* } 5 }
 public:
   X();
   virtual ~X();
 }
 
-X::x() // { dg-error "6: error: no 'X X::x\\(\\)' member function declared in class 'X'" }
+X::x() // { dg-error "6:no 'X X::x\\(\\)' member function declared in class 'X'" }
 {
 }
 
-X::~x()        // { dg-error "6: error: expected class-name before '\\(' token" }
+X::~x()        // { dg-error "6:expected class-name before '\\(' token" }
 {                              
 }
index a03d2e9d53ecd6c66347f64bff2de149842b1ca3..bdcfcb02c6f57093644bdfbe5330395cc4ecdd90 100644 (file)
@@ -6,14 +6,14 @@
 
 // We should not allow arrays of abstract type. [class.abstract/2]
 
-struct cow_t { // { dg-error "" } note
-  virtual void f()=0; // { dg-error "" } pure
+struct cow_t { // { dg-message "pure" }
+  virtual void f()=0; // { dg-message "note" }
 };
 
 
 int main()
 {
-  cow_t cow[2];  // { dg-error "" } abstract class
+  cow_t cow[2];  // { dg-error "invalid abstract type" }
   cow[0].f();
   return 0;
 }
index 9471448c21bc9021b1c7656b2af3b86c228d503c..1f1f60d19c2fb26688a056804228665bd1ad35d3 100644 (file)
@@ -3,9 +3,9 @@
 // Simplified from bug report by Trevor Taylor <ttaylor@powerup.com.au>
 
 struct T {
-  int operator()(int) { } // { dg-error "" } candidate
+  int operator()(int) { } // { dg-message "candidates" }
 };
 
 int main() {
-  T()(); // { dg-error "" } no such operator
+  T()(); // { dg-error "match" } no such operator
 }
index ef9c1f7823b8181044627c666e29a9955950c578..9a5c4ca9540d0be02079f6753b06f236a219550a 100644 (file)
@@ -16,7 +16,9 @@ struct B : public A {
 int main()
 {
   B b;
-  if ((const char *)b != 0)  // { dg-warning "" } surprising overload resolution
+  if ((const char *)b != 0)  // { dg-warning "choosing 'B" "B" } surprising overload resolution
+  // { dg-warning "for conversion" "conv" { target *-*-* } 19 }
+  // { dg-message "note" "note" { target *-*-* } 19 }
     return 1;
   if ((const char *)(const B)b == 0)
     return 2;
index 17b70d406b2ed636ae5ffda4bc3d3e35e68bbfe1..3b0cab79fd9e4e63954b46ad43cda96fb2327e02 100644 (file)
@@ -22,7 +22,9 @@
 
 
 void ovl (int);          // { dg-error "" } candidate
+// { dg-message "int" "int" { target *-*-* } 24 }
 void ovl (float);        // { dg-error "" } candidate
+// { dg-message "float" "float" { target *-*-* } 26 }
 void fn (int);
 void fna (int);
 
@@ -72,7 +74,7 @@ int main (int argc, char **argv)
   ptr = (argc ? fna : fn);
   ptr = (argc ? &fna : &fn);
   
-  f;                // { dg-warning "" } not a call
+  f;                // { dg-error "" } not a call
   ovl;              // { dg-error "" } not suitable for overload
   &ovl;             // { dg-error "" } not suitable for overload
   (void)f;          // ok
index fa9e92ec99855865edbd484deed6ccac8f31aeac..d8568dd9b1b0df713c35b92182ab432956a5374a 100644 (file)
@@ -3,7 +3,7 @@
 // Bug: g++ was crashing after giving errors.
 
 template<class T>
-  void connect_to_method( // { dg-error "candidates are" }
+  void connect_to_method( // { dg-message "candidates are" }
     T *receiver,
     void (T::*method)())
   {}
@@ -20,6 +20,6 @@ public:
 
 Gtk_Base::Gtk_Base()
 {
-  connect_to_method(this,&show);   // { dg-error "" } invalid pmf expression
-  connect_to_method(this,&expose); // { dg-error "" } invalid pmf expression
+  connect_to_method(this,&show);   // { dg-error "no match" } invalid pmf expression
+  connect_to_method(this,&expose); // { dg-error "pointer to member" } invalid pmf expression
 }
index 384885442b556f73bd66b191e8760239b02517ad..b04f7e2657c48a4567f4d2dfd792031842413c04 100644 (file)
@@ -20,9 +20,10 @@ struct A
 void A::foo ()
 {
   int (A::*ptr1) (int) = &A::ns;
-  int (A::*ptr2) (int) = A::ns;           // { dg-error "" } not ptr mem
-  int (A::*ptr3) (int) = &ns;             // { dg-error "" } not ptr mem
-  int (A::*ptr4) (int) = ns;              // { dg-error "" } not ptr mem
+  int (A::*ptr2) (int) = A::ns;           // { dg-error "pointer to member" "err" }
+  // { dg-message "pointer to member" "note" { target *-*-* } 23 }
+  int (A::*ptr3) (int) = &ns;             // { dg-error "pointer to member" "err" }
+  int (A::*ptr4) (int) = ns;              // { dg-error "pointer to member" "err" }
 
   int (*ptr5) (short) = &A::ns;
   int (*ptr6) (short) = A::ns;
@@ -30,12 +31,12 @@ void A::foo ()
   int (*ptr8) (short) = ns;
 
   int (A::*ptr11) (int) = &A::single;
-  int (A::*ptr12) (int) = A::single;      // { dg-error "" } not ptr mem
-  int (A::*ptr13) (int) = &single;        // { dg-error "" } not ptr mem
-  int (A::*ptr14) (int) = single;         // { dg-error "" } not ptr mem
+  int (A::*ptr12) (int) = A::single;      // { dg-error "match" }
+  int (A::*ptr13) (int) = &single;        // { dg-error "pointer to member" }
+  int (A::*ptr14) (int) = single;         // { dg-error "match" }
 
-  int (A::*ptr20) (int) = &(A::ns);       // { dg-error "" } not ptr mem
-  int (A::*ptr21) (int) = &(A::single);   // { dg-error "" } not ptr mem
+  int (A::*ptr20) (int) = &(A::ns);       // { dg-error "pointer to member" }
+  int (A::*ptr21) (int) = &(A::single);   // { dg-error "pointer to member" }
 
   int (*ptr31) (short) = &A::sole;
   int (*ptr32) (short) = A::sole;
index d86d8c1ea32a8c833ecd34fe8a01c5542549142a..8ed6df7863263d84fe9500cb14c0bfc74c7b853b 100644 (file)
@@ -9,19 +9,22 @@
 
 struct X {int m;};
 struct Y : X {int m;};
-struct Z;   // { dg-error "" } forward decl
+struct Z;   // { dg-error "forward decl" } 
 void fn1(va_list args)
 {
   int i = va_arg (args, int);
-  Y x = va_arg (args, Y);         // { dg-warning "" } cannot receive
-  Y y = va_arg (args, struct Y);  // { dg-warning "" } cannot receive
-  int &r = va_arg (args, int &);  // { dg-warning "" } cannot receive
+  Y x = va_arg (args, Y);         // { dg-warning "cannot receive" } 
+  Y y = va_arg (args, struct Y);  // { dg-warning "cannot receive" } 
+  int &r = va_arg (args, int &);  // { dg-warning "cannot receive" } 
   
-  Z z1 = va_arg (args, Z);        // { dg-error "" } incomplete
-  const Z &z2 = va_arg (args, Z);       // { dg-error "" } incomplete
+  Z z1 = va_arg (args, Z);        // { dg-error "incomplete" } 
+  const Z &z2 = va_arg (args, Z);       // { dg-error "incomplete" } 
 
-  va_arg (args, char);    // { dg-error "" } promote
-  va_arg (args, int []);  // { dg-error "" } promote
-  va_arg (args, int ());  // { dg-error "" } promote
-  va_arg (args, bool);    // { dg-error "" } promote
+  va_arg (args, char);    // { dg-warning "promote" } 
+  // { dg-message "should pass" "pass" { target *-*-* } 23 }
+  // { dg-message "abort" "abort" { target *-*-* } 23 }
+  va_arg (args, int []);  // { dg-error "array with unspecified bounds" } promote
+  va_arg (args, int ());  // { dg-warning "non-POD" } promote
+  va_arg (args, bool);    // { dg-warning "promote" "promote" } 
+  // { dg-message "abort" "abort" { target *-*-* } 28 }
 }
index 32eef6f301fae1c2e0a25de901523f58e6cb0dcf..9e72ea266a18726ef304c7acb2fb88b869a5f047 100644 (file)
@@ -3,7 +3,8 @@
 // compiler.
 
 class f_class
-{ };                           // { dg-error "" } candidates
+{ };                           // { dg-message "candidates" "candidates" } 
+// { dg-message "note" "note" { target *-*-* } 6 }
 
 volatile f_class
 ret_v_f_class()
@@ -15,6 +16,6 @@ ret_v_f_class()
 int main(void)
 {
   volatile f_class vf;
-  0 ? ret_v_f_class() : vf;    // { dg-error "" } can't copy volatile lvalue
+  0 ? ret_v_f_class() : vf;    // { dg-error "match" } can't copy volatile lvalue
   return 0;
 }
index 9f2a4bf065b94b63fb7519bd95ccceb3e4c52ea5..464b7c692d0c1cdd17a3c12f5eab30525ed42d5a 100644 (file)
@@ -10,5 +10,5 @@ struct S { // { dg-error "assignment" }
 void f()
 {
   S<const int> s;
-  s = s; // { dg-error "synthesized" }
+  s = s; // { dg-message "synthesized" }
 }
index 51bd79ab9755a1142cbf4ff0edbbaefa5432ec84..37af9ca434e4f648f895f7150bd754aed1f245f6 100644 (file)
@@ -9,9 +9,9 @@ template<typename X> struct auto_ptr {
    typedef X element_type;
 
    explicit auto_ptr(X* p =0) throw() : px(p) {}
-   auto_ptr(auto_ptr& r) throw() : px(r.release()) {} // { dg-error "" } candidate
+   auto_ptr(auto_ptr& r) throw() : px(r.release()) {} // { dg-message "note" } candidate
    template<typename Y>
-      auto_ptr(auto_ptr<Y>& r) throw() : px(r.release()) {}// { dg-error "" } candidate
+      auto_ptr(auto_ptr<Y>& r) throw() : px(r.release()) {}// { dg-message "note" } candidate
 
    auto_ptr& operator=(auto_ptr& r) throw() { 
       reset(r.release()); 
@@ -30,7 +30,7 @@ template<typename X> struct auto_ptr {
    X* release() throw() { X* p=px; px=0; return p; }
    void reset(X* p=0) throw() { if (px != p) delete px, px = p; }
 
-   auto_ptr(auto_ptr_ref<X> r) throw() : px(r.py) {} // { dg-error "" } candidate
+   auto_ptr(auto_ptr_ref<X> r) throw() : px(r.py) {} // { dg-message "candidate" } 
    template<typename Y> operator auto_ptr_ref<Y>() throw() {
       return auto_ptr_ref<Y>(release()); 
    }
@@ -51,5 +51,6 @@ int main() {
     auto_ptr<Derived> y(f());
     x = y;
     g(f());
-    h(f());                    // { dg-error "" } no usable copy ctor
+    h(f());                    // { dg-error "match" "match" } no usable copy ctor
+// { dg-error "initializing" "init" { target *-*-* } 54 }
 }
index cb0e2c7a38db1cf8371932f2fae449172d2f151f..2666b9bc1f78b41541657e2f11c4f049963b51c9 100644 (file)
@@ -1,6 +1,6 @@
 // { dg-do link }
 // This test should get a linker error for the reference to A<int>::i.
-// { dg-error "i" "" { target *-*-* } 0 }
+// { dg-message "i" "" { target *-*-* } 0 }
 
 template <class T> struct B { static const int i = 3; };
 template <class T> struct A { static const int i = B<T>::i; };
index bd2efc673aa8dd71a3608666a1a1122e1daf2e78..a66450f45201baffb5c599afadf3435fbd9de9f0 100644 (file)
@@ -3,9 +3,10 @@
 template<int M, int N>
 class GCD {
 public:
-  enum { val = (N == 0) ? M : GCD<N, M % N>::val }; // { dg-error "" } division
+  enum { val = (N == 0) ? M : GCD<N, M % N>::val }; // { dg-warning "division" "division" }
+// { dg-error "not a valid" "valid" { target *-*-* } 6 }
 };
 
 int main() {
-  GCD< 1, 0 >::val; // { dg-error "" } instantiated
+  GCD< 1, 0 >::val; // { dg-message "instantiated" }
 }
index f910294e65cc3a34dc017abf700cdf2a0addde1a..0a3220921ce80c3cf0f702ef58001a6ff54d142e 100644 (file)
@@ -1,7 +1,8 @@
 // { dg-do compile  }
 
 template <class T = int>
-struct A { // { dg-error "assignment" }
+struct A { // { dg-error "assignment" "assignment" }
+// { dg-message "instantiated" "inst" { target *-*-* } 4 }
   const T x;
   A() : x(0) { } A(T x) : x(x) { }
 }; 
@@ -10,7 +11,7 @@ template <class B>
 void func ()
 {
   B y; 
-  y = B();  // { dg-error "synthesized" }
+  y = B();  // { dg-message "synthesized" }
 }
 
 int main (void) { func< A<> >(); }
index 13695f9c69b195999a275908dd14a429f96ae3be..9bf99d16280794979d40c628e39677e447d9d6c4 100644 (file)
@@ -14,7 +14,7 @@ struct iterator {
 
 template <class Iterator>
 struct reverse_iterator : public
-iterator<typename iterator_traits<Iterator>::iterator_category> { // { dg-error "" } no type iterator_category
+iterator<typename iterator_traits<Iterator>::iterator_category> { // { dg-message "instantiated" } no type iterator_category
   protected:
   Iterator current;
   
index a2f1e288d3a156fa13a4aca3bc333c16b94568e8..4fc658eb157009dd3e1fb1a068d93364e2842bb8 100644 (file)
@@ -3,8 +3,10 @@
 
 template <class T>
 struct S {
-  typedef typename T::Y<T>::Z X; // { dg-error "" } No Y in A
-  X x; // { dg-error "" } No Y in A
+  typedef typename T::Y<T>::Z X; // { dg-error "non-template" "non-template" } No Y in A
+// { dg-message "note" "note" { target *-*-* } 6 }
+// { dg-error "does not declare" "not declare" { target *-*-* } 6 }
+  X x; // { dg-error "does not name a type" } No Y in A
 };
 
 struct A {
index 806e0f5c99c7be76f2bf8438b21e9bba7548397c..2c560492325340b4a94693b934bce49a1c608d76 100644 (file)
@@ -6,11 +6,11 @@
 template<class T>
 class X {
        class Y : public T
-       { // { dg-error "base type .* fails to be" "" }
+       { // { dg-error "base type .* fails to be" }
        };
-       Y y;                    // { dg-error "instantiated" "" }
+       Y y;                    // { dg-message "instantiated" }
 };
 int main() {
-       X<int> x;               // { dg-error "instantiated" "" }
+       X<int> x;               // { dg-message "instantiated" }
 }
 
index 40f7a7cb67f7791c338df4baf2d135298cb8098e..6cb67ddec6bb64a2fca939fa50fe54a905ee4b83 100644 (file)
@@ -4,12 +4,12 @@
 template <class RT>
 class Test {
 public:
-  Test(const RT& c = RT()) {} // { dg-error "" } reference to void
+  Test(const RT& c = RT()) {} // { dg-error "reference to void" } 
 };
 
 void f ()
 {
-  Test<void> c; // { dg-error "" } instantiated from here
+  Test<void> c; // { dg-message "instantiated" }
 }
 
 
index f90b4becb17d80b8a57ce1ba86adefc036ace0b9..ea32cf6ea9e4b68fe6c47d33cff017504799b5bf 100644 (file)
@@ -5,7 +5,7 @@ template <class T>
 void foo(T t);
 
 template <>
-void foo(int) {}; // { dg-error "6:" } previously defined here.
+void foo(int) {}; // { dg-error "6:previously declared here" }
 
 template <>
-void foo<int>(int) {} // { dg-error "6:" } duplicate specialization.
+void foo<int>(int) {} // { dg-error "6:redefinition" }
index 387d2d1d08ddde99e233ee05ee11e8aa52fe2ce9..5724f6d7d02f6db305e86e29d81cc4cc86831df1 100644 (file)
@@ -12,14 +12,14 @@ template <class T>
 T S<T>::t;
 
 template void f(int);
-template void f(int); // { dg-error "" } duplicate explicit instantiation 
+template void f(int); // { dg-error "duplicate explicit instantiation" } 
 template int S<int>::t;
-template int S<int>::t; // { dg-error "" } duplicate explicit instantiation 
+template int S<int>::t; // { dg-error "duplicate explicit instantiation" } 
 template class S<double>;
-template class S<double>; // { dg-error "" } duplicate explicit instantiation 
+template class S<double>; // { dg-error "duplicate explicit instantiation" } 
 
-extern template void f(double); // { dg-warning "" } extern not allowed
-inline template class S<float>; // { dg-warning "" } inline not allowed
+extern template void f(double); // { dg-error "extern" } extern not allowed
+inline template class S<float>; // { dg-error "inline" } inline not allowed
 
 template <class T>
 struct S<T*> {};
@@ -40,4 +40,5 @@ template void f(long double); // OK - explicit instantiation after
 template <class T>
 void g(T);
 
-template void g(int); // { dg-error "" } no definition of g.
+template void g(int); // { dg-error "no definition available" "no def" }
+// { dg-message "instantiated" "inst" { target *-*-* } 43 }
index baf1a931cbaa7436c1dcbb55987f75a3d90c2c85..93ce72e3025dd22bc4abd28a546fc39cc2d42674 100644 (file)
@@ -1,6 +1,6 @@
 // { dg-do assemble  }
 
-template <class T = int> // { dg-error "note: original definition" }
+template <class T = int> // { dg-message "note: original definition" }
 struct S
 { 
   template <class U = int>
index d65f2d10dd416485168f6c1dc3899deafcbba05c..015566f96a4a5ad83c0b59add2967dc73798741d 100644 (file)
@@ -15,13 +15,13 @@ struct A
   void baz ();
 };
 
-template <typename T> void foo (int (*)(T));      // { dg-error "" } candidate
-template <typename T> void foo (int (A::*)(T));   // { dg-error "" } candidate
+template <typename T> void foo (int (*)(T));      // { dg-message "candidate" } 
+template <typename T> void foo (int (A::*)(T));   // { dg-message "note" } candidate
 
 
 void A::baz ()
 {
-  foo (&A::f);  // { dg-error "" } ambiguous
+  foo (&A::f);  // { dg-error "ambiguous" } 
   foo (A::f);
   foo (&(A::f));
   foo (f);
index 7100988601f66da100e84ff9386ae3cff90b8770..4a580e177424050f9a99c5a8723d2861a1b3d7df 100644 (file)
@@ -1,22 +1,22 @@
 // { dg-do assemble  }
 
 template <class T>
-struct S1; // { dg-error "" } previous declaration
+struct S1; // { dg-message "previous declaration" } 
 
 template <class T, class U>
-struct S1 {}; // { dg-error "" } used 1 template parameter
+struct S1 {}; // { dg-error "redeclared" } used 1 template parameter
 
-template <class T = int> // { dg-error "" } original def of default
+template <class T = int> // { dg-message "original definition" }
 struct S2; 
 
 template <class T = int>
-struct S2; // { dg-error "" } redefinition of default
+struct S2; // { dg-error "redefinition of default" } 
 
-template <class T> // { dg-error "" } template parameter
+template <class T> // { dg-error "template parameter" } 
 struct S3;
 
 template <int I>
-struct S3; // { dg-error "" } redeclared here
+struct S3; // { dg-error "redeclared here" } 
 
 template <template <class T> class C>
-struct S3; // { dg-error "" } redeclared here
+struct S3; // { dg-error "redeclared here" } 
index f39dd79ec30b49a0caf9bd8a8334a5ec2405f9b3..a7e5ea252a95a66dd9bd7f8ba655c2bd4b138efb 100644 (file)
@@ -8,24 +8,24 @@
 
 extern "C" int puts (char const *);
 
-template <typename T> int Foo (T);    // { dg-error "" } candidate
-template <typename T> int Foo (T &);  // { dg-error "" } candidate
+template <typename T> int Foo (T);    // { dg-message "candidate" } 
+template <typename T> int Foo (T &);  // { dg-message "note" } candidate
 
-template <typename T> int Qux (T);    // { dg-error "" } candidate
-template <typename T> int Qux (T const &);  // { dg-error "" } candidate
+template <typename T> int Qux (T);    // { dg-message "candidate" } 
+template <typename T> int Qux (T const &);  // { dg-message "note" } candidate
 
-template <typename T> int Bar (T const *const &); // { dg-error "" } candidate
-template <typename T> int Bar (T *const &);       // { dg-error "" } candidate
-template <typename T> int Bar (T *);              // { dg-error "" } candidate
+template <typename T> int Bar (T const *const &); // { dg-message "candidate" } 
+template <typename T> int Bar (T *const &);       // { dg-message "note" } candidate
+template <typename T> int Bar (T *);              // { dg-message "note" } candidate
 
-template <typename T> int Baz (T *const &);       // { dg-error "" } candidate
-template <typename T> int Baz (T *);              // { dg-error "" } candidate
+template <typename T> int Baz (T *const &);       // { dg-message "candidate" } 
+template <typename T> int Baz (T *);              // { dg-message "note" } candidate
 
 int Baz (int const *ptr, int *ptr2)
 {
-  Baz (ptr2);   // { dg-error "" } ambiguous
-  Bar (ptr2);   // { dg-error "" } ambiguous
-  Foo (ptr2);   // { dg-error "" } ambiguous
-  Qux (ptr2);   // { dg-error "" } ambiguous
+  Baz (ptr2);   // { dg-error "ambiguous" } 
+  Bar (ptr2);   // { dg-error "ambiguous" } 
+  Foo (ptr2);   // { dg-error "ambiguous" } 
+  Qux (ptr2);   // { dg-error "ambiguous" } 
   return 0;
 }
index 9e69cbcc8dee5250c94441708a5f94fe9568ace0..38488d2c0ac9d733d81c8fbd50862c005158cf12 100644 (file)
@@ -1,9 +1,9 @@
 // { dg-do assemble  }
 
-template <class A> class B {    // { dg-error "" } candidates
+template <class A> class B {    // { dg-message "note" } 
   A a;                          
  public:
-  B(A&aa);                     // { dg-error "" } near match
+  B(A&aa);                     // { dg-message "candidates" }
   ~B();
 };
-static B<int> b_int (3);       // { dg-error "" } no matching function
+static B<int> b_int (3);       // { dg-error "no matching function" } 
index 931b212b8b76f0bc1758ecb5369ac490384d13a6..9b412756b42771b8d49bd6f922bbd5323c27325d 100644 (file)
@@ -11,10 +11,11 @@ struct A
 template <class U>
 struct B : public A<U>
 {
-  A_Type Func(); // { dg-warning "" } implicit typename
+  A_Type Func(); // { dg-error "does not name a type" "err" } implicit typename
+  // { dg-message "note" "note" { target *-*-* } 14 }
 };
 
 
 template <class U>
-B<U>::A_Type B<U>::Func() { // { dg-warning "" } implicit typename
+B<U>::A_Type B<U>::Func() { // { dg-error "expected" } implicit typename
 }
index 34e356b57ea768fa06f4daa5d14978b9970973af..27944795ae29d3d5dcda6033438aecba4dd35a23 100644 (file)
@@ -10,10 +10,11 @@ struct A
 template <class U>
 struct B : public A<U>
 {
-  A_Type Func();               // { dg-error "" } declaration
+  A_Type Func();               // { dg-error "does not name a type" "err" }
+  // { dg-message "note" "note" { target *-*-* } 13 }
 };
 
 template <class U>
-A<U>::A_Type B<U>::Func()       // { dg-error "" } function
+A<U>::A_Type B<U>::Func()       // { dg-error "expected" } function
 {                              
 }
index cc89c69bcaaa4911515e7effd1e684c2531770ba..92cd191deb0b1ad7581074a42caf199a94fb2b13 100644 (file)
 
 template <typename T> void Foo (T const **);
 template <typename T> void Bar (T const * const *);
-void Foo (int);       // { dg-error "" } candidate
-void Foo (float);     // { dg-error "" } candidate
+void Foo (int);       // { dg-message "candidate" } 
+void Foo (float);     // { dg-message "note" } candidate
 
 void baz (int **p1)
 {
-  Foo (p1);   // { dg-error "" } no such function
+  Foo (p1);   // { dg-error "match" } no such function
   Bar (p1);   // OK
 }
index a542b447e6e9b11f525e9ba6e5616cf979c62362..dced89d17ab85a80c45674db643548638f2d2811 100644 (file)
@@ -14,13 +14,14 @@ void PrintArgs (Type somearg, ...)
 va_list argp;
 va_start (argp, somearg);
 Type value;
-value = va_arg (argp, Type); // { dg-error "" } cannot pass non-POD
+value = va_arg (argp, Type); // { dg-warning "non-POD" } cannot pass non-POD
 va_end (argp);
 }
 
 int main (void)
 {
 A dummy;
-PrintArgs (dummy, dummy); // { dg-error "" } cannot pass non-POD
+PrintArgs (dummy, dummy); // { dg-warning "non-POD" } cannot pass non-POD
+// { dg-message "instantiated" "inst" { target *-*-* } 24 }
 return 0;
 }
index e72ebc47a22bea803b37166c600c1ba34c39a8ce..5a70e194439e3d17d4a972576e7da53c8749da06 100644 (file)
@@ -20,7 +20,7 @@ inline istream& operator>>(istream& is, Empty& ) { return is;}
 
 template<class VertexType, class EdgeType>
 class Graph
-{  // { dg-error "" } candidates
+{  // { dg-message "note" } candidates
   public:
     // public type interface
     typedef std::map<int, EdgeType > Successor;
@@ -42,18 +42,18 @@ template<class VertexType, class EdgeType>
 ostream& operator<<(ostream& os, Graph<VertexType,EdgeType>& G)
 {
     // display of vertices with successors
-  for(int i = 0; i < G.size(); ++i)  // { dg-error "" } no size function
+  for(int i = 0; i < G.size(); ++i)  // { dg-error "no member" } no size function
     {
-      os << G[i].first << " <";      // { dg-error "" } no index operator
+      os << G[i].first << " <";      // { dg-error "no match" } no index operator
 
         // The compiler does not like this line!!!!!!
         typename Graph<VertexType, EdgeType>::Successor::iterator
-         startN = G[i].second.begin(), // { dg-error "" } no index operator
-         endN   = G[i].second.end();  // { dg-error "" } no index operator
+         startN = G[i].second.begin(), // { dg-error "no match" } no index operator
+         endN   = G[i].second.end();  // { dg-error "no match" } no index operator
 
         while(startN != endN)
         {
-            os << G[(*startN).first].first << ' ' // { dg-error "" } no index operator
+            os << G[(*startN).first].first << ' ' // { dg-error "no match" } no index operator
                << (*startN).second << ' ';
             ++startN;
         }
@@ -65,7 +65,7 @@ ostream& operator<<(ostream& os, Graph<VertexType,EdgeType>& G)
 int main()
 {
     // no edge weighting, therefore type Empty:
-    Graph<std::string, Empty> V(true);        // { dg-error "" } no bool constructor
+    Graph<std::string, Empty> V(true);        // { dg-error "no match" } no bool constructor
     // ReadGraph(V, "gra1.dat");
 
     // display of vertices with successors
index 75aab60a8ddc8c8613c1e91e018af04b6b2c4130..75341d4148a35f1c2e4747b4aedcc6e0616d8cb6 100644 (file)
@@ -10,11 +10,11 @@ struct a {
        void bar( double );
        void bar( float );
 
-  void foo( void (a::*member)(float) );   // { dg-error "" } candidate
+  void foo( void (a::*member)(float) );   // { dg-message "candidate" } 
 };
 
 a::a()
 {
-       foo( &junk ); // { dg-error "" } junk is an unqualified-id.
-       foo( &bar );  // { dg-error "" } bar is an unqualified-id.
+       foo( &junk ); // { dg-error "match" } junk is an unqualified-id.
+       foo( &bar );  // { dg-error "match" } bar is an unqualified-id.
 }
index b969d686624c6d3ac07474aaec16653f495cb441..28953b05b4ec7fae6df08ec14d4685fd7ef3b2a1 100644 (file)
@@ -11,17 +11,18 @@ public:
         operator int() const {return 2;}
 };
 
-bool operator==(const MyInt& a, const int& b)   // { dg-error "" } candidate
+bool operator==(const MyInt& a, const int& b)   // { dg-message "note" } candidate
 {
         return (int)a == b;
 }
 
-bool operator==(const MyInt& a, const MyInt& b) // { dg-error "" } candidate
+bool operator==(const MyInt& a, const MyInt& b) // { dg-message "note" } candidate
 {
         return (int)a == (int)b;
 }
 
 bool f()
 {
-  return 3 == MyInt();                          // { dg-error "" } ambiguous
+  return 3 == MyInt();                          // { dg-error "ambiguous" "err" } 
+  // { dg-message "candidates" "note" { target *-*-* } 26 }
 }
index f47d3dbf7a02ee76fd5e5ad4462d3a604bacc9aa..5f82e1fc9264b6089e561b1c68f2bcaad2f5b83b 100644 (file)
@@ -7,7 +7,7 @@ class some_base
         {
 public:
         class base_func_args;
-        virtual void func(base_func_args &) = 0; // { dg-error "" } referenced below
+        virtual void func(base_func_args &) = 0; // { dg-message "note" } referenced below
         };
 
 class some_base::base_func_args
@@ -17,7 +17,7 @@ public:
         };
 
 class some_derived : public some_base
-        {  // { dg-error "" } note
+        {  // { dg-message "note" }
 public:
         class derived_func_args;
         void func(derived_func_args &);
@@ -30,7 +30,8 @@ public:
         float f;
         };
 
-class some_derived::func(derived_func_args &a)  // { dg-error "" } illegal member syntax
+class some_derived::func(derived_func_args &a)  // { dg-error "does not name a type" "type" } illegal member syntax
+// { dg-error "expected" "exp" { target *-*-* } 33 }
         {
         std::cout << a.i << ' ' << a.f << std::endl;
         }
@@ -38,12 +39,12 @@ class some_derived::func(derived_func_args &a)  // { dg-error "" } illegal membe
 int
 main()
         {
-       some_derived d;                     // { dg-error "" } abstract class
-        some_derived::derived_func_args dfa; // { dg-error "" } incomplete class
+       some_derived d;                     // { dg-error "abstract type" } 
+        some_derived::derived_func_args dfa; // { dg-error "incomplete type" } 
         some_base *b = &d;
 
         dfa.i = 10;
         dfa.f = 20;
-        b->func(dfs);                       // { dg-error "" } dfs not declared
+        b->func(dfs);                       // { dg-error "'dfs' was not declared" } 
         return 0;
         }
index 314ec9d2426638f07e00b2e897f4382403370f9f..a7e61804cb1a3c504a5dc9851a8f18e888c8ec87 100644 (file)
@@ -14,7 +14,8 @@ using namespace std;
 template <class T>
 class Vector
 {
-  friend ostream& operator<< (ostream& out, const Vector<T> & vec); // { dg-warning "" } 
+  friend ostream& operator<< (ostream& out, const Vector<T> & vec); // { dg-warning "non-template" "warn" } 
+  // { dg-message "note" "note" { target *-*-* } 17 }
 };
 
 template <class T>
index 5d3f7e6bbf1b147c6ed6cb3257aeb5b5340edb68..74051a148ade66325a56706a622526d9e0ba4242 100644 (file)
@@ -5,13 +5,14 @@
 
 int r = 0;
 
-struct foo {                   // { dg-error "" } candidate
-  foo(int x) { r = 1; }                // { dg-error "" } candidate
+struct foo {                   // { dg-message "note" } candidate
+  foo(int x) { r = 1; }                // { dg-message "candidate" }
 };
 
 struct bar : foo {
   typedef int an_int;
-  bar() : bar::an_int(3) {}    // { dg-error "" } not a base
+  bar() : bar::an_int(3) {}    // { dg-error "match" "match" } not a base
+  // { dg-message "expected" "exp" { target *-*-* } 14 }
 };
 
 int
index 7ca5b7397818d77df8c6f855776f1666389323f1..07f1c504eb226776cd3e48c3e4955de758052992 100644 (file)
@@ -185,6 +185,8 @@ proc g++_init { args } {
     global GXX_UNDER_TEST
     global TESTING_IN_BUILD_TREE
     global target_triplet
+    global gcc_warning_prefix
+    global gcc_error_prefix
 
     # We set LC_ALL and LANG to C so that we get the same error messages as expected.
     setenv LC_ALL C
@@ -247,6 +249,9 @@ proc g++_init { args } {
     # error-message parsing machinery.
     lappend ALWAYS_CXXFLAGS "additional_flags=-fmessage-length=0"
 
+    set gcc_warning_prefix "warning:"
+    set gcc_error_prefix "error:"
+
     if { [string match "*-*-darwin*" $target_triplet] } {
        lappend ALWAYS_CXXFLAGS "ldflags=-multiply_defined suppress"
        }