diff options
author | Mark Mitchell <mark@codesourcery.com> | 2003-05-01 02:02:59 +0000 |
---|---|---|
committer | Mark Mitchell <mmitchel@gcc.gnu.org> | 2003-05-01 02:02:59 +0000 |
commit | 6481daa9711df83b9c1a3f37710cf8afbd147a1c (patch) | |
tree | 7e2d30d0d72b4e8ca17ca703564701408fe15653 /gcc | |
parent | 44c8a5f8d80ff52dc67217ec4697dbdf5c409140 (diff) | |
download | gcc-6481daa9711df83b9c1a3f37710cf8afbd147a1c.zip gcc-6481daa9711df83b9c1a3f37710cf8afbd147a1c.tar.gz gcc-6481daa9711df83b9c1a3f37710cf8afbd147a1c.tar.bz2 |
g++-dg.exp (g++-dg-test): Add "repo" option.
* lib/g++-dg.exp (g++-dg-test): Add "repo" option.
(dg-gpp-additional-sources): New function.
(dg-gpp-additional-files): Likewise.
* lib/g++.exp (additional_sources): New variable.
(additional_files): Likewise.
(g++_target_compile): Deal with them.
* lib/old-dejagnu.exp: Remove.
* g++.old-deja/old-deja.exp: Use dg.exp, not old-dejagnu.exp.
* g++.old-deja: Revise all tests to use dg commands.
From-SVN: r66317
Diffstat (limited to 'gcc')
3258 files changed, 6567 insertions, 6105 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 96ea0ab..2387d53 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,15 @@ +2003-04-30 Mark Mitchell <mark@codesourcery.com> + + * lib/g++-dg.exp (g++-dg-test): Add "repo" option. + (dg-gpp-additional-sources): New function. + (dg-gpp-additional-files): Likewise. + * lib/g++.exp (additional_sources): New variable. + (additional_files): Likewise. + (g++_target_compile): Deal with them. + * lib/old-dejagnu.exp: Remove. + * g++.old-deja/old-deja.exp: Use dg.exp, not old-dejagnu.exp. + * g++.old-deja: Revise all tests to use dg commands. + 2003-04-30 Kriang Lerdsuwanakij <lerdsuwa@users.sourceforge.net> PR c++/9432, c++/9528 diff --git a/gcc/testsuite/g++.old-deja/g++.abi/aggregates.C b/gcc/testsuite/g++.old-deja/g++.abi/aggregates.C index 7b7d263..187c30b 100644 --- a/gcc/testsuite/g++.old-deja/g++.abi/aggregates.C +++ b/gcc/testsuite/g++.old-deja/g++.abi/aggregates.C @@ -1,5 +1,5 @@ -// Skip if not target: i?86-*-linux* i?86-*-freebsd* -// Special g++ Options: -malign-double +// { dg-do run { target i?86-*-linux* i?86-*-freebsd* } } +// { dg-options "-malign-double" } // Origin: Alex Samuel <samuel@codesourcery.com> /* Test the data layout of C aggregates by checking aggregate size and diff --git a/gcc/testsuite/g++.old-deja/g++.abi/align.C b/gcc/testsuite/g++.old-deja/g++.abi/align.C index 3a79ded..28d3ba9 100644 --- a/gcc/testsuite/g++.old-deja/g++.abi/align.C +++ b/gcc/testsuite/g++.old-deja/g++.abi/align.C @@ -1,5 +1,5 @@ -// Skip if not target: i?86-*-linux* i?86-*-freebsd* -// Special g++ Options: -malign-double +// { dg-do run { target i?86-*-linux* i?86-*-freebsd* } } +// { dg-options "-malign-double" } // Origin: Alex Samuel <samuel@codesourcery.com> /* Test the size and alignment of fundamental C types for compliance diff --git a/gcc/testsuite/g++.old-deja/g++.abi/arraynew.C b/gcc/testsuite/g++.old-deja/g++.abi/arraynew.C index 5f296eb..3b11796 100644 --- a/gcc/testsuite/g++.old-deja/g++.abi/arraynew.C +++ b/gcc/testsuite/g++.old-deja/g++.abi/arraynew.C @@ -1,3 +1,4 @@ +// { dg-do run } // Origin: Mark Mitchell <mark@codesourcery.com> #if defined (__GXX_ABI_VERSION) && __GXX_ABI_VERSION >= 100 diff --git a/gcc/testsuite/g++.old-deja/g++.abi/bitfields.C b/gcc/testsuite/g++.old-deja/g++.abi/bitfields.C index f7d9eaf..15f4ada 100644 --- a/gcc/testsuite/g++.old-deja/g++.abi/bitfields.C +++ b/gcc/testsuite/g++.old-deja/g++.abi/bitfields.C @@ -1,5 +1,5 @@ -// Skip if not target: i?86-*-linux* i?86-*-freebsd* -// Special g++ Options: -malign-double +// { dg-do run { target i?86-*-linux* i?86-*-freebsd* } } +// { dg-options "-malign-double" } // Origin: Alex Samuel <samuel@codesourcery.com> /* Test the layout of bitfields in C aggretagtes for compliance with diff --git a/gcc/testsuite/g++.old-deja/g++.abi/crash1.C b/gcc/testsuite/g++.old-deja/g++.abi/crash1.C index 8526818..c5f3d55 100644 --- a/gcc/testsuite/g++.old-deja/g++.abi/crash1.C +++ b/gcc/testsuite/g++.old-deja/g++.abi/crash1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // // Copyright (C) 2001 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 11 Apr 2001 <nathan@codesourcery.com> diff --git a/gcc/testsuite/g++.old-deja/g++.abi/cxa_vec.C b/gcc/testsuite/g++.old-deja/g++.abi/cxa_vec.C index 05c3fcc..99af486 100644 --- a/gcc/testsuite/g++.old-deja/g++.abi/cxa_vec.C +++ b/gcc/testsuite/g++.old-deja/g++.abi/cxa_vec.C @@ -1,3 +1,4 @@ +// { dg-do run } // Test __cxa_vec routines // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 7 Apr 2000 <nathan@nathan@codesourcery.com> diff --git a/gcc/testsuite/g++.old-deja/g++.abi/empty.C b/gcc/testsuite/g++.old-deja/g++.abi/empty.C index b7a791f..40aac9e 100644 --- a/gcc/testsuite/g++.old-deja/g++.abi/empty.C +++ b/gcc/testsuite/g++.old-deja/g++.abi/empty.C @@ -1,4 +1,5 @@ -// Special g++ Options: -w +// { dg-do run } +// { dg-options "-w" } // Origin: Mark Mitchell <mark@codesourcery.com> #if defined (__GXX_ABI_VERSION) && __GXX_ABI_VERSION >= 100 diff --git a/gcc/testsuite/g++.old-deja/g++.abi/empty2.C b/gcc/testsuite/g++.old-deja/g++.abi/empty2.C index 4116517..842a5d1 100644 --- a/gcc/testsuite/g++.old-deja/g++.abi/empty2.C +++ b/gcc/testsuite/g++.old-deja/g++.abi/empty2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 2001 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 12 Apr 2001 <nathan@codesourcery.com> diff --git a/gcc/testsuite/g++.old-deja/g++.abi/empty3.C b/gcc/testsuite/g++.old-deja/g++.abi/empty3.C index 93e9d9ff..071431c 100644 --- a/gcc/testsuite/g++.old-deja/g++.abi/empty3.C +++ b/gcc/testsuite/g++.old-deja/g++.abi/empty3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 2001 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 12 Apr 2001 <nathan@codesourcery.com> diff --git a/gcc/testsuite/g++.old-deja/g++.abi/layout1.C b/gcc/testsuite/g++.old-deja/g++.abi/layout1.C index a37ef07..23fd891 100644 --- a/gcc/testsuite/g++.old-deja/g++.abi/layout1.C +++ b/gcc/testsuite/g++.old-deja/g++.abi/layout1.C @@ -1,3 +1,4 @@ +// { dg-do run } // Origin: Mark Mitchell <mark@codesourcery.com> #if defined (__GXX_ABI_VERSION) && __GXX_ABI_VERSION >= 100 diff --git a/gcc/testsuite/g++.old-deja/g++.abi/mangle1.C b/gcc/testsuite/g++.old-deja/g++.abi/mangle1.C index 70f0cce..d738f31 100644 --- a/gcc/testsuite/g++.old-deja/g++.abi/mangle1.C +++ b/gcc/testsuite/g++.old-deja/g++.abi/mangle1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Mark Mitchell <mark@codesourcery.com> struct S {}; diff --git a/gcc/testsuite/g++.old-deja/g++.abi/primary.C b/gcc/testsuite/g++.old-deja/g++.abi/primary.C index 3108fbd..692ef33 100644 --- a/gcc/testsuite/g++.old-deja/g++.abi/primary.C +++ b/gcc/testsuite/g++.old-deja/g++.abi/primary.C @@ -1,3 +1,4 @@ +// { dg-do run } // Test to see that primary bases are selected correctly. // Origin: Mark Mitchell <mark@codesourcery.com> diff --git a/gcc/testsuite/g++.old-deja/g++.abi/primary2.C b/gcc/testsuite/g++.old-deja/g++.abi/primary2.C index 795eb4d..fd440c0 100644 --- a/gcc/testsuite/g++.old-deja/g++.abi/primary2.C +++ b/gcc/testsuite/g++.old-deja/g++.abi/primary2.C @@ -1,3 +1,4 @@ +// { dg-do run } // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 4 February 2001 <nathan@codesourcery.com> diff --git a/gcc/testsuite/g++.old-deja/g++.abi/primary3.C b/gcc/testsuite/g++.old-deja/g++.abi/primary3.C index fbeb2b7..3ebc3ec 100644 --- a/gcc/testsuite/g++.old-deja/g++.abi/primary3.C +++ b/gcc/testsuite/g++.old-deja/g++.abi/primary3.C @@ -1,3 +1,4 @@ +// { dg-do run } // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 4 February 2001 <nathan@codesourcery.com> diff --git a/gcc/testsuite/g++.old-deja/g++.abi/primary4.C b/gcc/testsuite/g++.old-deja/g++.abi/primary4.C index d18f242..3e36c58 100644 --- a/gcc/testsuite/g++.old-deja/g++.abi/primary4.C +++ b/gcc/testsuite/g++.old-deja/g++.abi/primary4.C @@ -1,3 +1,4 @@ +// { dg-do run } // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 4 February 2001 <nathan@codesourcery.com> diff --git a/gcc/testsuite/g++.old-deja/g++.abi/primary5.C b/gcc/testsuite/g++.old-deja/g++.abi/primary5.C index 422e66e..dca878b 100644 --- a/gcc/testsuite/g++.old-deja/g++.abi/primary5.C +++ b/gcc/testsuite/g++.old-deja/g++.abi/primary5.C @@ -1,3 +1,4 @@ +// { dg-do run } // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 4 February 2001 <nathan@codesourcery.com> diff --git a/gcc/testsuite/g++.old-deja/g++.abi/ptrflags.C b/gcc/testsuite/g++.old-deja/g++.abi/ptrflags.C index 03b9248..d4bdc21 100644 --- a/gcc/testsuite/g++.old-deja/g++.abi/ptrflags.C +++ b/gcc/testsuite/g++.old-deja/g++.abi/ptrflags.C @@ -1,3 +1,4 @@ +// { dg-do run } // Test rtti pointer flags // Copyright (C) 2000, 2002 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 15 Apr 2000 <nathan@nathan@codesourcery.com> diff --git a/gcc/testsuite/g++.old-deja/g++.abi/ptrmem.C b/gcc/testsuite/g++.old-deja/g++.abi/ptrmem.C index c9efd04..077fa50 100644 --- a/gcc/testsuite/g++.old-deja/g++.abi/ptrmem.C +++ b/gcc/testsuite/g++.old-deja/g++.abi/ptrmem.C @@ -1,4 +1,5 @@ -// Special g++ Options: -fno-strict-aliasing +// { dg-do run } +// { dg-options "-fno-strict-aliasing" } // Origin: Mark Mitchell <mark@codesourcery.com> /* Generally, the lowest bit of the ptr is used to indicate whether a diff --git a/gcc/testsuite/g++.old-deja/g++.abi/vbase1.C b/gcc/testsuite/g++.old-deja/g++.abi/vbase1.C index a85e00d..8713394 100644 --- a/gcc/testsuite/g++.old-deja/g++.abi/vbase1.C +++ b/gcc/testsuite/g++.old-deja/g++.abi/vbase1.C @@ -1,3 +1,4 @@ +// { dg-do run } // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 16 Jan 2001 <nathan@codesourcery.com> diff --git a/gcc/testsuite/g++.old-deja/g++.abi/vbase2.C b/gcc/testsuite/g++.old-deja/g++.abi/vbase2.C index f8877eb..8c2cdfb 100644 --- a/gcc/testsuite/g++.old-deja/g++.abi/vbase2.C +++ b/gcc/testsuite/g++.old-deja/g++.abi/vbase2.C @@ -1,3 +1,4 @@ +// { dg-do run } // Copyright (C) 2001 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 5 Jun 2001 <nathan@codesourcery.com> diff --git a/gcc/testsuite/g++.old-deja/g++.abi/vbase3.C b/gcc/testsuite/g++.old-deja/g++.abi/vbase3.C index 9b0ed1c..11d49d4 100644 --- a/gcc/testsuite/g++.old-deja/g++.abi/vbase3.C +++ b/gcc/testsuite/g++.old-deja/g++.abi/vbase3.C @@ -1,3 +1,4 @@ +// { dg-do run } // Copyright (C) 2001 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 5 Jun 2001 <nathan@codesourcery.com> diff --git a/gcc/testsuite/g++.old-deja/g++.abi/vbase4.C b/gcc/testsuite/g++.old-deja/g++.abi/vbase4.C index 116d79b..8b08394 100644 --- a/gcc/testsuite/g++.old-deja/g++.abi/vbase4.C +++ b/gcc/testsuite/g++.old-deja/g++.abi/vbase4.C @@ -1,3 +1,4 @@ +// { dg-do run } // Copyright (C) 2001 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 9 Jun 2001 <nathan@codesourcery.com> diff --git a/gcc/testsuite/g++.old-deja/g++.abi/vbase5.C b/gcc/testsuite/g++.old-deja/g++.abi/vbase5.C index 6a3bbfb..4e1b4ef 100644 --- a/gcc/testsuite/g++.old-deja/g++.abi/vbase5.C +++ b/gcc/testsuite/g++.old-deja/g++.abi/vbase5.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // // Copyright (C) 2001 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 12 Jun 2001 <nathan@codesourcery.com> diff --git a/gcc/testsuite/g++.old-deja/g++.abi/vbase6.C b/gcc/testsuite/g++.old-deja/g++.abi/vbase6.C index e8b959d..6976493 100644 --- a/gcc/testsuite/g++.old-deja/g++.abi/vbase6.C +++ b/gcc/testsuite/g++.old-deja/g++.abi/vbase6.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // // Copyright (C) 2001 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 12 Jun 2001 <nathan@codesourcery.com> diff --git a/gcc/testsuite/g++.old-deja/g++.abi/vbase7.C b/gcc/testsuite/g++.old-deja/g++.abi/vbase7.C index 5a4a3b5..a9d5e50 100644 --- a/gcc/testsuite/g++.old-deja/g++.abi/vbase7.C +++ b/gcc/testsuite/g++.old-deja/g++.abi/vbase7.C @@ -1,3 +1,4 @@ +// { dg-do run } // Build don't run // // Copyright (C) 2001 Free Software Foundation, Inc. diff --git a/gcc/testsuite/g++.old-deja/g++.abi/vbase8-5.C b/gcc/testsuite/g++.old-deja/g++.abi/vbase8-5.C index ea96e85..704f91a 100644 --- a/gcc/testsuite/g++.old-deja/g++.abi/vbase8-5.C +++ b/gcc/testsuite/g++.old-deja/g++.abi/vbase8-5.C @@ -1,4 +1,5 @@ -// Special g++ Options: -w +// { dg-do run } +// { dg-options "-w" } // Copyright (C) 2001 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 24 Jul 2001 <nathan@codesourcery.com> diff --git a/gcc/testsuite/g++.old-deja/g++.abi/vbase8-9.C b/gcc/testsuite/g++.old-deja/g++.abi/vbase8-9.C index 43bd86a..bc922e8 100644 --- a/gcc/testsuite/g++.old-deja/g++.abi/vbase8-9.C +++ b/gcc/testsuite/g++.old-deja/g++.abi/vbase8-9.C @@ -1,4 +1,5 @@ -// Special g++ Options: -ansi -pedantic-errors -w +// { dg-do run } +// { dg-options "-ansi -pedantic-errors -w" } // Copyright (C) 2001 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 14 Jun 2001 <nathan@codesourcery.com> diff --git a/gcc/testsuite/g++.old-deja/g++.abi/vmihint.C b/gcc/testsuite/g++.old-deja/g++.abi/vmihint.C index b4cdf67..fd9f376 100644 --- a/gcc/testsuite/g++.old-deja/g++.abi/vmihint.C +++ b/gcc/testsuite/g++.old-deja/g++.abi/vmihint.C @@ -1,3 +1,4 @@ +// { dg-do run } // Test rtti hint flags // Copyright (C) 2000, 2003 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 3 Apr 2000 <nathan@nathan@codesourcery.com> diff --git a/gcc/testsuite/g++.old-deja/g++.abi/vtable.C b/gcc/testsuite/g++.old-deja/g++.abi/vtable.C index 4c811a8..b93710a 100644 --- a/gcc/testsuite/g++.old-deja/g++.abi/vtable.C +++ b/gcc/testsuite/g++.old-deja/g++.abi/vtable.C @@ -1,5 +1,6 @@ +// { dg-do run } +// { dg-options "-fno-strict-aliasing" } // Test various aspects of vtable layout. -// Special g++ Options: -fno-strict-aliasing // Origin: Mark Mitchell <mark@codesourcery.com> #if defined (__GXX_ABI_VERSION) && __GXX_ABI_VERSION >= 100 diff --git a/gcc/testsuite/g++.old-deja/g++.abi/vtable2.C b/gcc/testsuite/g++.old-deja/g++.abi/vtable2.C index 47afa15..275b003 100644 --- a/gcc/testsuite/g++.old-deja/g++.abi/vtable2.C +++ b/gcc/testsuite/g++.old-deja/g++.abi/vtable2.C @@ -1,5 +1,6 @@ +// { dg-do run } +// { dg-options "-fno-strict-aliasing" } // Origin: Mark Mitchell <mark@codesourcery.com> -// Special g++ Options: -fno-strict-aliasing #if defined (__GXX_ABI_VERSION) && __GXX_ABI_VERSION >= 100 diff --git a/gcc/testsuite/g++.old-deja/g++.abi/vtable3a.C b/gcc/testsuite/g++.old-deja/g++.abi/vtable3a.C index 8dc912b..5e272e1 100644 --- a/gcc/testsuite/g++.old-deja/g++.abi/vtable3a.C +++ b/gcc/testsuite/g++.old-deja/g++.abi/vtable3a.C @@ -1,8 +1,10 @@ -// Copyright (C) 2000 Free Software Foundation, Inc. +// { dg-do run } +// { dg-gpp-additional-files "vtable3.h" } + +// Copyright (C) 2000, 2003 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 4 February 2001 <nathan@codesourcery.com> // Check constructor vtables work. -// Additional files: vtable3.h #define A_EMPTY #define B1_EMPTY diff --git a/gcc/testsuite/g++.old-deja/g++.abi/vtable3b.C b/gcc/testsuite/g++.old-deja/g++.abi/vtable3b.C index 903eab8..daa25b9 100644 --- a/gcc/testsuite/g++.old-deja/g++.abi/vtable3b.C +++ b/gcc/testsuite/g++.old-deja/g++.abi/vtable3b.C @@ -1,8 +1,10 @@ -// Copyright (C) 2000 Free Software Foundation, Inc. +// { dg-do run } +// { dg-gpp-additional-files "vtable3.h" } + +// Copyright (C) 2000, 2003 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 4 February 2001 <nathan@codesourcery.com> // Check constructor vtables work. -// Additional files: vtable3.h #define B1_EMPTY #define B2_EMPTY diff --git a/gcc/testsuite/g++.old-deja/g++.abi/vtable3c.C b/gcc/testsuite/g++.old-deja/g++.abi/vtable3c.C index 45b891a..3bc2de5 100644 --- a/gcc/testsuite/g++.old-deja/g++.abi/vtable3c.C +++ b/gcc/testsuite/g++.old-deja/g++.abi/vtable3c.C @@ -1,8 +1,10 @@ -// Copyright (C) 2000 Free Software Foundation, Inc. +// { dg-do run } +// { dg-gpp-additional-files "vtable3.h" } + +// Copyright (C) 2000, 2003 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 4 February 2001 <nathan@codesourcery.com> // Check constructor vtables work. -// Additional files: vtable3.h #define A_EMPTY #define B2_EMPTY diff --git a/gcc/testsuite/g++.old-deja/g++.abi/vtable3d.C b/gcc/testsuite/g++.old-deja/g++.abi/vtable3d.C index 5511c23..b0a662c 100644 --- a/gcc/testsuite/g++.old-deja/g++.abi/vtable3d.C +++ b/gcc/testsuite/g++.old-deja/g++.abi/vtable3d.C @@ -1,8 +1,10 @@ -// Copyright (C) 2000 Free Software Foundation, Inc. +// { dg-do run } +// { dg-gpp-additional-files "vtable3.h" } + +// Copyright (C) 2000, 2003 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 4 February 2001 <nathan@codesourcery.com> // Check constructor vtables work. -// Additional files: vtable3.h #define A_EMPTY #define B1_EMPTY diff --git a/gcc/testsuite/g++.old-deja/g++.abi/vtable3e.C b/gcc/testsuite/g++.old-deja/g++.abi/vtable3e.C index 0e71fac..b304018 100644 --- a/gcc/testsuite/g++.old-deja/g++.abi/vtable3e.C +++ b/gcc/testsuite/g++.old-deja/g++.abi/vtable3e.C @@ -1,8 +1,10 @@ -// Copyright (C) 2000 Free Software Foundation, Inc. +// { dg-do run } +// { dg-gpp-additional-files "vtable3.h" } + +// Copyright (C) 2000, 2003 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 4 February 2001 <nathan@codesourcery.com> // Check constructor vtables work. -// Additional files: vtable3.h #define A_EMPTY #define B1_EMPTY diff --git a/gcc/testsuite/g++.old-deja/g++.abi/vtable3f.C b/gcc/testsuite/g++.old-deja/g++.abi/vtable3f.C index 8af79db..f8356c3 100644 --- a/gcc/testsuite/g++.old-deja/g++.abi/vtable3f.C +++ b/gcc/testsuite/g++.old-deja/g++.abi/vtable3f.C @@ -1,8 +1,10 @@ -// Copyright (C) 2000 Free Software Foundation, Inc. +// { dg-do run } +// { dg-gpp-additional-files "vtable3.h" } + +// Copyright (C) 2000, 2003 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 4 February 2001 <nathan@codesourcery.com> // Check constructor vtables work. -// Additional files: vtable3.h #define A_EMPTY #define B1_EMPTY diff --git a/gcc/testsuite/g++.old-deja/g++.abi/vtable3g.C b/gcc/testsuite/g++.old-deja/g++.abi/vtable3g.C index c97804f..111b80c 100644 --- a/gcc/testsuite/g++.old-deja/g++.abi/vtable3g.C +++ b/gcc/testsuite/g++.old-deja/g++.abi/vtable3g.C @@ -1,8 +1,10 @@ -// Copyright (C) 2000 Free Software Foundation, Inc. +// { dg-do run } +// { dg-gpp-additional-files "vtable3.h" } + +// Copyright (C) 2000, 2003 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 4 February 2001 <nathan@codesourcery.com> // Check constructor vtables work. -// Additional files: vtable3.h #define A_EMPTY #define B1_EMPTY diff --git a/gcc/testsuite/g++.old-deja/g++.abi/vtable3h.C b/gcc/testsuite/g++.old-deja/g++.abi/vtable3h.C index 0b0a843..f2b3a0d 100644 --- a/gcc/testsuite/g++.old-deja/g++.abi/vtable3h.C +++ b/gcc/testsuite/g++.old-deja/g++.abi/vtable3h.C @@ -1,8 +1,10 @@ -// Copyright (C) 2000 Free Software Foundation, Inc. +// { dg-do run } +// { dg-gpp-additional-files "vtable3.h" } + +// Copyright (C) 2000, 2003 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 4 February 2001 <nathan@codesourcery.com> // Check constructor vtables work. -// Additional files: vtable3.h #define A_EMPTY #define B1_EMPTY diff --git a/gcc/testsuite/g++.old-deja/g++.abi/vtable3i.C b/gcc/testsuite/g++.old-deja/g++.abi/vtable3i.C index 6c48244..d9861d5 100644 --- a/gcc/testsuite/g++.old-deja/g++.abi/vtable3i.C +++ b/gcc/testsuite/g++.old-deja/g++.abi/vtable3i.C @@ -1,8 +1,10 @@ -// Copyright (C) 2000 Free Software Foundation, Inc. +// { dg-do run } +// { dg-gpp-additional-files "vtable3.h" } + +// Copyright (C) 2000, 2003 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 4 February 2001 <nathan@codesourcery.com> // Check constructor vtables work. -// Additional files: vtable3.h #define B1_EMPTY #define B2_EMPTY diff --git a/gcc/testsuite/g++.old-deja/g++.abi/vtable3j.C b/gcc/testsuite/g++.old-deja/g++.abi/vtable3j.C index 0b8925c..03832ae 100644 --- a/gcc/testsuite/g++.old-deja/g++.abi/vtable3j.C +++ b/gcc/testsuite/g++.old-deja/g++.abi/vtable3j.C @@ -1,8 +1,10 @@ -// Copyright (C) 2000 Free Software Foundation, Inc. +// { dg-do run } +// { dg-gpp-additional-files "vtable3.h" } + +// Copyright (C) 2000, 2003 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 4 February 2001 <nathan@codesourcery.com> // Check constructor vtables work. -// Additional files: vtable3.h #define B1_EMPTY #define B2_EMPTY diff --git a/gcc/testsuite/g++.old-deja/g++.benjamin/13478.C b/gcc/testsuite/g++.old-deja/g++.benjamin/13478.C index 47f634b..7b560b9 100644 --- a/gcc/testsuite/g++.old-deja/g++.benjamin/13478.C +++ b/gcc/testsuite/g++.old-deja/g++.benjamin/13478.C @@ -1,6 +1,6 @@ +// { dg-do assemble } // 981203 bkoz // g++/13478 -// Build don't link: class A {}; class AData {}; @@ -26,8 +26,8 @@ const hand_table Agent::table_1[] = { {0, &Agent::table_2}, {first, &Agent::foo}, - {last, &(hand)Agent::foo} // ERROR - no match -}; // ERROR - cannot convert + {last, &(hand)Agent::foo} // { dg-error "" } no match +}; // { dg-error "" } cannot convert diff --git a/gcc/testsuite/g++.old-deja/g++.benjamin/13523.C b/gcc/testsuite/g++.old-deja/g++.benjamin/13523.C index eca71fa..d70e04a 100644 --- a/gcc/testsuite/g++.old-deja/g++.benjamin/13523.C +++ b/gcc/testsuite/g++.old-deja/g++.benjamin/13523.C @@ -1,6 +1,6 @@ +// { dg-do assemble } // 981203 bkoz // g++/13523 -// Build don't link: template<typename T> class latin_america; diff --git a/gcc/testsuite/g++.old-deja/g++.benjamin/13908.C b/gcc/testsuite/g++.old-deja/g++.benjamin/13908.C index 403a998..e265562 100644 --- a/gcc/testsuite/g++.old-deja/g++.benjamin/13908.C +++ b/gcc/testsuite/g++.old-deja/g++.benjamin/13908.C @@ -1,6 +1,6 @@ +// { dg-do assemble } // 981203 bkoz // g++/13908 -// Build don't link: class chile { @@ -17,5 +17,5 @@ void bar (chile* pobj, pmf pmethod) { //-edg: expected member name //-g++: taking address of bound pointer-to-member expression - foo = (void*) &(pobj->*pmethod); // ERROR - + foo = (void*) &(pobj->*pmethod); // { dg-error "" } } diff --git a/gcc/testsuite/g++.old-deja/g++.benjamin/14139.C b/gcc/testsuite/g++.old-deja/g++.benjamin/14139.C index dc0c569..2429538 100644 --- a/gcc/testsuite/g++.old-deja/g++.benjamin/14139.C +++ b/gcc/testsuite/g++.old-deja/g++.benjamin/14139.C @@ -1,7 +1,7 @@ +// { dg-do assemble } // 981203 bkoz // g++/14309 // test for global functions, mf's, and templatized mf's. -// Build don't link: static int fooe_1(void) { return 5; } static int fooe_2(int x = fooe_1()) { return x; } diff --git a/gcc/testsuite/g++.old-deja/g++.benjamin/14664-1.C b/gcc/testsuite/g++.old-deja/g++.benjamin/14664-1.C index e3f2bfb..9a6e644 100644 --- a/gcc/testsuite/g++.old-deja/g++.benjamin/14664-1.C +++ b/gcc/testsuite/g++.old-deja/g++.benjamin/14664-1.C @@ -1,6 +1,6 @@ +// { dg-do assemble } // 981203 bkoz // g++/14664 - test -// Build don't link: char foo[26]; @@ -8,7 +8,7 @@ void bar() { //-g++: incompatible types in assignment of 'const char[]' to 'char[]' //-edg: expression must be a modifiable lvalue - foo = "0123456789012345678901234"; // ERROR - // ERROR - + foo = "0123456789012345678901234"; // { dg-error "" } // ERROR - } diff --git a/gcc/testsuite/g++.old-deja/g++.benjamin/14664-2.C b/gcc/testsuite/g++.old-deja/g++.benjamin/14664-2.C index 9c5dade..468953b 100644 --- a/gcc/testsuite/g++.old-deja/g++.benjamin/14664-2.C +++ b/gcc/testsuite/g++.old-deja/g++.benjamin/14664-2.C @@ -1,7 +1,7 @@ +// { dg-do assemble } +// { dg-options "-fpermissive -w" } // 981203 bkoz // g++/14664 + test -// Build don't link: -// Special g++ Options: -fpermissive -w char foo[26]; diff --git a/gcc/testsuite/g++.old-deja/g++.benjamin/14687.C b/gcc/testsuite/g++.old-deja/g++.benjamin/14687.C index 6897fe9..494f75c 100644 --- a/gcc/testsuite/g++.old-deja/g++.benjamin/14687.C +++ b/gcc/testsuite/g++.old-deja/g++.benjamin/14687.C @@ -1,3 +1,4 @@ +// { dg-do run } // 981203 bkoz // g++/14687 diff --git a/gcc/testsuite/g++.old-deja/g++.benjamin/15054.C b/gcc/testsuite/g++.old-deja/g++.benjamin/15054.C index 65688f7..4d1c6f2 100644 --- a/gcc/testsuite/g++.old-deja/g++.benjamin/15054.C +++ b/gcc/testsuite/g++.old-deja/g++.benjamin/15054.C @@ -1,7 +1,7 @@ +// { dg-do assemble } +// { dg-options "-Wno-pointer-arith" } // 981203 bkoz // g++/15054 -// Build don't link: -// Special g++ Options: -Wno-pointer-arith // note that -pedantic also turns on this warning void cuba(void) { diff --git a/gcc/testsuite/g++.old-deja/g++.benjamin/15071.C b/gcc/testsuite/g++.old-deja/g++.benjamin/15071.C index eaa8eee..d05f48f 100644 --- a/gcc/testsuite/g++.old-deja/g++.benjamin/15071.C +++ b/gcc/testsuite/g++.old-deja/g++.benjamin/15071.C @@ -1,3 +1,4 @@ +// { dg-do run } // 981203 bkoz // g++/15071 // gcc invocation fails to link in libstdc++ diff --git a/gcc/testsuite/g++.old-deja/g++.benjamin/15309-1.C b/gcc/testsuite/g++.old-deja/g++.benjamin/15309-1.C index ac3a5ec..ae13ee8 100644 --- a/gcc/testsuite/g++.old-deja/g++.benjamin/15309-1.C +++ b/gcc/testsuite/g++.old-deja/g++.benjamin/15309-1.C @@ -1,7 +1,7 @@ +// { dg-do assemble } +// { dg-options "-Wnon-virtual-dtor -Weffc++" } // 981203 bkoz // g++/15309 -// Build don't link: -// Special g++ Options: -Wnon-virtual-dtor -Weffc++ class bahamian { public: @@ -10,7 +10,7 @@ public: }; class miami : public bahamian -{ // WARNING - // WARNING - +{ // { dg-warning "" } // WARNING - public: miami (); ~miami (); diff --git a/gcc/testsuite/g++.old-deja/g++.benjamin/15309-2.C b/gcc/testsuite/g++.old-deja/g++.benjamin/15309-2.C index 5a8155a..2831797 100644 --- a/gcc/testsuite/g++.old-deja/g++.benjamin/15309-2.C +++ b/gcc/testsuite/g++.old-deja/g++.benjamin/15309-2.C @@ -1,9 +1,9 @@ +// { dg-do assemble } +// { dg-options "-Wnon-virtual-dtor -Weffc++" } // 981203 bkoz // g++/15309 -// Build don't link: -// Special g++ Options: -Wnon-virtual-dtor -Weffc++ -class bermuda { // WARNING - // WARNING - +class bermuda { // { dg-warning "" } // WARNING - public: virtual int func1(int); ~bermuda(); diff --git a/gcc/testsuite/g++.old-deja/g++.benjamin/15351-1.C b/gcc/testsuite/g++.old-deja/g++.benjamin/15351-1.C index 755c360..ca52343 100644 --- a/gcc/testsuite/g++.old-deja/g++.benjamin/15351-1.C +++ b/gcc/testsuite/g++.old-deja/g++.benjamin/15351-1.C @@ -1,6 +1,7 @@ +// { dg-do run } +// { dg-options "-fno-const-strings" } // 981203 bkoz // g++/15351 - test -// Special g++ Options: -fno-const-strings #include <assert.h> diff --git a/gcc/testsuite/g++.old-deja/g++.benjamin/15351-2.C b/gcc/testsuite/g++.old-deja/g++.benjamin/15351-2.C index 98ecaac..931f50f 100644 --- a/gcc/testsuite/g++.old-deja/g++.benjamin/15351-2.C +++ b/gcc/testsuite/g++.old-deja/g++.benjamin/15351-2.C @@ -1,6 +1,7 @@ +// { dg-do run } +// { dg-options "-fconst-strings" } // 981203 bkoz // g++/15351 + test -// Special g++ Options: -fconst-strings #include <assert.h> diff --git a/gcc/testsuite/g++.old-deja/g++.benjamin/15756-1.C b/gcc/testsuite/g++.old-deja/g++.benjamin/15756-1.C index cc44e6a..2bef3b0 100644 --- a/gcc/testsuite/g++.old-deja/g++.benjamin/15756-1.C +++ b/gcc/testsuite/g++.old-deja/g++.benjamin/15756-1.C @@ -1,7 +1,7 @@ +// { dg-do assemble } +// { dg-options "-Wsign-promo" } // 981203 bkoz // g++/15756 test1 -// Build don't link: -// Special g++ Options: -Wsign-promo enum e_value { first = 0, next = 30 }; diff --git a/gcc/testsuite/g++.old-deja/g++.benjamin/15756-2.C b/gcc/testsuite/g++.old-deja/g++.benjamin/15756-2.C index 5e63b9f..77c4aca 100644 --- a/gcc/testsuite/g++.old-deja/g++.benjamin/15756-2.C +++ b/gcc/testsuite/g++.old-deja/g++.benjamin/15756-2.C @@ -1,7 +1,7 @@ +// { dg-do assemble } +// { dg-options "-Wsign-promo" } // 981203 bkoz // g++/15756 test2 -// Build don't link: -// Special g++ Options: -Wsign-promo // this test may only be valid for 32bit targets at present #include <limits.h> @@ -31,8 +31,8 @@ struct caracas { int main () { - caracas obj_ei ( enum_int ); // WARNING - - caracas obj_eui ( enum_uint ); // WARNING - + caracas obj_ei ( enum_int ); // { dg-warning "" } + caracas obj_eui ( enum_uint ); // { dg-warning "" } caracas obj_i ( i ); caracas obj_ui ( ui ); diff --git a/gcc/testsuite/g++.old-deja/g++.benjamin/15799.C b/gcc/testsuite/g++.old-deja/g++.benjamin/15799.C index 713e3fb..64195fc 100644 --- a/gcc/testsuite/g++.old-deja/g++.benjamin/15799.C +++ b/gcc/testsuite/g++.old-deja/g++.benjamin/15799.C @@ -1,6 +1,6 @@ +// { dg-do assemble } // 981203 bkoz // g++/15799 test1 -// Build don't link: /* 15799.cpp: In function `void foo()': @@ -15,15 +15,15 @@ typedef unsigned long uint_32; class sanjose { public: sanjose(); - sanjose(const sanjose&); // ERROR - candidate - sanjose(int_8 value); // ERROR - // ERROR - - sanjose(uint_32 value); // ERROR - // ERROR - + sanjose(const sanjose&); // { dg-error "" } candidate + sanjose(int_8 value); // { dg-error "" } // ERROR - + sanjose(uint_32 value); // { dg-error "" } // ERROR - }; enum { first, last}; void foo(void) { - sanjose obj(first); // ERROR - // ERROR - + sanjose obj(first); // { dg-error "" } // ERROR - } diff --git a/gcc/testsuite/g++.old-deja/g++.benjamin/15800-1.C b/gcc/testsuite/g++.old-deja/g++.benjamin/15800-1.C index 49aabc9..2fdcdfc 100644 --- a/gcc/testsuite/g++.old-deja/g++.benjamin/15800-1.C +++ b/gcc/testsuite/g++.old-deja/g++.benjamin/15800-1.C @@ -1,17 +1,17 @@ +// { dg-do assemble } // 981203 bkoz // g++/15800 - test -// Build don't link: struct panama { panama(); panama(panama &); - panama& operator=(panama&); // ERROR - // ERROR - + panama& operator=(panama&); // { dg-error "" } // ERROR - }; extern panama dig(); void foo() { panama obj; - obj = dig(); // ERROR - // ERROR - + obj = dig(); // { dg-error "" } // ERROR - } diff --git a/gcc/testsuite/g++.old-deja/g++.benjamin/15800-2.C b/gcc/testsuite/g++.old-deja/g++.benjamin/15800-2.C index 18e299a..6149da6 100644 --- a/gcc/testsuite/g++.old-deja/g++.benjamin/15800-2.C +++ b/gcc/testsuite/g++.old-deja/g++.benjamin/15800-2.C @@ -1,6 +1,6 @@ +// { dg-do assemble } // 981203 bkoz // g++/15800 + test -// Build don't link: struct panama { panama(); diff --git a/gcc/testsuite/g++.old-deja/g++.benjamin/15822.C b/gcc/testsuite/g++.old-deja/g++.benjamin/15822.C index ecd93af..ff9b593 100644 --- a/gcc/testsuite/g++.old-deja/g++.benjamin/15822.C +++ b/gcc/testsuite/g++.old-deja/g++.benjamin/15822.C @@ -1,3 +1,4 @@ +// { dg-do run } // 981203 bkoz // g++/15822 diff --git a/gcc/testsuite/g++.old-deja/g++.benjamin/16077.C b/gcc/testsuite/g++.old-deja/g++.benjamin/16077.C index 3bed736..edffef2 100644 --- a/gcc/testsuite/g++.old-deja/g++.benjamin/16077.C +++ b/gcc/testsuite/g++.old-deja/g++.benjamin/16077.C @@ -1,6 +1,6 @@ +// { dg-do assemble } // 981203 bkoz // g++/16077 -// Build don't link: class nicaragua; struct colombia { @@ -20,7 +20,7 @@ public: void peace(const colombia&); void foo(nicaragua& b) { - peace(b); // WARNING - // WARNING - + peace(b); // { dg-warning "" } // WARNING - } diff --git a/gcc/testsuite/g++.old-deja/g++.benjamin/16567.C b/gcc/testsuite/g++.old-deja/g++.benjamin/16567.C index 8039f5b..7b4f68b 100644 --- a/gcc/testsuite/g++.old-deja/g++.benjamin/16567.C +++ b/gcc/testsuite/g++.old-deja/g++.benjamin/16567.C @@ -1,6 +1,6 @@ +// { dg-do assemble } // 981203 bkoz // g++/16567 -// Build don't link: typedef bool Bool; typedef unsigned char Uint8; @@ -35,7 +35,7 @@ void foo(void) { control *fp = &obj; e_ms result; - result = (e_ms) fp->foo_1; // ERROR - // ERROR - + result = (e_ms) fp->foo_1; // { dg-error "" } // ERROR - } diff --git a/gcc/testsuite/g++.old-deja/g++.benjamin/17922.C b/gcc/testsuite/g++.old-deja/g++.benjamin/17922.C index 4717092..2fc6204 100644 --- a/gcc/testsuite/g++.old-deja/g++.benjamin/17922.C +++ b/gcc/testsuite/g++.old-deja/g++.benjamin/17922.C @@ -1,6 +1,6 @@ +// { dg-do assemble } // 981204 bkoz // g++/17922 -// Build don't link: class base { }; diff --git a/gcc/testsuite/g++.old-deja/g++.benjamin/17930.C b/gcc/testsuite/g++.old-deja/g++.benjamin/17930.C index 3d7fc65..b9b2852 100644 --- a/gcc/testsuite/g++.old-deja/g++.benjamin/17930.C +++ b/gcc/testsuite/g++.old-deja/g++.benjamin/17930.C @@ -1,6 +1,6 @@ +// { dg-do assemble } // 981204 bkoz // g++/17930 -// Build don't link: char const one[] = "test"; -char const two[] = one; // ERROR - // ERROR - +char const two[] = one; // { dg-error "" } // ERROR - diff --git a/gcc/testsuite/g++.old-deja/g++.benjamin/18208.C b/gcc/testsuite/g++.old-deja/g++.benjamin/18208.C index 7ec1dc0..2e9b7ce 100644 --- a/gcc/testsuite/g++.old-deja/g++.benjamin/18208.C +++ b/gcc/testsuite/g++.old-deja/g++.benjamin/18208.C @@ -1,6 +1,6 @@ +// { dg-do assemble } // 981204 bkoz // g++/18208 -// Build don't link: typedef unsigned int uint_32; @@ -17,9 +17,9 @@ void foo( ) puertorico obj; // Bug using static_cast<> - ui = static_cast<uint_32>(obj); // ERROR - // ERROR - + ui = static_cast<uint_32>(obj); // { dg-error "" } // ERROR - // Bug when missing the pair of braces - ui = (uint_32) obj.f; // ERROR - // ERROR - + ui = (uint_32) obj.f; // { dg-error "" } // ERROR - } diff --git a/gcc/testsuite/g++.old-deja/g++.benjamin/bool01.C b/gcc/testsuite/g++.old-deja/g++.benjamin/bool01.C index bd4d3f0..b989041 100644 --- a/gcc/testsuite/g++.old-deja/g++.benjamin/bool01.C +++ b/gcc/testsuite/g++.old-deja/g++.benjamin/bool01.C @@ -1,3 +1,4 @@ +// { dg-do run } //980323 bkoz //test for bools with inclusive ors diff --git a/gcc/testsuite/g++.old-deja/g++.benjamin/bool02.C b/gcc/testsuite/g++.old-deja/g++.benjamin/bool02.C index a7730f0..fcdb143 100644 --- a/gcc/testsuite/g++.old-deja/g++.benjamin/bool02.C +++ b/gcc/testsuite/g++.old-deja/g++.benjamin/bool02.C @@ -1,3 +1,4 @@ +// { dg-do run } //980324 bkoz //test for bool and bitwise ands diff --git a/gcc/testsuite/g++.old-deja/g++.benjamin/friend01.C b/gcc/testsuite/g++.old-deja/g++.benjamin/friend01.C index 66d42c5..b203bc5 100644 --- a/gcc/testsuite/g++.old-deja/g++.benjamin/friend01.C +++ b/gcc/testsuite/g++.old-deja/g++.benjamin/friend01.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } //980610 bkoz // example 1: buggy diff --git a/gcc/testsuite/g++.old-deja/g++.benjamin/friend02.C b/gcc/testsuite/g++.old-deja/g++.benjamin/friend02.C index e9520e3..f6ab601 100644 --- a/gcc/testsuite/g++.old-deja/g++.benjamin/friend02.C +++ b/gcc/testsuite/g++.old-deja/g++.benjamin/friend02.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } //980610 bkoz // example 2: ok diff --git a/gcc/testsuite/g++.old-deja/g++.benjamin/p12475.C b/gcc/testsuite/g++.old-deja/g++.benjamin/p12475.C index 6b210f3..d3e121e 100644 --- a/gcc/testsuite/g++.old-deja/g++.benjamin/p12475.C +++ b/gcc/testsuite/g++.old-deja/g++.benjamin/p12475.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // prms-id: 12475 #include <limits.h> @@ -11,4 +11,4 @@ #error "Unsupported test -- add new constants." #endif -enum huh { start =-TEST, next }; // WARNING - +enum huh { start =-TEST, next }; // { dg-warning "" } diff --git a/gcc/testsuite/g++.old-deja/g++.benjamin/p13417.C b/gcc/testsuite/g++.old-deja/g++.benjamin/p13417.C index 75253f2..132b13d 100644 --- a/gcc/testsuite/g++.old-deja/g++.benjamin/p13417.C +++ b/gcc/testsuite/g++.old-deja/g++.benjamin/p13417.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -Wno-deprecated +// { dg-do assemble } +// { dg-options "-Wno-deprecated" } // prms-id: 13417 class Foo { @@ -7,5 +7,5 @@ public: explicit Foo (int){} }; Foo f(10); -Foo blat() return f(4){} // ERROR - named return value +Foo blat() return f(4){} // { dg-error "" } named return value diff --git a/gcc/testsuite/g++.old-deja/g++.benjamin/p13721.C b/gcc/testsuite/g++.old-deja/g++.benjamin/p13721.C index be1df79..960c3e0 100644 --- a/gcc/testsuite/g++.old-deja/g++.benjamin/p13721.C +++ b/gcc/testsuite/g++.old-deja/g++.benjamin/p13721.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // prms-id: 13721 class A diff --git a/gcc/testsuite/g++.old-deja/g++.benjamin/scope01.C b/gcc/testsuite/g++.old-deja/g++.benjamin/scope01.C index a834f4f..b67606a 100644 --- a/gcc/testsuite/g++.old-deja/g++.benjamin/scope01.C +++ b/gcc/testsuite/g++.old-deja/g++.benjamin/scope01.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // 980604 bkoz // 3.4.5 Class member access p 4 // nested and non-nested calls, no dtors diff --git a/gcc/testsuite/g++.old-deja/g++.benjamin/scope02.C b/gcc/testsuite/g++.old-deja/g++.benjamin/scope02.C index a2c9c04..1ff541b 100644 --- a/gcc/testsuite/g++.old-deja/g++.benjamin/scope02.C +++ b/gcc/testsuite/g++.old-deja/g++.benjamin/scope02.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } //980529 bkoz //3.4.5 Class member access via pointer and non-pointer // non-nested dtor calls diff --git a/gcc/testsuite/g++.old-deja/g++.benjamin/tem01.C b/gcc/testsuite/g++.old-deja/g++.benjamin/tem01.C index e464c0e..76c90c4 100644 --- a/gcc/testsuite/g++.old-deja/g++.benjamin/tem01.C +++ b/gcc/testsuite/g++.old-deja/g++.benjamin/tem01.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // prms-id: 13911 template<unsigned int N> diff --git a/gcc/testsuite/g++.old-deja/g++.benjamin/tem02.C b/gcc/testsuite/g++.old-deja/g++.benjamin/tem02.C index 38a8f1d..98be669 100644 --- a/gcc/testsuite/g++.old-deja/g++.benjamin/tem02.C +++ b/gcc/testsuite/g++.old-deja/g++.benjamin/tem02.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } //980519 bad error from nathan //$ egcs -fhonor-std -nostdinc -c redef.C //redef.C:56: redefinition of default argument for `class _Traits' diff --git a/gcc/testsuite/g++.old-deja/g++.benjamin/tem03.C b/gcc/testsuite/g++.old-deja/g++.benjamin/tem03.C index 80490e9..2fc599f 100644 --- a/gcc/testsuite/g++.old-deja/g++.benjamin/tem03.C +++ b/gcc/testsuite/g++.old-deja/g++.benjamin/tem03.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // 980808-980824 bkoz // template parameter redeclaration bugs @@ -18,7 +18,7 @@ // 01 // declared friend template -template <class T4>// ERROR - .* +template <class T4>// { dg-error "" } .* class Xone { protected: T4* next; @@ -32,13 +32,13 @@ public: // can also do template-decl and then can ditch the foward-declaration // template <class T5> friend bool isequal (Xone<T5>& lhs, Xone<T5>& rhs); // this is not ok: - template <class T4> friend bool isequal (Xone<T4>& lhs, Xone<T4>& rhs);// ERROR - .* + template <class T4> friend bool isequal (Xone<T4>& lhs, Xone<T4>& rhs);// { dg-error "" } .* }; // 02 // nested template class -template <class T6>// ERROR - .* +template <class T6>// { dg-error "" } .* class Xtwo { protected: T6* next; @@ -48,7 +48,7 @@ public: Xtwo(): next(0), prev(0), value(1999){} Xtwo(T6 init): value(init) {} - template <class T6> class nested {// ERROR - .* + template <class T6> class nested {// { dg-error "" } .* T6 value; public: nested(): value( T6(0)) {} @@ -58,7 +58,7 @@ public: // 03 // member templates -template <class T8>// ERROR - .* +template <class T8>// { dg-error "" } .* class Xthree { protected: T8* next; @@ -68,7 +68,7 @@ public: Xthree(): next(0), prev(0), value(1999){} Xthree(T8 init): value(init) {} - template <class T8> T8 comp_ge(T8 test) {// ERROR - .* + template <class T8> T8 comp_ge(T8 test) {// { dg-error "" } .* T8 local_value; if (local_value > value) return local_value; @@ -80,8 +80,8 @@ public: // 04 // local names (14.6.1 p 4) -template <class T10, int i> struct Xfour {// ERROR - .* - int T10; // ERROR - .* +template <class T10, int i> struct Xfour {// { dg-error "" } .* + int T10; // { dg-error "" } .* void f(){ char T10; } @@ -94,15 +94,15 @@ template <class T12, int i> struct Xfive { void f(); }; -template <class T13, int i> void Xfive<T13,i>::f() {// ERROR - .* - int T13; // ERROR - .* +template <class T13, int i> void Xfive<T13,i>::f() {// { dg-error "" } .* + int T13; // { dg-error "" } .* int T12; //should be ok } // 06 // multiple names at the same level -template <class T14, class T14> class Xsix { // ERROR - .* +template <class T14, class T14> class Xsix { // { dg-error "" } .* private: public: void f(); @@ -111,14 +111,14 @@ public: // 07 // multiple names, one in template parameter one in class-name -template <class T12> class T12; // ERROR - .* +template <class T12> class T12; // { dg-error "" } .* // 08 // with multiple template params, and second (third) one is redeclared -template <class T16, int i, class T161> class Xseven { // ERROR - .* +template <class T16, int i, class T161> class Xseven { // { dg-error "" } .* private: - char T161; // ERROR - .* + char T161; // { dg-error "" } .* public: template <class U> friend bool fooy(U u); @@ -126,8 +126,8 @@ public: template <class T161> friend bool foo(T161 u) { - Xseven<T161, 5, int> obj; // ERROR - .* - return (obj.inst == u.inst); // ERROR - .* + Xseven<T161, 5, int> obj; // { dg-error "" } .* + return (obj.inst == u.inst); // { dg-error "" } .* } }; @@ -158,27 +158,27 @@ struct S1 // 10 // check for non-type parameters, should still be able to redeclare? // local names (14.6.1 p 4) -template <class T18, int i> class Xten {// ERROR - .* - float i; // ERROR - .* +template <class T18, int i> class Xten {// { dg-error "" } .* + float i; // { dg-error "" } .* }; // 11 // declared friend template, non-type parameters -template <long l>// ERROR - .* +template <long l>// { dg-error "" } .* class Xeleven { public: - template <long l> friend bool isequal (Xeleven<5> lhs, Xeleven<5> rhs); // ERROR - .* + template <long l> friend bool isequal (Xeleven<5> lhs, Xeleven<5> rhs); // { dg-error "" } .* }; // 12 // nested template class, non-type parameters -template <long l>// ERROR - .* +template <long l>// { dg-error "" } .* class Xtwelve { public: - template <long l> class nested {// ERROR - . + template <long l> class nested {// { dg-error "" } . long value; public: nested(): value(0) {} @@ -188,14 +188,14 @@ public: // 13 // member templates, non-type parameters -template <long l>// ERROR - .* +template <long l>// { dg-error "" } .* struct Xthirteen { - template <long l> long comp_ge(long test) {// ERROR - . + template <long l> long comp_ge(long test) {// { dg-error "" } . long local_value; - if (local_value > value) // ERROR - .* + if (local_value > value) // { dg-error "" } .* return local_value; else - return value; // ERROR - .* + return value; // { dg-error "" } .* } }; diff --git a/gcc/testsuite/g++.old-deja/g++.benjamin/tem04.C b/gcc/testsuite/g++.old-deja/g++.benjamin/tem04.C index 3c01be7..7dd7462 100644 --- a/gcc/testsuite/g++.old-deja/g++.benjamin/tem04.C +++ b/gcc/testsuite/g++.old-deja/g++.benjamin/tem04.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // 980827 bkoz // template parameter redeclaration bugs, part two: // template template params and expanded template non-type parms @@ -18,27 +18,27 @@ // 14 // declared friend template (v3, template type parameters) -template <class T4>// ERROR - .* +template <class T4>// { dg-error "" } .* class Xfourteen { protected: T4 value; public: Xfourteen(T4 init): value(init) {} - template <template <typename T4> class T5> // ERROR - .* + template <template <typename T4> class T5> // { dg-error "" } .* friend bool isequal (Xfourteen<int>& lhs, Xfourteen<int>& rhs); }; // 15 // nested template class (v3, template type parameters) -template <class T6>// ERROR - .* +template <class T6>// { dg-error "" } .* class Xfifteen { protected: T6 value; public: Xfifteen(T6 init): value(init) {} - template <template <typename T6> class T7> class nested {// ERROR - .* + template <template <typename T6> class T7> class nested {// { dg-error "" } .* int value; public: nested(): value( int(0)) {} @@ -48,14 +48,14 @@ public: // 16 // member templates (v3, template type parameters) -template <class T8>// ERROR - .* +template <class T8>// { dg-error "" } .* class Xsixteen { protected: T8 value; public: Xsixteen(T8 init): value(init) {} - template <template <typename T8> class T9> int comp_ge(int test) {// ERROR - .* + template <template <typename T8> class T9> int comp_ge(int test) {// { dg-error "" } .* int local_value; if (local_value > value) return local_value; @@ -88,21 +88,21 @@ public: // 18 // more template template redecl tests -template <typename T14, template <typename T15> class C12>// ERROR - .* +template <typename T14, template <typename T15> class C12>// { dg-error "" } .* class Xeighteen { protected: C12<T14> value; - int C12; // ERROR - .* + int C12; // { dg-error "" } .* }; // 19 // more template template redecl tests -template <typename T16, template <typename T17> class C14>// ERROR - .* +template <typename T16, template <typename T17> class C14>// { dg-error "" } .* class Xnineteen{ protected: C14<T16> value; - template <class C14> class nested {// ERROR - .* + template <class C14> class nested {// { dg-error "" } .* T16 value; public: nested(): value( T16(0)) {} @@ -137,8 +137,8 @@ template <class T17, int i> struct Xtwenty { // non-type template parameters v1: enum enum my_enum {my_A = 45, my_B, my_C}; -template <my_enum T18> class Xtwentyone {// ERROR - .* - float T18; // ERROR - .* +template <my_enum T18> class Xtwentyone {// { dg-error "" } .* + float T18; // { dg-error "" } .* }; @@ -149,30 +149,30 @@ struct base { int ret_gcount() {return gcount;} }; -template <class T20, base* b> class Xtwentytwo {// ERROR - .* - float b; // ERROR - .* +template <class T20, base* b> class Xtwentytwo {// { dg-error "" } .* + float b; // { dg-error "" } .* }; // 23 // non-type template parameters v2: reference to object -template <class T20, base& b2> class Xtwentythree {// ERROR - .* - float b2; // ERROR - .* +template <class T20, base& b2> class Xtwentythree {// { dg-error "" } .* + float b2; // { dg-error "" } .* }; // 24 // non-type template parameters v3: pointer to member -template <class T20, int base::* b3> class Xtwentyfour {// ERROR - .* - float b3; // ERROR - .* +template <class T20, int base::* b3> class Xtwentyfour {// { dg-error "" } .* + float b3; // { dg-error "" } .* }; // 25 // non-type template parms that use push_class_level -template <class T22> void f1() {// ERROR - .* +template <class T22> void f1() {// { dg-error "" } .* struct foo { - enum T22 { un, du, toi }; // ERROR - .* + enum T22 { un, du, toi }; // { dg-error "" } .* }; } diff --git a/gcc/testsuite/g++.old-deja/g++.benjamin/tem05.C b/gcc/testsuite/g++.old-deja/g++.benjamin/tem05.C index 0523f1f..7b6b955 100644 --- a/gcc/testsuite/g++.old-deja/g++.benjamin/tem05.C +++ b/gcc/testsuite/g++.old-deja/g++.benjamin/tem05.C @@ -1,7 +1,7 @@ +// { dg-do assemble } // 980924 bkoz // just a quick test for export, to make sure we are warning for it. // CHANGE ME when it's supported -// Build don't link: // 14 Templates @@ -18,7 +18,7 @@ // 1 // template definition -export template <class T> // WARNING - +export template <class T> // { dg-warning "" } bool templ_one(T a) { if (a > 0) return true; @@ -41,17 +41,17 @@ public: template <class T2> bool compare_ge(T2 test); }; -export template <class T> // WARNING - +export template <class T> // { dg-warning "" } const bool X_one<T>::is_specialized = false; -export template <class T> // WARNING - +export template <class T> // { dg-warning "" } unsigned short X_one<T>::ret_id() { return id; } -export template <class T2> // WARNING - +export template <class T2> // { dg-warning "" } bool compare_ge(T2 test) { - if (test > type) // ERROR - .* + if (test > type) // { dg-error "" } .* return true; return false; } diff --git a/gcc/testsuite/g++.old-deja/g++.benjamin/tem06.C b/gcc/testsuite/g++.old-deja/g++.benjamin/tem06.C index 7ccfc16..b56425e 100644 --- a/gcc/testsuite/g++.old-deja/g++.benjamin/tem06.C +++ b/gcc/testsuite/g++.old-deja/g++.benjamin/tem06.C @@ -1,3 +1,4 @@ +// { dg-do run } // 980945 bkoz // test for correct operators at link time diff --git a/gcc/testsuite/g++.old-deja/g++.benjamin/tem07.C b/gcc/testsuite/g++.old-deja/g++.benjamin/tem07.C index 953ed90..2b304b4 100644 --- a/gcc/testsuite/g++.old-deja/g++.benjamin/tem07.C +++ b/gcc/testsuite/g++.old-deja/g++.benjamin/tem07.C @@ -1,3 +1,4 @@ +// { dg-do run } template <class T> class Foo diff --git a/gcc/testsuite/g++.old-deja/g++.benjamin/typedef01.C b/gcc/testsuite/g++.old-deja/g++.benjamin/typedef01.C index ba6af18..466b866 100644 --- a/gcc/testsuite/g++.old-deja/g++.benjamin/typedef01.C +++ b/gcc/testsuite/g++.old-deja/g++.benjamin/typedef01.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } //980205 bkoz //7.1.3 the typedef specifier @@ -16,10 +16,10 @@ typedef int I; typedef I I; //p3--cannot redefine to a different type in a given scope -class complex2 { /* ... */ };// ERROR - .* -typedef int complex2;// ERROR - .* -typedef int complex3;// ERROR - .* -class complex3 { /* ... */ };// ERROR - .* +class complex2 { /* ... */ };// { dg-error "" } .* +typedef int complex2;// { dg-error "" } .* +typedef int complex3;// { dg-error "" } .* +class complex3 { /* ... */ };// { dg-error "" } .* //p4 @@ -40,7 +40,7 @@ struct S { typedef struct S T; S a = T(); // OK -struct T * p; // ERROR - using typedef after struct +struct T * p; // { dg-error "" } using typedef after struct //case01 -typedef bool short;// ERROR - .* +typedef bool short;// { dg-error "" } .* diff --git a/gcc/testsuite/g++.old-deja/g++.benjamin/typedef03.C b/gcc/testsuite/g++.old-deja/g++.benjamin/typedef03.C index cf09ccb..f213840 100644 --- a/gcc/testsuite/g++.old-deja/g++.benjamin/typedef03.C +++ b/gcc/testsuite/g++.old-deja/g++.benjamin/typedef03.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } //980526 bkoz // reduced testcase for 980511 brendan qt bug diff --git a/gcc/testsuite/g++.old-deja/g++.benjamin/typeid01.C b/gcc/testsuite/g++.old-deja/g++.benjamin/typeid01.C index c75c65b..439e22a 100644 --- a/gcc/testsuite/g++.old-deja/g++.benjamin/typeid01.C +++ b/gcc/testsuite/g++.old-deja/g++.benjamin/typeid01.C @@ -1,3 +1,4 @@ +// { dg-do run } // 980617 bkoz // typeid for local types // typeid bool vs int and enum vs int diff --git a/gcc/testsuite/g++.old-deja/g++.benjamin/warn01.C b/gcc/testsuite/g++.old-deja/g++.benjamin/warn01.C index 9e7839a..99b2396 100644 --- a/gcc/testsuite/g++.old-deja/g++.benjamin/warn01.C +++ b/gcc/testsuite/g++.old-deja/g++.benjamin/warn01.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -Wall -Weffc++ +// { dg-do assemble } +// { dg-options "-Wall -Weffc++" } //1 g++/12952 un-named variables in a catch block //Wall or Wunused should not give warnings here @@ -88,7 +88,7 @@ public: virtual long retcntr() {return counter;}; Mutex2(int i = 0): counter(i) {}; virtual ~Mutex2() {}; -} __attribute__ ((warn)); // WARNING - +} __attribute__ ((warn)); // { dg-warning "" } diff --git a/gcc/testsuite/g++.old-deja/g++.benjamin/warn02.C b/gcc/testsuite/g++.old-deja/g++.benjamin/warn02.C index e63d43c..a2599aa 100644 --- a/gcc/testsuite/g++.old-deja/g++.benjamin/warn02.C +++ b/gcc/testsuite/g++.old-deja/g++.benjamin/warn02.C @@ -1,8 +1,8 @@ +// { dg-do assemble } +// { dg-options "-Wredundant-decls" } // 980413 bkoz // from g++/15307, tests for -Wredundant-decls // for friend functions and functions -// Build don't link: -//Special g++ Options: -Wredundant-decls extern int foo(const char *); @@ -23,7 +23,7 @@ class B class C { friend int foo(const char *); - friend int foo(const char *); // WARNING - + friend int foo(const char *); // { dg-warning "" } int foo2() {return b;} int b; }; @@ -32,7 +32,7 @@ class D { public: int foo2() {return b;} - int foo2() {return b;} // ERROR - + int foo2() {return b;} // { dg-error "" } int b; }; @@ -40,12 +40,12 @@ class E { public: int foo2(); - int foo2(); // ERROR - + int foo2(); // { dg-error "" } int b; }; -extern int foo3(const char *); // WARNING - -extern int foo3(const char *); // WARNING - +extern int foo3(const char *); // { dg-warning "" } +extern int foo3(const char *); // { dg-warning "" } diff --git a/gcc/testsuite/g++.old-deja/g++.benjamin/warn03.C b/gcc/testsuite/g++.old-deja/g++.benjamin/warn03.C index b3bd3af..46f0fb6 100644 --- a/gcc/testsuite/g++.old-deja/g++.benjamin/warn03.C +++ b/gcc/testsuite/g++.old-deja/g++.benjamin/warn03.C @@ -1,7 +1,7 @@ +// { dg-do assemble } +// { dg-options "-Wredundant-decls" } // 980420 bkoz // from g++/15307, tests for -Wredundant-decls for decls -// Build don't link: -// Special g++ Options: -Wredundant-decls //shouldn't crash extern unsigned char *foo5[]; diff --git a/gcc/testsuite/g++.old-deja/g++.benjamin/warn04.C b/gcc/testsuite/g++.old-deja/g++.benjamin/warn04.C index cb96ac6..8319e98 100644 --- a/gcc/testsuite/g++.old-deja/g++.benjamin/warn04.C +++ b/gcc/testsuite/g++.old-deja/g++.benjamin/warn04.C @@ -1,7 +1,7 @@ +// { dg-do assemble } +// { dg-options "-Wno-non-template-friend" } // 980903 bkoz // make sure this option works -// Build don't link: -// Special g++ Options: -Wno-non-template-friend template<class T> class task { diff --git a/gcc/testsuite/g++.old-deja/g++.bob/array1.C b/gcc/testsuite/g++.old-deja/g++.bob/array1.C index 2e86f6f..dac0420 100644 --- a/gcc/testsuite/g++.old-deja/g++.bob/array1.C +++ b/gcc/testsuite/g++.old-deja/g++.bob/array1.C @@ -1,6 +1,6 @@ -// Build don't link: +// { dg-do assemble } char *stuff() { - char array[10]; // WARNING - + char array[10]; // { dg-warning "" } return array; } diff --git a/gcc/testsuite/g++.old-deja/g++.bob/array2.C b/gcc/testsuite/g++.old-deja/g++.bob/array2.C index 8ddeba8..ae044a1 100644 --- a/gcc/testsuite/g++.old-deja/g++.bob/array2.C +++ b/gcc/testsuite/g++.old-deja/g++.bob/array2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } extern const int a[]; extern const int a[]; extern const int a[]; diff --git a/gcc/testsuite/g++.old-deja/g++.bob/case1.C b/gcc/testsuite/g++.old-deja/g++.bob/case1.C index a8e5f7b..6fe4f25 100644 --- a/gcc/testsuite/g++.old-deja/g++.bob/case1.C +++ b/gcc/testsuite/g++.old-deja/g++.bob/case1.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // prms-id: 9028 class Foo; @@ -6,8 +7,8 @@ int main() int i=0; switch (i) { - case ((Foo *)0): // ERROR - - case ((Foo *)1): // ERROR - + case ((Foo *)0): // { dg-error "" } + case ((Foo *)1): // { dg-error "" } break; } } diff --git a/gcc/testsuite/g++.old-deja/g++.bob/cond1.C b/gcc/testsuite/g++.old-deja/g++.bob/cond1.C index d6f1165..7994654 100644 --- a/gcc/testsuite/g++.old-deja/g++.bob/cond1.C +++ b/gcc/testsuite/g++.old-deja/g++.bob/cond1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // prms-id: 9866 class TChar { diff --git a/gcc/testsuite/g++.old-deja/g++.bob/delete1.C b/gcc/testsuite/g++.old-deja/g++.bob/delete1.C index cf4c8df..9de2a22 100644 --- a/gcc/testsuite/g++.old-deja/g++.bob/delete1.C +++ b/gcc/testsuite/g++.old-deja/g++.bob/delete1.C @@ -1,3 +1,4 @@ +// { dg-do run } // prms-id: 7330 #include <stddef.h> int size = 0; diff --git a/gcc/testsuite/g++.old-deja/g++.bob/extern_C.C b/gcc/testsuite/g++.old-deja/g++.bob/extern_C.C index 18311ce..7bbf296 100644 --- a/gcc/testsuite/g++.old-deja/g++.bob/extern_C.C +++ b/gcc/testsuite/g++.old-deja/g++.bob/extern_C.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } extern "C" { class A { public: diff --git a/gcc/testsuite/g++.old-deja/g++.bob/friend1.C b/gcc/testsuite/g++.old-deja/g++.bob/friend1.C index 1782f08..4bce9d2 100644 --- a/gcc/testsuite/g++.old-deja/g++.bob/friend1.C +++ b/gcc/testsuite/g++.old-deja/g++.bob/friend1.C @@ -1,4 +1,5 @@ +// { dg-do assemble } class C { public: - static friend int f(); // ERROR - + static friend int f(); // { dg-error "" } }; diff --git a/gcc/testsuite/g++.old-deja/g++.bob/incomplete-cast1.C b/gcc/testsuite/g++.old-deja/g++.bob/incomplete-cast1.C index fb08c63..916af69 100644 --- a/gcc/testsuite/g++.old-deja/g++.bob/incomplete-cast1.C +++ b/gcc/testsuite/g++.old-deja/g++.bob/incomplete-cast1.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // prms-id: 5274 class VHDLIdentifier; @@ -11,6 +12,6 @@ extern void form(const char *format, ... ); int VHDLPackageProtoRep::thing() { - form("package `%s'", (char *)actual_name()); // ERROR - can't convert from incomplete type + form("package `%s'", (char *)actual_name()); // { dg-error "" } can't convert from incomplete type return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.bob/inherit1.C b/gcc/testsuite/g++.old-deja/g++.bob/inherit1.C index 4d62e38..54a9f73 100644 --- a/gcc/testsuite/g++.old-deja/g++.bob/inherit1.C +++ b/gcc/testsuite/g++.old-deja/g++.bob/inherit1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } class A { char str[10]; public: @@ -11,7 +11,7 @@ public: class B : public A { public: - char* m1 () { C::m1(); return ""; } // ERROR - + char* m1 () { C::m1(); return ""; } // { dg-error "" } }; int main () { diff --git a/gcc/testsuite/g++.old-deja/g++.bob/inherit2.C b/gcc/testsuite/g++.old-deja/g++.bob/inherit2.C index bf5f089..e943a1c 100644 --- a/gcc/testsuite/g++.old-deja/g++.bob/inherit2.C +++ b/gcc/testsuite/g++.old-deja/g++.bob/inherit2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } #include <stdlib.h> class A { @@ -6,7 +6,7 @@ public: void z(); A(void) {} private: - A(const A &) { abort(); } // ERROR - + A(const A &) { abort(); } // { dg-error "" } const A& operator =(const A &) { abort(); } }; @@ -20,5 +20,5 @@ void f(B b) { void g() { B h; - f(h); // ERROR - + f(h); // { dg-error "" } } diff --git a/gcc/testsuite/g++.old-deja/g++.bob/nested1.C b/gcc/testsuite/g++.old-deja/g++.bob/nested1.C index aacfef4..37dd2d0 100644 --- a/gcc/testsuite/g++.old-deja/g++.bob/nested1.C +++ b/gcc/testsuite/g++.old-deja/g++.bob/nested1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } struct A { struct B { diff --git a/gcc/testsuite/g++.old-deja/g++.bob/packed1.C b/gcc/testsuite/g++.old-deja/g++.bob/packed1.C index 86a946f..91e2d3c 100644 --- a/gcc/testsuite/g++.old-deja/g++.bob/packed1.C +++ b/gcc/testsuite/g++.old-deja/g++.bob/packed1.C @@ -1,3 +1,4 @@ +// { dg-do run } int main() { struct s diff --git a/gcc/testsuite/g++.old-deja/g++.bob/protected1.C b/gcc/testsuite/g++.old-deja/g++.bob/protected1.C index 95a400e..ed8f77f 100644 --- a/gcc/testsuite/g++.old-deja/g++.bob/protected1.C +++ b/gcc/testsuite/g++.old-deja/g++.bob/protected1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } class A { public: int i; @@ -38,5 +38,5 @@ void C::f() { B b(3); int main() { - A *z = &b; // ERROR - + A *z = &b; // { dg-error "" } } diff --git a/gcc/testsuite/g++.old-deja/g++.bob/static1.C b/gcc/testsuite/g++.old-deja/g++.bob/static1.C index a8e6b88..e3ce9e5 100644 --- a/gcc/testsuite/g++.old-deja/g++.bob/static1.C +++ b/gcc/testsuite/g++.old-deja/g++.bob/static1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } class A { public: static int a; @@ -9,4 +9,4 @@ class B : public A { static int b; }; -int B::a; // ERROR - +int B::a; // { dg-error "" } diff --git a/gcc/testsuite/g++.old-deja/g++.bob/template1.C b/gcc/testsuite/g++.old-deja/g++.bob/template1.C index 4a22f08..be4c957 100644 --- a/gcc/testsuite/g++.old-deja/g++.bob/template1.C +++ b/gcc/testsuite/g++.old-deja/g++.bob/template1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // prms-id: 10038 template < class Referencee > class Referencer diff --git a/gcc/testsuite/g++.old-deja/g++.bob/template2.C b/gcc/testsuite/g++.old-deja/g++.bob/template2.C index 5663da8..7da9deb 100644 --- a/gcc/testsuite/g++.old-deja/g++.bob/template2.C +++ b/gcc/testsuite/g++.old-deja/g++.bob/template2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // prms-id: 10046 template <class T> class Array diff --git a/gcc/testsuite/g++.old-deja/g++.bob/template3.C b/gcc/testsuite/g++.old-deja/g++.bob/template3.C index 7aca6ed..6def4b5 100644 --- a/gcc/testsuite/g++.old-deja/g++.bob/template3.C +++ b/gcc/testsuite/g++.old-deja/g++.bob/template3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // prms-id: 9979 template < class Referencee > diff --git a/gcc/testsuite/g++.old-deja/g++.bob/template4.C b/gcc/testsuite/g++.old-deja/g++.bob/template4.C index 1ef2057..13a150d 100644 --- a/gcc/testsuite/g++.old-deja/g++.bob/template4.C +++ b/gcc/testsuite/g++.old-deja/g++.bob/template4.C @@ -1,3 +1,4 @@ +// { dg-do run } // prms-id: 10166 template <class A> diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/abstract1.C b/gcc/testsuite/g++.old-deja/g++.brendan/abstract1.C index b9cd9c5..e37ee2e 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/abstract1.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/abstract1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed abstract-functions class O { diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/access1.C b/gcc/testsuite/g++.old-deja/g++.brendan/access1.C index 0272c7a..e2e3b27 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/access1.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/access1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed access-control class Base { diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/alignof.C b/gcc/testsuite/g++.old-deja/g++.brendan/alignof.C index 1449ade..a79b652 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/alignof.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/alignof.C @@ -1,11 +1,11 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed extensions struct bar { int bit : 1; }; void foo (int *r, bar t) { // doing alignof on a bit-field should be illegal - __alignof__ (t.bit);// ERROR - .* + __alignof__ (t.bit);// { dg-error "" } .* // both of these (a regular ref and an INDIRECT_REF) should work __alignof__ (r); diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/ambiguity1.C b/gcc/testsuite/g++.old-deja/g++.brendan/ambiguity1.C index c6d6fcb..b0c37e1 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/ambiguity1.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/ambiguity1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed ambiguity struct A { A (int); @@ -8,10 +8,10 @@ struct B { B (int); }; -void myfunc (const A& t0); // ERROR - -void myfunc (const B& t0); // ERROR - +void myfunc (const A& t0); // { dg-error "" } +void myfunc (const B& t0); // { dg-error "" } int main () { - myfunc(1); // ERROR - ambiguous call + myfunc(1); // { dg-error "" } ambiguous call } diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/anon-union1.C b/gcc/testsuite/g++.old-deja/g++.brendan/anon-union1.C index 86b7ce3..3facea9 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/anon-union1.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/anon-union1.C @@ -1,7 +1,7 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed anonymous-unions static union { char* uC; private: - int uI;// ERROR - .*private member.* + int uI;// { dg-error "" } .*private member.* }; diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/arm1.C b/gcc/testsuite/g++.old-deja/g++.brendan/arm1.C index e415632..5cd4088 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/arm1.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/arm1.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -pedantic-errors +// { dg-do assemble } +// { dg-options "-pedantic-errors" } // GROUPS passed ARM-compliance // ARM $5.7, it's illegal to do math on a `void*'. @@ -7,5 +7,5 @@ int main() { void *p; - ++p;// ERROR - .* + ++p;// { dg-error "" } .* } diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/arm2.C b/gcc/testsuite/g++.old-deja/g++.brendan/arm2.C index 62bdc3d..2cfa6b9 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/arm2.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/arm2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed ARM-compliance // ARM 9.4 ``There cannot be a static and a nonstatic member function // with the same name and the same argument types.'' @@ -9,11 +9,11 @@ class X { public: int foo(); - static int foo(); // error: redeclaration// ERROR - .* + static int foo(); // error: redeclaration// { dg-error "" } .* }; class Y { public: static int foo(); - int foo(); // error: redeclaration// ERROR - .* + int foo(); // error: redeclaration// { dg-error "" } .* }; diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/arm3.C b/gcc/testsuite/g++.old-deja/g++.brendan/arm3.C index c352bfa..c636ebb 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/arm3.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/arm3.C @@ -1,9 +1,9 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed initialization // ARM $11.4: A function first declared in a friend decl is equivalent // to an extern decl, so the below is illegal. class X { - friend g(); // ERROR - previous declaration + friend g(); // { dg-error "" } previous declaration }; -static g() { return 1; }// ERROR - previously declared +static g() { return 1; }// { dg-error "" } previously declared diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/array-refs.C b/gcc/testsuite/g++.old-deja/g++.brendan/array-refs.C index 0eaa45c..b834867 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/array-refs.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/array-refs.C @@ -1,6 +1,6 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed arm int a, b; // declaring an array of references should be illegal -int & v[ 2] = { a, b};// ERROR - .* +int & v[ 2] = { a, b};// { dg-error "" } .* diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/array1.C b/gcc/testsuite/g++.old-deja/g++.brendan/array1.C index 416416f..df132ea 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/array1.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/array1.C @@ -1,7 +1,7 @@ -// Build don't link: -// Special g++ Options: -fconserve-space -fcommon +// { dg-do assemble } +// { dg-options "-fconserve-space -fcommon" } // GROUPS passed array-bindings extern "C" int printf (const char *, ...); -char array[~(~0ul>>1)|~(0ul>>3)]; // ERROR - overflow in array dimension.* +char array[~(~0ul>>1)|~(0ul>>3)]; // { dg-error "" } overflow in array dimension.* int main () { printf ("PASS\n"); return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/asm-extn1.C b/gcc/testsuite/g++.old-deja/g++.brendan/asm-extn1.C index fecd092..3c39972 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/asm-extn1.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/asm-extn1.C @@ -1,7 +1,6 @@ -// Build don't link: -// Special g++ Options: -S +// { dg-do assemble { target sparc-sun-* } } +// { dg-options "-S" } // GROUPS passed asm-extension -// Skip if not target: sparc-sun-* // This used to crash because c_expand_asm_keyword didn't know what to // do with this. The parser rules were changed to accept an expr, instead // of a stmt. diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/bit-fields1.C b/gcc/testsuite/g++.old-deja/g++.brendan/bit-fields1.C index 76f4ac3..9ff4c5d 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/bit-fields1.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/bit-fields1.C @@ -1,5 +1,5 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed bit-fields struct bar { - int : 2 = 1;// ERROR - .* + int : 2 = 1;// { dg-error "" } .* }; diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/bit-fields2.C b/gcc/testsuite/g++.old-deja/g++.brendan/bit-fields2.C index c77ce86..af5703c 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/bit-fields2.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/bit-fields2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed bit-fields struct { char c; @@ -7,7 +7,7 @@ int main() { - int &ir = s.i; // ERROR - address of bitfield - int *ip = &s.i; // ERROR - address of bitfield + int &ir = s.i; // { dg-error "" } address of bitfield + int *ip = &s.i; // { dg-error "" } address of bitfield ir = 10; } diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/bool1.C b/gcc/testsuite/g++.old-deja/g++.brendan/bool1.C index 1e7b343..86754e3 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/bool1.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/bool1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed boolean int main() diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/code-gen1.C b/gcc/testsuite/g++.old-deja/g++.brendan/code-gen1.C index b1f77e1b..a8c9aba 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/code-gen1.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/code-gen1.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed code-generation // Check that sub-word sized structs/classes are passed correctly // if the struct/class has a constructor (i.e. ANY constructor). diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/code-gen2.C b/gcc/testsuite/g++.old-deja/g++.brendan/code-gen2.C index 72f5893..730f0f9 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/code-gen2.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/code-gen2.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed code-generation // Check that declarations with initializations are executed // correctly. diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/code-gen3.C b/gcc/testsuite/g++.old-deja/g++.brendan/code-gen3.C index fcba4a0..62f8d75 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/code-gen3.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/code-gen3.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed code-generation // Check that passing things which are not a multiple of // 4 bytes in size doesn't mess up other subsequent parameters. diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/code-gen4.C b/gcc/testsuite/g++.old-deja/g++.brendan/code-gen4.C index c825a41..80b1676 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/code-gen4.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/code-gen4.C @@ -1,4 +1,5 @@ -// Special g++ Options: -O +// { dg-do run } +// { dg-options "-O" } // GROUPS passed code-generation // Options: -O // diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/code-gen6.C b/gcc/testsuite/g++.old-deja/g++.brendan/code-gen6.C index 9c63774..821038e 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/code-gen6.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/code-gen6.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed code-generation // Check that type float parameters can be correctly passed to // methods. diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/complex1.C b/gcc/testsuite/g++.old-deja/g++.brendan/complex1.C index 0e3f4f6..393941f 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/complex1.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/complex1.C @@ -1,4 +1,5 @@ -// Special g++ Options: +// { dg-do run } +// { dg-options "" } // This test makes sure that the stuff in lex.c (real_yylex) is // set up to handle real and imag numbers correctly. This test is against diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/copy1.C b/gcc/testsuite/g++.old-deja/g++.brendan/copy1.C index ca1c616..670cacd 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/copy1.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/copy1.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed copy-ctors extern "C" int printf (const char *, ...); int count = 0; diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/copy2.C b/gcc/testsuite/g++.old-deja/g++.brendan/copy2.C index b1ebf8c..261e4f5 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/copy2.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/copy2.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed copy-ctors /* The old g++ output is diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/copy3.C b/gcc/testsuite/g++.old-deja/g++.brendan/copy3.C index 7c5d01f..c567569 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/copy3.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/copy3.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed copy-ctors /* diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/copy4.C b/gcc/testsuite/g++.old-deja/g++.brendan/copy4.C index e879553..bbb6c3e 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/copy4.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/copy4.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed copy-ctors // Using Cfront 3.0.1 the programm below prints // diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/copy5.C b/gcc/testsuite/g++.old-deja/g++.brendan/copy5.C index 4c8620b..31e660e 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/copy5.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/copy5.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed copy-ctors /* bad: diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/copy6.C b/gcc/testsuite/g++.old-deja/g++.brendan/copy6.C index 8869cb8..8e15131 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/copy6.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/copy6.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed copy-ctors /* g++ 2.3.3 will prefer using type conversions over the diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/copy7.C b/gcc/testsuite/g++.old-deja/g++.brendan/copy7.C index 1ed393d..f7f54f1 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/copy7.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/copy7.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed copy-ctors extern "C" int printf (const char *, ...); extern "C" void exit (int); diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/copy8.C b/gcc/testsuite/g++.old-deja/g++.brendan/copy8.C index df77e01..0960523 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/copy8.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/copy8.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed copy-ctors /* This report is for GCC 2.3.3 running on a Sun/4. The bug is that when diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/copy9.C b/gcc/testsuite/g++.old-deja/g++.brendan/copy9.C index edaf997..f05b194 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/copy9.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/copy9.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed copy-ctors #include <iostream> diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/crash1.C b/gcc/testsuite/g++.old-deja/g++.brendan/crash1.C index 66de235..a718674 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/crash1.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/crash1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed old-abort class D_Interval; diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/crash10.C b/gcc/testsuite/g++.old-deja/g++.brendan/crash10.C index 6680718..78559b3 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/crash10.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/crash10.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed old-abort class word { diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/crash11.C b/gcc/testsuite/g++.old-deja/g++.brendan/crash11.C index 1f12593..eb08ca2 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/crash11.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/crash11.C @@ -1,21 +1,21 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed old-abort extern "C" int printf (const char *, ...); class A { - int i; // ERROR - private - int j; // ERROR - private + int i; // { dg-error "" } private + int j; // { dg-error "" } private public: int h; A() { i=10; j=20; } virtual void f1() { printf("i=%d j=%d\n",i,j); } - friend virtual void f2() { printf("i=%d j=%d\n",i,j); }// ERROR - virtual.* + friend virtual void f2() { printf("i=%d j=%d\n",i,j); }// { dg-error "" } virtual.* }; class B : public A { public: - virtual void f1() { printf("i=%d j=%d\n",i,j); }// ERROR - member.*// ERROR - member.* - friend virtual void f2() { printf("i=%d j=%d\n",i,j); }// ERROR - virtual.*// ERROR - member.*// ERROR - member.* + virtual void f1() { printf("i=%d j=%d\n",i,j); }// { dg-error "" } member.*// ERROR - member.* + friend virtual void f2() { printf("i=%d j=%d\n",i,j); }// { dg-error "" } virtual.*// ERROR - member.*// ERROR - member.* }; int diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/crash12.C b/gcc/testsuite/g++.old-deja/g++.brendan/crash12.C index 0671c7b..362f1f7 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/crash12.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/crash12.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed old-abort class X { @@ -7,4 +7,4 @@ public: X(int j); } -X *x = new X[10]();// ERROR - .* +X *x = new X[10]();// { dg-error "" } .* diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/crash13.C b/gcc/testsuite/g++.old-deja/g++.brendan/crash13.C index d4496f5..91842c1 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/crash13.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/crash13.C @@ -1,6 +1,6 @@ -// Build don't link: +// { dg-do assemble } +// { dg-options "-Wreturn-type" } // GROUPS passed old-abort -// Special g++ Options: -Wreturn-type class gen_op { public: @@ -31,7 +31,7 @@ gen_op Spul_U_axis() { gen_op U1; U1 = Fe(); -} // ERROR - reaches end of non-void function +} // { dg-error "" } reaches end of non-void function int main () {} diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/crash14.C b/gcc/testsuite/g++.old-deja/g++.brendan/crash14.C index d5d0bf4..e792058 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/crash14.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/crash14.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed old-abort extern "C" int printf (const char *, ...); diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/crash15.C b/gcc/testsuite/g++.old-deja/g++.brendan/crash15.C index 62ad089..28e3253 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/crash15.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/crash15.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed old-abort #include <iostream> @@ -16,7 +16,7 @@ int main() { std::cout << "starting\n"; B b; - b.~A();// ERROR - destructor + b.~A();// { dg-error "" } destructor std::cout << "done\n"; } diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/crash16.C b/gcc/testsuite/g++.old-deja/g++.brendan/crash16.C index 8031f75..1c81d19 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/crash16.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/crash16.C @@ -1,13 +1,12 @@ -// Build don't link: +// { dg-do assemble { xfail *-*-* } } // GROUPS passed old-abort -// crash test - XFAIL *-*-* class Graph { public: unsigned char N; - Graph(void) {}; // ERROR - previously defined here + Graph(void) {}; // { dg-error "" } previously defined here } Graph::Graph(void) -{ N = 10;// ERROR - return type.* +{ N = 10;// { dg-error "" } return type.* } diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/crash17.C b/gcc/testsuite/g++.old-deja/g++.brendan/crash17.C index 70da8d50..dd7a7b9 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/crash17.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/crash17.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed old-abort // // This one creates @@ -30,6 +30,6 @@ class GnWidget : public GnObject { virtual ~GnWidget(); }; -class GnOptionGroup : public GnObject, public GnWidget {// ERROR - warning +class GnOptionGroup : public GnObject, public GnWidget {// { dg-error "" } warning }; diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/crash18.C b/gcc/testsuite/g++.old-deja/g++.brendan/crash18.C index 8cccfcb..6691081 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/crash18.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/crash18.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed old-abort typedef int element; class Pix { @@ -8,10 +8,10 @@ public: // Friend functions so that v == x works as does x == v works friend int operator==(void *v, const Pix& x) - { return v == index; }// ERROR - .* + { return v == index; }// { dg-error "" } .* friend int operator==(void *v, const Pix& x) - { return v != index; }// ERROR - .* + { return v != index; }// { dg-error "" } .* private: // friend class List<T>; - element *index; // ERROR - invalid use of member + element *index; // { dg-error "" } invalid use of member }; diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/crash2.C b/gcc/testsuite/g++.old-deja/g++.brendan/crash2.C index ad6e040..50aebdc 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/crash2.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/crash2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed old-abort // The compiler used to crash on this example. diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/crash20.C b/gcc/testsuite/g++.old-deja/g++.brendan/crash20.C index 44f35c3..93dc58c 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/crash20.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/crash20.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed old-abort #include <complex> typedef std::complex<double> Complex; diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/crash22.C b/gcc/testsuite/g++.old-deja/g++.brendan/crash22.C index f7db97d..73831a0 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/crash22.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/crash22.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed old-abort struct A { void a1(); @@ -6,6 +6,6 @@ struct A { }; struct B { - void A::a1(); // this used to die in chainon(), now grokdeclarator should// ERROR - cannot declare.* - void A::a2(); // should be fixed by the 930629 change.// ERROR - cannot declare.* + void A::a1(); // this used to die in chainon(), now grokdeclarator should// { dg-error "" } cannot declare.* + void A::a2(); // should be fixed by the 930629 change.// { dg-error "" } cannot declare.* }; diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/crash23.C b/gcc/testsuite/g++.old-deja/g++.brendan/crash23.C index 03ffee6..2506869 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/crash23.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/crash23.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed old-abort // This used to die in chainon; it shouldn't any more. @@ -10,6 +10,6 @@ public: void f (); void g (int); }; - void B::f () {}// ERROR - .* - void B::g (int val) {}// ERROR - .* + void B::f () {}// { dg-error "" } .* + void B::g (int val) {}// { dg-error "" } .* }; diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/crash24.C b/gcc/testsuite/g++.old-deja/g++.brendan/crash24.C index af1c301..42d0fab 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/crash24.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/crash24.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -O +// { dg-do assemble } +// { dg-options "-O" } // GROUPS passed old-abort // gcc puts the array into a register, and then the store_bit_field () code // in expmed.c gets confused when it tries to store zero past the end of the diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/crash25.C b/gcc/testsuite/g++.old-deja/g++.brendan/crash25.C index 625eaf8..dece6f7 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/crash25.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/crash25.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed old-abort class memo{ public: diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/crash26.C b/gcc/testsuite/g++.old-deja/g++.brendan/crash26.C index 9b6643d..b89a2fa 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/crash26.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/crash26.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed old-abort struct B { B(); diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/crash27.C b/gcc/testsuite/g++.old-deja/g++.brendan/crash27.C index 62acbe0..7aa0e59 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/crash27.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/crash27.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed old-abort class First { public: diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/crash28.C b/gcc/testsuite/g++.old-deja/g++.brendan/crash28.C index 08adee9..dcb2dce 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/crash28.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/crash28.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed old-abort class abc { diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/crash29.C b/gcc/testsuite/g++.old-deja/g++.brendan/crash29.C index b6af6a4..6fd031f 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/crash29.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/crash29.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed old-abort union Value @@ -7,13 +7,13 @@ union Value }; struct GlobalAddress -{// ERROR - candidates .* - GlobalAddress(Value *nvar){}// ERROR - .* +{// { dg-error "" } candidates .* + GlobalAddress(Value *nvar){}// { dg-error "" } .* }; int main() { - new GlobalAddress(Value()); // internal error occured here// ERROR - no matching function .* + new GlobalAddress(Value()); // internal error occured here// { dg-error "" } no matching function .* //new GlobalAddress(new Value()); // This line is correct code } diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/crash3.C b/gcc/testsuite/g++.old-deja/g++.brendan/crash3.C index b3b8354..c5088f1 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/crash3.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/crash3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed old-abort int strcmp(); diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/crash30.C b/gcc/testsuite/g++.old-deja/g++.brendan/crash30.C index 4e500a1..937cb10 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/crash30.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/crash30.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed old-abort #include <string> diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/crash31.C b/gcc/testsuite/g++.old-deja/g++.brendan/crash31.C index d5b7e54..83cdf2ad 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/crash31.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/crash31.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed old-abort struct mbuf { struct mbuf *next; diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/crash32.C b/gcc/testsuite/g++.old-deja/g++.brendan/crash32.C index ebca5a4..955e68c 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/crash32.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/crash32.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -fshort-enums +// { dg-do assemble } +// { dg-options "-fshort-enums" } // GROUPS passed old-abort enum Bool { FALSE, TRUE }; Bool foo () { return TRUE; } diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/crash33.C b/gcc/testsuite/g++.old-deja/g++.brendan/crash33.C index d89fa7b..1f99448 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/crash33.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/crash33.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed old-abort extern void foo(void *); int diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/crash34.C b/gcc/testsuite/g++.old-deja/g++.brendan/crash34.C index a147b62..6ac1ef0 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/crash34.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/crash34.C @@ -1,3 +1,3 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed old-abort -operator int () {}// ERROR - .*// ERROR - .* +operator int () {}// { dg-error "" } .*// ERROR - .* diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/crash35.C b/gcc/testsuite/g++.old-deja/g++.brendan/crash35.C index e32b7c1..93a0aeb 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/crash35.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/crash35.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed old-abort const unsigned int ENET_INTERRUPT_MID = 5; diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/crash36.C b/gcc/testsuite/g++.old-deja/g++.brendan/crash36.C index 1053453..79b3e46 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/crash36.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/crash36.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed old-abort struct wait { int w_status; }; int wait(); diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/crash37.C b/gcc/testsuite/g++.old-deja/g++.brendan/crash37.C index 8dafcf9..0e46c93 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/crash37.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/crash37.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed old-abort typedef int _sigset_t; extern "C" { diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/crash38.C b/gcc/testsuite/g++.old-deja/g++.brendan/crash38.C index e6f1b6c7..d7f0552 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/crash38.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/crash38.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed old-abort /* I received the following message when using g++ (version 2.3.3): diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/crash39.C b/gcc/testsuite/g++.old-deja/g++.brendan/crash39.C index a191872..392c0a0 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/crash39.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/crash39.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -w +// { dg-do assemble } +// { dg-options "-w" } // GROUPS passed old-abort //#include <GetOpt.h> #include <stdio.h> diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/crash4.C b/gcc/testsuite/g++.old-deja/g++.brendan/crash4.C index 1f8a3ff..34ef2dd 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/crash4.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/crash4.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed old-abort typedef struct Thing { Thing(); diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/crash40.C b/gcc/testsuite/g++.old-deja/g++.brendan/crash40.C index dcebfbe..e5b1744 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/crash40.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/crash40.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed old-abort class foo { diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/crash41.C b/gcc/testsuite/g++.old-deja/g++.brendan/crash41.C index 5d533b8..188c09b 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/crash41.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/crash41.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed old-abort typedef void (**ppfn)(void); diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/crash42.C b/gcc/testsuite/g++.old-deja/g++.brendan/crash42.C index 1b92f5d..8777ef8 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/crash42.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/crash42.C @@ -1,6 +1,6 @@ +// { dg-do assemble } // GROUPS passed old-abort -// Build don't link: -int fn();// ERROR - ambiguates.* +int fn();// { dg-error "" } ambiguates.* int x; -int& fn() {// ERROR - new decl.* +int& fn() {// { dg-error "" } new decl.* return x;} diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/crash43.C b/gcc/testsuite/g++.old-deja/g++.brendan/crash43.C index d38e1cb..08be90b 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/crash43.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/crash43.C @@ -1,7 +1,6 @@ -// Build don't link: -// Special g++ Options: -g +// { dg-do assemble { xfail sparc64-*-elf } } +// { dg-options "-g" } // GROUPS passed old-abort -// excess errors test - XFAIL sparc64-*-elf extern "C" { typedef int jmp_buf[12]; } enum Error { NO_ERROR }; diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/crash44.C b/gcc/testsuite/g++.old-deja/g++.brendan/crash44.C index 00a4df4..2439daf 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/crash44.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/crash44.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed old-abort template <class T> class bug { diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/crash45.C b/gcc/testsuite/g++.old-deja/g++.brendan/crash45.C index 269a519..b9eb6c7 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/crash45.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/crash45.C @@ -1,3 +1,3 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed old-abort void foo() { static const char *const v[] = { 0 }; } diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/crash46.C b/gcc/testsuite/g++.old-deja/g++.brendan/crash46.C index 64d8d59..53cbd10 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/crash46.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/crash46.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed old-abort class Rational { public: diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/crash47.C b/gcc/testsuite/g++.old-deja/g++.brendan/crash47.C index 9bdbb11..3afa5fa 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/crash47.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/crash47.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed old-abort const int TRUE = 1; const int FALSE = 0; diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/crash48.C b/gcc/testsuite/g++.old-deja/g++.brendan/crash48.C index 86523d8..b3972bd 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/crash48.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/crash48.C @@ -1,22 +1,22 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed old-abort -class internal { // ERROR - candidates are +class internal { // { dg-error "" } candidates are int field; int anotherfield; }; -class bug { // ERROR - several errors +class bug { // { dg-error "" } several errors internal* numbers; bug(int size); }; bug::bug(int size) -{ // ERROR - candidates - numbers = new internal(size * size);// ERROR - no match.* +{ // { dg-error "" } candidates + numbers = new internal(size * size);// { dg-error "" } no match.* } int main() { - bug test;// ERROR - no match + bug test;// { dg-error "" } no match } diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/crash49.C b/gcc/testsuite/g++.old-deja/g++.brendan/crash49.C index 3f2e225..95b57dc 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/crash49.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/crash49.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed old-abort #include<iostream> @@ -6,7 +6,7 @@ const int keys = 10; const int key[keys] = {6, key[1], 2, keys, 1, 7, 6, key[2], key[8]}; void main() -{ // ERROR - return type for main +{ // { dg-error "" } return type for main for(int i = 0; i < keys;) std::cout << key[i++] << " "; std::endl(std::cout); } diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/crash5.C b/gcc/testsuite/g++.old-deja/g++.brendan/crash5.C index e415967..6b9696e 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/crash5.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/crash5.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed old-abort // Should have been fixed by: // @@ -101,5 +101,5 @@ main() int i, j; Dummy foo; - bs1+=&foo;// ERROR - no .* + bs1+=&foo;// { dg-error "" } no .* } diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/crash50.C b/gcc/testsuite/g++.old-deja/g++.brendan/crash50.C index 52e0588..8b710f2 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/crash50.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/crash50.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed old-abort class B { diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/crash51.C b/gcc/testsuite/g++.old-deja/g++.brendan/crash51.C index 3586eb4..0c4e0be 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/crash51.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/crash51.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed old-abort class obj; diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/crash52.C b/gcc/testsuite/g++.old-deja/g++.brendan/crash52.C index b29271b..9e72fb5 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/crash52.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/crash52.C @@ -1,13 +1,13 @@ -// Build don't link: +// { dg-do assemble } +// { dg-options "-Wreturn-type" } // GROUPS passed old-abort -// Special g++ Options: -Wreturn-type #include <iostream> class A { public: - friend A f(A &a);// ERROR - ambiguates.* + friend A f(A &a);// { dg-error "" } ambiguates.* }; -A &f(A &a) {// ERROR - new decl.* +A &f(A &a) {// { dg-error "" } new decl.* std::cout << "Blah\n"; } diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/crash53.C b/gcc/testsuite/g++.old-deja/g++.brendan/crash53.C index 163f8e6..127c1d0 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/crash53.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/crash53.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed old-abort class A { diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/crash54.C b/gcc/testsuite/g++.old-deja/g++.brendan/crash54.C index 7d2a8a0..4ed66d1 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/crash54.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/crash54.C @@ -1,9 +1,9 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed old-abort int main() { int a[100], **p; - p = &a[50];// ERROR - assignment to.* + p = &a[50];// { dg-error "" } assignment to.* } diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/crash55.C b/gcc/testsuite/g++.old-deja/g++.brendan/crash55.C index 47a7424..29533bc 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/crash55.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/crash55.C @@ -1,10 +1,10 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed old-abort - extern f(int);// ERROR - ambiguates.* + extern f(int);// { dg-error "" } ambiguates.* int& f(int x) - {// ERROR - new declaration.* - int local;// ERROR - warning + {// { dg-error "" } new declaration.* + int local;// { dg-error "" } warning local = x+2; diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/crash56.C b/gcc/testsuite/g++.old-deja/g++.brendan/crash56.C index 78c291b..133c9b9f 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/crash56.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/crash56.C @@ -1,6 +1,6 @@ -// Build don't link: +// { dg-do assemble } +// { dg-options "" } // GROUPS passed old-abort -// Special g++ Options: const bool FALSE = 0; const bool TRUE = 1; @@ -20,15 +20,15 @@ public: public: Vix(); friend int operator==(void *v, const Vix& x) - { return v == x.item; }// ERROR - list of candidates + { return v == x.item; }// { dg-error "" } list of candidates friend int operator==(const Vix& x, void *v) - { return v == x.item; }// ERROR - candidate for call + { return v == x.item; }// { dg-error "" } candidate for call friend int operator!=(void *v, const Vix& x) { return v != x.item; } friend int operator!=(const Vix& x, void *v) { return v != x.item; } friend int operator==(const Vix& x1, const Vix& x2) - { return x1.owner == x2.owner && x1.item == x2.item; }// ERROR - candidate for call + { return x1.owner == x2.owner && x1.item == x2.item; }// { dg-error "" } candidate for call friend int operator!=(const Vix& x1, const Vix& x2) { return x1.owner != x2.owner || x1.item != x2.item; } bool first; @@ -101,7 +101,7 @@ public: void first(Vix& x) const { ListDProto::first(x); }; void next(Vix& x, ListDProto::Action a = NORMAL) const - { ListDProto::next(x, a); }// ERROR - .*// ERROR - .* + { ListDProto::next(x, a); }// { dg-error "" } .*// ERROR - .* Vix last() const { return ListDProto::last(); } void last(Vix& x) const @@ -276,7 +276,7 @@ SetLD<T>::remove(const T& item) typename ListD<T>::Action a = this->NORMAL; Vix x; for (first(x); 0 != x && this->REMOVE_CURRENT != a; next(x, a)) - a = operator()(x) == item ? this->REMOVE_CURRENT: this->NORMAL; // ERROR - .* + a = operator()(x) == item ? this->REMOVE_CURRENT: this->NORMAL; // { dg-error "" } .* } template<class T> bool @@ -284,7 +284,7 @@ SetLD<T>::contains(const T& item) const { Vix x; for (first(x); 0 != x; next(x)) { - if (operator()(x) == item)// ERROR - .* + if (operator()(x) == item)// { dg-error "" } .* return TRUE; } return FALSE; @@ -343,7 +343,7 @@ 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) -{// ERROR - candidate for call +{// { dg-error "" } candidate for call const SetLD_String_IcaseString_old_tmp99& oa = a; const SetLD_String_IcaseString_old_tmp99& ob = b; return operator== (oa, ob); } diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/crash57.C b/gcc/testsuite/g++.old-deja/g++.brendan/crash57.C index 5032b3f..b4599fc7 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/crash57.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/crash57.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed old-abort class foo { private: diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/crash58.C b/gcc/testsuite/g++.old-deja/g++.brendan/crash58.C index 922290f..7d5f659 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/crash58.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/crash58.C @@ -1,10 +1,10 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed old-abort class X { public: void doit(); }; -X::::doit()// ERROR - (syntax|parse) error.* +X::::doit()// { dg-error "" } (syntax|parse) error.* { } diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/crash6.C b/gcc/testsuite/g++.old-deja/g++.brendan/crash6.C index 2472ed4..b975237 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/crash6.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/crash6.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed old-abort // Should be fixed by: // Sun Jun 13 12:55:22 1993 Brendan Kehoe (brendan@lisa.cygnus.com) diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/crash60.C b/gcc/testsuite/g++.old-deja/g++.brendan/crash60.C index b2af431..a59d72a 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/crash60.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/crash60.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed old-abort class X { @@ -9,4 +9,4 @@ public: // Note that we mistakenly initialize the array data member as if it // was scalar -X::X () : f (0) {}// ERROR - .* +X::X () : f (0) {}// { dg-error "" } .* diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/crash61.C b/gcc/testsuite/g++.old-deja/g++.brendan/crash61.C index 4d3bbc4..86e347f 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/crash61.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/crash61.C @@ -1,5 +1,5 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed old-abort template <class TP> class sapp { }; class foo {}; - extern foo& __iomanip_setw (foo&, TP);// ERROR - type spec.* + extern foo& __iomanip_setw (foo&, TP);// { dg-error "" } type spec.* diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/crash62.C b/gcc/testsuite/g++.old-deja/g++.brendan/crash62.C index c86f9e6..7147c9a 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/crash62.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/crash62.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed old-abort #include <iostream> @@ -26,7 +26,7 @@ // Call to this function results in a bus error in fubar when the 1st // arg is dereferenced. // - fubar(die, "Second line.");// ERROR - cannot convert .die.* + fubar(die, "Second line.");// { dg-error "" } cannot convert .die.* return 1; } diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/crash63.C b/gcc/testsuite/g++.old-deja/g++.brendan/crash63.C index 25952ae..13f8339 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/crash63.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/crash63.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed old-abort class String { @@ -12,4 +12,4 @@ class UnitList UnitList (...); }; -UnitList unit_list (String("keV")); // WARNING - cannot pass non-pod +UnitList unit_list (String("keV")); // { dg-warning "" } cannot pass non-pod diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/crash64.C b/gcc/testsuite/g++.old-deja/g++.brendan/crash64.C index 6c28258..b3717a5 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/crash64.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/crash64.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed old-abort typedef long unsigned int size_t; typedef void (*RF_Ptr)(void *); @@ -16,4 +16,4 @@ struct metatype { int base_list; }; static _type_desc _type_metatype("metatype", sizeof(metatype), (RF_Ptr)0, 0, 1, 1, - _im_pers_mem_spec( ((size_t)&((( metatype *)0)-> base_list )) , 1)); // WARNING - cannot pass non-pod + _im_pers_mem_spec( ((size_t)&((( metatype *)0)-> base_list )) , 1)); // { dg-warning "" } cannot pass non-pod diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/crash65.C b/gcc/testsuite/g++.old-deja/g++.brendan/crash65.C index 132651e..1bf6c4b 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/crash65.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/crash65.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed old-abort class X { public: @@ -8,7 +8,7 @@ public: class Y : public X { public: - using X::xy;// ERROR - no memb.* + using X::xy;// { dg-error "" } no memb.* - using X::z;// ERROR - no memb.* + using X::z;// { dg-error "" } no memb.* }; diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/crash66.C b/gcc/testsuite/g++.old-deja/g++.brendan/crash66.C index d159931..0f1d891 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/crash66.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/crash66.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -O +// { dg-do assemble } +// { dg-options "-O" } // GROUPS passed old-abort typedef unsigned char uchar; typedef unsigned short ushort; diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/crash67.C b/gcc/testsuite/g++.old-deja/g++.brendan/crash67.C index f63ba5d..da7cec4 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/crash67.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/crash67.C @@ -1,3 +1,3 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed old-abort #pragma comment(exestr, "@(#) errno.h 10.2 92/03/26 ") diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/crash68.C b/gcc/testsuite/g++.old-deja/g++.brendan/crash68.C index b209bd8..82da9f8 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/crash68.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/crash68.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -w -O +// { dg-do assemble } +// { dg-options "-w -O" } // GROUPS passed old-abort class RWDlist { diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/crash7.C b/gcc/testsuite/g++.old-deja/g++.brendan/crash7.C index 19476fc..99fee51 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/crash7.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/crash7.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed templates template<class T> @@ -13,21 +13,21 @@ public: int size () { return sz; } }; -template<class T>// ERROR - previous definition of T +template<class T>// { dg-error "" } previous definition of T struct Comparator { - typedef T T;// ERROR - use of template type T in typedef to T + typedef T T;// { dg-error "" } use of template type T in typedef to T static int lessthan (T &a, T &b) { return a < b; } }; template<class Comp> struct Sort { - static void sort (Vector<Comp::T> &);// ERROR - use of bad T + static void sort (Vector<Comp::T> &);// { dg-error "" } use of bad T }; template<class Comp> -void Sort<Comp>::sort (Vector<Comp::T> &v)// ERROR - use of bad T +void Sort<Comp>::sort (Vector<Comp::T> &v)// { dg-error "" } use of bad T { int n = v.size (); diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/crash8.C b/gcc/testsuite/g++.old-deja/g++.brendan/crash8.C index f7906c5..06bde56 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/crash8.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/crash8.C @@ -1,12 +1,12 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed old-abort template<int a, int b> class Elvis -{ // ERROR - in template.* +{ // { dg-error "" } in template.* } ; template<int a> class Elvis<0> -{ // ERROR - incorrect number of parameters +{ // { dg-error "" } incorrect number of parameters int geta() { return a ; } } ; diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/crash9.C b/gcc/testsuite/g++.old-deja/g++.brendan/crash9.C index 8197c93..004e842 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/crash9.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/crash9.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed old-abort class A {}; @@ -13,12 +13,12 @@ protected: A* mesh; }; -SimQuery::SimQuery():scaling(A) {}// ERROR - .* +SimQuery::SimQuery():scaling(A) {}// { dg-error "" } .* SimQuery::~SimQuery() {} int SimQuery::SetMeshFile(char name[]) { - mesh = new C;// ERROR - .* + mesh = new C;// { dg-error "" } .* return 0; // needed to avoid warning of reaching end of non-void fn } diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/ctors1.C b/gcc/testsuite/g++.old-deja/g++.brendan/ctors1.C index 0a48eef..1b0bfd9 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/ctors1.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/ctors1.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed constructors // Check that global level object constructors get called. diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/ctors2.C b/gcc/testsuite/g++.old-deja/g++.brendan/ctors2.C index 127dd36..c30ab70 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/ctors2.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/ctors2.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed constructors // Check that sub-words sized class members are correctly set // by constructors. diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/ctors3.C b/gcc/testsuite/g++.old-deja/g++.brendan/ctors3.C index 755d547..cbfe9d6 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/ctors3.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/ctors3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed constructors class A; diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/cvt1.C b/gcc/testsuite/g++.old-deja/g++.brendan/cvt1.C index 4574a36..1327f5a 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/cvt1.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/cvt1.C @@ -1,11 +1,11 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed conversions #include <iostream> class Thing { public: - typedef enum { GOOD_THING, BAD_THING, } ThingType ; // ERROR - comma + typedef enum { GOOD_THING, BAD_THING, } ThingType ; // { dg-error "" } comma Thing (ThingType type) : thingType (type) { } ~Thing () { } private: @@ -15,7 +15,7 @@ private: class Group { public: - typedef enum { THIS_GROUP, THAT_GROUP, } GroupType ; // ERROR - comma + typedef enum { THIS_GROUP, THAT_GROUP, } GroupType ; // { dg-error "" } comma Group (GroupType type) : groupType (type), groupCount (0) { } ~Group () { } void append (Thing* const &entry) { groupCount ++ ; } diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/cvt2.C b/gcc/testsuite/g++.old-deja/g++.brendan/cvt2.C index 76ae156..acb173c 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/cvt2.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/cvt2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed conversions void f(const short & s) { } diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/cvt3.C b/gcc/testsuite/g++.old-deja/g++.brendan/cvt3.C index 6ab8465..9849c4a 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/cvt3.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/cvt3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed conversions class GttObject {}; class GctObject: virtual public GttObject {}; @@ -38,11 +38,11 @@ struct bar class nnyacc { public: - static void assign(void*& lval, void*& rval); // ERROR - candidates + static void assign(void*& lval, void*& rval); // { dg-error "" } candidates }; void foo (bar yylval, bar *yyvsp) { - nnyacc::assign(yylval.valueList, yyvsp[0].valueList);// ERROR - + nnyacc::assign(yylval.valueList, yyvsp[0].valueList);// { dg-error "" } } diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/cvt4.C b/gcc/testsuite/g++.old-deja/g++.brendan/cvt4.C index 3d9f475..6d62209 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/cvt4.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/cvt4.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed conversions class A {}; diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/cvt5.C b/gcc/testsuite/g++.old-deja/g++.brendan/cvt5.C index 5eeea6e6..a5f8d84 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/cvt5.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/cvt5.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // GROUPS passed conversions -// Build don't link: typedef unsigned long Array[3]; void sample(const unsigned long (&an_array)[3]); diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/def-args1.C b/gcc/testsuite/g++.old-deja/g++.brendan/def-args1.C index 55efc52..c0cc071 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/def-args1.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/def-args1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // PRMS Id: 10860 class Beige { diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/def-fns1.C b/gcc/testsuite/g++.old-deja/g++.brendan/def-fns1.C index af97526..8730536 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/def-fns1.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/def-fns1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed default-functions class dictionary { public: diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/delete1.C b/gcc/testsuite/g++.old-deja/g++.brendan/delete1.C index 816c300..8528b1c 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/delete1.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/delete1.C @@ -1,15 +1,15 @@ -// Build don't link: -// Special g++ Options: -pedantic-errors +// { dg-do assemble } +// { dg-options "-pedantic-errors" } // GROUPS passed operator-delete /* ARM $5.3.4 */ void f(char *p, char *q[], const char *r, const char *s[]) { - delete 0; /* illegal: non-pointer */// ERROR - .*expected pointer.* + delete 0; /* illegal: non-pointer */// { dg-error "" } .*expected pointer.* delete (char*)0; /* no effect */ delete p; delete[] q; - delete[4] q; /* ANSI forbids size arg */// ERROR - anachronistic .* + delete[4] q; /* ANSI forbids size arg */// { dg-error "" } anachronistic .* delete r; /* no longer illegal: const */ delete[] s; - delete[4] s; /* ANSI forbids size arg */// ERROR - anachronistic.* + delete[4] s; /* ANSI forbids size arg */// { dg-error "" } anachronistic.* } diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/delete2.C b/gcc/testsuite/g++.old-deja/g++.brendan/delete2.C index 3f18a48..a917003 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/delete2.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/delete2.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed operator-delete // Check that using the delete operator with a null pointer // is allowed (as called for by The Book, pg. 259) diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/dtors1.C b/gcc/testsuite/g++.old-deja/g++.brendan/dtors1.C index b48be85..cb5aa28 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/dtors1.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/dtors1.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed destructors // Check that when an object of a derived class is (implicitly) // destructed (on exit from the block in which it is declared) diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/dtors2.C b/gcc/testsuite/g++.old-deja/g++.brendan/dtors2.C index 1254cc6..924bf4a 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/dtors2.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/dtors2.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed destructors // Check that virtual destructors work correctly. Specifically, // check that when you destruct an object of a derived class for diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/dtors3.C b/gcc/testsuite/g++.old-deja/g++.brendan/dtors3.C index 3485db7..053bb0d 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/dtors3.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/dtors3.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed destructors // Check that member and base classes get properly destructed // when an object of a derived class is destructed via a pointer diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/eh1.C b/gcc/testsuite/g++.old-deja/g++.brendan/eh1.C index 8f346a4..939312a 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/eh1.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/eh1.C @@ -1,4 +1,5 @@ -// Special g++ Options: -O +// { dg-do run } +// { dg-options "-O" } // PRMS Id: 10776 extern "C" int printf (const char *, ...); diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/enum-clash.C b/gcc/testsuite/g++.old-deja/g++.brendan/enum-clash.C index 68639a1..81341df 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/enum-clash.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/enum-clash.C @@ -1,6 +1,6 @@ -// Build don't link: -// Special g++ Options: -pedantic-errors +// { dg-do assemble } +// { dg-options "-pedantic-errors" } // GROUPS passed arm enum color {red, yellow, green=20, blue}; -color c = 1; // this should be an error// ERROR - .* +color c = 1; // this should be an error// { dg-error "" } .* int i = yellow; diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/enum1.C b/gcc/testsuite/g++.old-deja/g++.brendan/enum1.C index 9cc3ed8..12b9a5f 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/enum1.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/enum1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed enums class foo { public: diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/enum10.C b/gcc/testsuite/g++.old-deja/g++.brendan/enum10.C index 5c955d3..97d5d8e 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/enum10.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/enum10.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed enums class Type { diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/enum11.C b/gcc/testsuite/g++.old-deja/g++.brendan/enum11.C index 7705aa3..233c387 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/enum11.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/enum11.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed enums class X { @@ -7,7 +7,7 @@ class X oneMask = 0x0000FFFF, twoMask = 0x000F0000, thiMask = 0xFFF00000, - }; // ERROR - comma + }; // { dg-error "" } comma unsigned int foo; public: diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/enum12.C b/gcc/testsuite/g++.old-deja/g++.brendan/enum12.C index 7d4eb7d..fab5703 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/enum12.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/enum12.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed enums enum Bool { False, True }; diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/enum13.C b/gcc/testsuite/g++.old-deja/g++.brendan/enum13.C index ea6dfa7..0d06ff1 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/enum13.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/enum13.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed enums enum COLOR { red, green, blue }; diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/enum14.C b/gcc/testsuite/g++.old-deja/g++.brendan/enum14.C index 192a2b4..e182844 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/enum14.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/enum14.C @@ -1,4 +1,4 @@ -// Build don't link: -// Special g++ Options: -fshort-enums +// { dg-do assemble } +// { dg-options "-fshort-enums" } // GROUPS passed enums enum E { A = 0x80000000 }; diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/enum2.C b/gcc/testsuite/g++.old-deja/g++.brendan/enum2.C index 1c5c50b..b617851 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/enum2.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/enum2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed enums class foo { public: diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/enum3.C b/gcc/testsuite/g++.old-deja/g++.brendan/enum3.C index 38b7d3c..f11c050 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/enum3.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/enum3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed enums enum foo { diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/enum4.C b/gcc/testsuite/g++.old-deja/g++.brendan/enum4.C index 826ccd3..ca954e1 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/enum4.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/enum4.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed enums class X { public: diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/enum5.C b/gcc/testsuite/g++.old-deja/g++.brendan/enum5.C index 32134ef..75917d7 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/enum5.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/enum5.C @@ -1,10 +1,10 @@ -// Build don't link: -// Special g++ Options: -pedantic-errors +// { dg-do assemble } +// { dg-options "-pedantic-errors" } // GROUPS passed enums enum Thing { FIRST, SECOND } ; int main() { Thing x = FIRST ; - x = 27 ; // this line should be a type error.// ERROR - .* + x = 27 ; // this line should be a type error.// { dg-error "" } .* } diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/enum6.C b/gcc/testsuite/g++.old-deja/g++.brendan/enum6.C index 8e1a6df..29908b8 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/enum6.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/enum6.C @@ -1,8 +1,8 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed enums class X { private: - enum E1 {a1, b1}; // ERROR - private + enum E1 {a1, b1}; // { dg-error "" } private public: enum E2 {a2, b2}; }; @@ -11,6 +11,6 @@ void h(X* p) { X::E2 e2; int x2 = X::a2; - X::E1 e1; // ERROR - within this context - int x1 = X::a1; // ERROR - within this context + X::E1 e1; // { dg-error "" } within this context + int x1 = X::a1; // { dg-error "" } within this context } diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/enum7.C b/gcc/testsuite/g++.old-deja/g++.brendan/enum7.C index 5a397d7..af31aab 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/enum7.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/enum7.C @@ -1,7 +1,7 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed enums enum color { red, green, blue, orange, brown }; struct s { - enum color field:2; // ERROR - too small + enum color field:2; // { dg-error "" } too small }; diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/enum8.C b/gcc/testsuite/g++.old-deja/g++.brendan/enum8.C index d9380ad..e9e6907 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/enum8.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/enum8.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed enums class foo1 { @@ -7,7 +7,7 @@ class foo1 { ENUM1, ENUM2, - }; // ERROR - comma + }; // { dg-error "" } comma }; diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/enum9.C b/gcc/testsuite/g++.old-deja/g++.brendan/enum9.C index f04deb1..43420cf 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/enum9.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/enum9.C @@ -1,9 +1,9 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed enums enum fig { figgy, pudding, -}; // ERROR - comma +}; // { dg-error "" } comma class X { public: diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/err-msg1.C b/gcc/testsuite/g++.old-deja/g++.brendan/err-msg1.C index 9450d76..2e13bfa 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/err-msg1.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/err-msg1.C @@ -1,6 +1,6 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed error-messages class A { }; -int i = A::_ter;// ERROR - ._ter.* -int j = A::term;// ERROR - .term.* +int i = A::_ter;// { dg-error "" } ._ter.* +int j = A::term;// { dg-error "" } .term.* diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/err-msg10.C b/gcc/testsuite/g++.old-deja/g++.brendan/err-msg10.C index 24ddcaa..f5b8abf 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/err-msg10.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/err-msg10.C @@ -1,6 +1,6 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed error-messages class foo { public: - virtual static int f () = 0;// ERROR - member `f' cannot be declared both virtual and static.* + virtual static int f () = 0;// { dg-error "" } member `f' cannot be declared both virtual and static.* }; diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/err-msg11.C b/gcc/testsuite/g++.old-deja/g++.brendan/err-msg11.C index de5ed8a..abfe0e1 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/err-msg11.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/err-msg11.C @@ -1,3 +1,3 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed error-messages -void foo (mutable int x);// ERROR - non-member `x' cannot be declared `mutable'.* +void foo (mutable int x);// { dg-error "" } non-member `x' cannot be declared `mutable'.* diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/err-msg12.C b/gcc/testsuite/g++.old-deja/g++.brendan/err-msg12.C index 0b59ba0..e9bd5a6 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/err-msg12.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/err-msg12.C @@ -1,6 +1,6 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed error-messages class foo { public: - friend mutable int x ();// ERROR - non-object member `x' cannot be declared `mutable' + friend mutable int x ();// { dg-error "" } non-object member `x' cannot be declared `mutable' }; diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/err-msg2.C b/gcc/testsuite/g++.old-deja/g++.brendan/err-msg2.C index a0cfd6a..e2f8d99 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/err-msg2.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/err-msg2.C @@ -1,8 +1,8 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed error-messages typedef void (*pfv)(double, double); extern "C" { - typedef void (*pfv)(double, double); // ERROR - conflicting linkage - XFAIL + typedef void (*pfv)(double, double); // { dg-error "" "" { xfail *-*-* } } conflicting linkage } diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/err-msg3.C b/gcc/testsuite/g++.old-deja/g++.brendan/err-msg3.C index 76a0840..3380685 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/err-msg3.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/err-msg3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed error-messages #include <fstream> #include <iomanip> diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/err-msg4.C b/gcc/testsuite/g++.old-deja/g++.brendan/err-msg4.C index 72f6150..2f4bc42 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/err-msg4.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/err-msg4.C @@ -1,10 +1,10 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed error-messages class X { public: - static int x;// ERROR - previous.* - static int y;// ERROR - previous.* + static int x;// { dg-error "" } previous.* + static int y;// { dg-error "" } previous.* }; -unsigned X::x;// ERROR - conflict.* -unsigned X::y;// ERROR - conflict.* +unsigned X::x;// { dg-error "" } conflict.* +unsigned X::y;// { dg-error "" } conflict.* diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/err-msg5.C b/gcc/testsuite/g++.old-deja/g++.brendan/err-msg5.C index 37b956c..1837e2f 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/err-msg5.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/err-msg5.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed error-messages class foo {}; -~foo () {}// ERROR - destructors must be member functions.* +~foo () {}// { dg-error "" } destructors must be member functions.* diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/err-msg6.C b/gcc/testsuite/g++.old-deja/g++.brendan/err-msg6.C index ce60f0d..f30856b 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/err-msg6.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/err-msg6.C @@ -1,7 +1,7 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed error-messages class foo { public: - ~bar () {}// ERROR - destructor `bar' must match class name `foo'.* + ~bar () {}// { dg-error "" } destructor `bar' must match class name `foo'.* }; diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/err-msg7.C b/gcc/testsuite/g++.old-deja/g++.brendan/err-msg7.C index 5971806..0dbb323 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/err-msg7.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/err-msg7.C @@ -1,6 +1,6 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed error-messages class foo { public: - volatile int () {}// ERROR - + volatile int () {}// { dg-error "" } }; diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/err-msg8.C b/gcc/testsuite/g++.old-deja/g++.brendan/err-msg8.C index 45bd176..dcc2028 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/err-msg8.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/err-msg8.C @@ -1,3 +1,3 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed error-messages -operator int ; int j; // ERROR - declaration of `operator int' as non-function.* +operator int ; int j; // { dg-error "" } declaration of `operator int' as non-function.* diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/err-msg9.C b/gcc/testsuite/g++.old-deja/g++.brendan/err-msg9.C index 0714de6..0dd7f09 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/err-msg9.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/err-msg9.C @@ -1,6 +1,6 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed error-messages class foo { public: - int ~foo ();// ERROR - return type specification for destructor invalid.* + int ~foo ();// { dg-error "" } return type specification for destructor invalid.* }; diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/explicit1.C b/gcc/testsuite/g++.old-deja/g++.brendan/explicit1.C index 148155e..2be91d4 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/explicit1.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/explicit1.C @@ -1,4 +1,5 @@ +// { dg-do assemble } // $7.1.2 disallows explicit on anything but declarations of // constructors ... including friends. class foo { public: foo(); }; -class bar { public: friend explicit foo::foo(); }; // ERROR - explicit friend +class bar { public: friend explicit foo::foo(); }; // { dg-error "" } explicit friend diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/friend1.C b/gcc/testsuite/g++.old-deja/g++.brendan/friend1.C index 9aea460..4d92628 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/friend1.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/friend1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed friends class A { diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/friend2.C b/gcc/testsuite/g++.old-deja/g++.brendan/friend2.C index 5b1333f..13d8221 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/friend2.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/friend2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed friends class X { int a; diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/friend3.C b/gcc/testsuite/g++.old-deja/g++.brendan/friend3.C index 1fa48a8..0df4498 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/friend3.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/friend3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed friends class B { @@ -6,7 +6,7 @@ class B { enum { bEnum = 1, - }; // ERROR - comma + }; // { dg-error "" } comma int bArray[ bEnum ]; diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/friend4.C b/gcc/testsuite/g++.old-deja/g++.brendan/friend4.C index f19d81a..af33199 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/friend4.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/friend4.C @@ -1,6 +1,6 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed friends // do_friend should complain that foo was declared as a friend of // A before A was defined struct A; -struct B { friend A::foo (); };// ERROR - .* +struct B { friend A::foo (); };// { dg-error "" } .* diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/groff1.C b/gcc/testsuite/g++.old-deja/g++.brendan/groff1.C index b026037..0f26863 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/groff1.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/groff1.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed groff /* This should compile properly with the new overloading scheme. */ diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/init1.C b/gcc/testsuite/g++.old-deja/g++.brendan/init1.C index 4396906..113f12c 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/init1.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/init1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed initialization class Thing{ private: diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/init10.C b/gcc/testsuite/g++.old-deja/g++.brendan/init10.C index 45b2985..35d214e 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/init10.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/init10.C @@ -1,3 +1,3 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed initialization struct { int :0; } a; diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/init11.C b/gcc/testsuite/g++.old-deja/g++.brendan/init11.C index 69fd77c..0d3e511 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/init11.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/init11.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed initialization struct String { char * string; diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/init12.C b/gcc/testsuite/g++.old-deja/g++.brendan/init12.C index 7d7c13a..2e3578b 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/init12.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/init12.C @@ -1,9 +1,9 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed array-bindings char * bob(); int main() { char a[1][2]; - a[0] = bob();// ERROR - .* + a[0] = bob();// { dg-error "" } .* } diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/init13.C b/gcc/testsuite/g++.old-deja/g++.brendan/init13.C index 41f0fcf..82d175b 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/init13.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/init13.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed initialization struct A { operator int (); diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/init2.C b/gcc/testsuite/g++.old-deja/g++.brendan/init2.C index a9ec6f3..8f4c2d4 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/init2.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/init2.C @@ -1,5 +1,5 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed initialization // this should give an error in require_instantiated_type about not // being allowed to have an initializer list in an argument list. -int f(int a = {1});// ERROR - .* +int f(int a = {1});// { dg-error "" } .* diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/init3.C b/gcc/testsuite/g++.old-deja/g++.brendan/init3.C index c400419..751297e 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/init3.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/init3.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed initialization // p2766: Make sure that members are initialized in order of declaration // in the class, not in order of specification in the mem-initializer list. diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/init4.C b/gcc/testsuite/g++.old-deja/g++.brendan/init4.C index c1d3592..71e7cd6 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/init4.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/init4.C @@ -1,5 +1,5 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed initialization struct CharList { int i; }; -const CharList& terminals = { 1 };// ERROR - .* +const CharList& terminals = { 1 };// { dg-error "" } .* diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/init5.C b/gcc/testsuite/g++.old-deja/g++.brendan/init5.C index 112dcac..016e733 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/init5.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/init5.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed initialization int main( int argc, char**argv, char** envp ){ char* domain = argv[1]; diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/init6.C b/gcc/testsuite/g++.old-deja/g++.brendan/init6.C index e49758a..ed8c0ad 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/init6.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/init6.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed initialization class Tag { public: diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/init7.C b/gcc/testsuite/g++.old-deja/g++.brendan/init7.C index 033da8f..efbf5c8 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/init7.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/init7.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed initialization struct myChoiceList { diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/init8.C b/gcc/testsuite/g++.old-deja/g++.brendan/init8.C index 4818a41..bd49ce2 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/init8.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/init8.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed initialization class A { diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/init9.C b/gcc/testsuite/g++.old-deja/g++.brendan/init9.C index bad6416..e228210 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/init9.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/init9.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed initialization int FALSE = 0; class X { diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/label1.C b/gcc/testsuite/g++.old-deja/g++.brendan/label1.C index ff0b87c..9cdc57d 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/label1.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/label1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed labels // it should only give 1 error, about using an undefined label -int main(void) { goto dummy; }// ERROR - .* +int main(void) { goto dummy; }// { dg-error "" } .* diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/label2.C b/gcc/testsuite/g++.old-deja/g++.brendan/label2.C index 5abdb15..6d2af32 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/label2.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/label2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed labels extern "C" void abort(); diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/line1.C b/gcc/testsuite/g++.old-deja/g++.brendan/line1.C index d76832e..b14ed8e 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/line1.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/line1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed error-messages -typedef struct s S;// ERROR - previous.* -struct S { int member:1; }; // the lineno for this should be 2, not 0// ERROR - conflicting types.* +typedef struct s S;// { dg-error "" } previous.* +struct S { int member:1; }; // the lineno for this should be 2, not 0// { dg-error "" } conflicting types.* diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/misc1.C b/gcc/testsuite/g++.old-deja/g++.brendan/misc1.C index 666ec25..7076361 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/misc1.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/misc1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed miscellaneous-bugs int main( int argc, char**argv, char** envp ){ char* domain = argv[1]; diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/misc10.C b/gcc/testsuite/g++.old-deja/g++.brendan/misc10.C index 4d96926..f132d1e 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/misc10.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/misc10.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed miscellaneous // The compiler shouldn't give a `invalid operands to binary +' for this // case. diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/misc11.C b/gcc/testsuite/g++.old-deja/g++.brendan/misc11.C index 043f6a5..9f401cf 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/misc11.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/misc11.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed miscellaneous // This should not complain about A::f being abstract. struct A diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/misc14.C b/gcc/testsuite/g++.old-deja/g++.brendan/misc14.C index 024566f..d14d32b 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/misc14.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/misc14.C @@ -1,12 +1,12 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed miscellaneous-bugs class X { public: enum e { - New,// ERROR - conflicts with other.* - }; // ERROR - comma + New,// { dg-error "" } conflicts with other.* + }; // { dg-error "" } comma - static int New(int);// ERROR - declaration.* + static int New(int);// { dg-error "" } declaration.* }; int main() {} diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/misc15.C b/gcc/testsuite/g++.old-deja/g++.brendan/misc15.C index a294e4f..2c5f1ae 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/misc15.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/misc15.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed miscellaneous-bugs struct A { diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/misc16.C b/gcc/testsuite/g++.old-deja/g++.brendan/misc16.C index 15e3946..bc19edc 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/misc16.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/misc16.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed miscellaneous-bugs // Using a typedef causes a compiler error typedef unsigned int Uint32; diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/misc17.C b/gcc/testsuite/g++.old-deja/g++.brendan/misc17.C index 987618f..4052664 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/misc17.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/misc17.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed miscellaneous-bugs typedef int va_list; class ostream; @@ -32,5 +32,5 @@ FwtStdProgram::usage_if_not_complete() { FwtStdProgram& thisp = *this; thisp.form("%s: error, there were unrecognized options", - (char *) FwtErrorManager::_program);// ERROR - .* + (char *) FwtErrorManager::_program);// { dg-error "" } .* } diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/misc2.C b/gcc/testsuite/g++.old-deja/g++.brendan/misc2.C index d9aa99b..4e217d8 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/misc2.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/misc2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed miscellaneous-bugs // Should be fixed by: // Sun Jun 13 12:55:22 1993 Brendan Kehoe (brendan@lisa.cygnus.com) diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/misc3.C b/gcc/testsuite/g++.old-deja/g++.brendan/misc3.C index d632cb7..c2a1165 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/misc3.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/misc3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed miscellaneous-bugs // The compiler should not error about taking the addr of main in this example. class fred { diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/misc4.C b/gcc/testsuite/g++.old-deja/g++.brendan/misc4.C index 93aea92..d9df956 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/misc4.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/misc4.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed miscellaneous // This should not emit an error about A::~A() being redefined; we // should check that it is a pure virtual. diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/misc5.C b/gcc/testsuite/g++.old-deja/g++.brendan/misc5.C index 05eeed6..35642ab 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/misc5.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/misc5.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed miscellaneous class A { static A aa[2]; diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/misc6.C b/gcc/testsuite/g++.old-deja/g++.brendan/misc6.C index b05c1f1..1738f65 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/misc6.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/misc6.C @@ -1,9 +1,9 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed miscellaneous // test that use of `inline' is forbidden when it should be -inline int i;// ERROR - .* -struct c { inline int i; };// ERROR - .* -int foo (inline int i);// ERROR - .* -inline class c; // ERROR - inline -inline typedef int t; // ERROR - inline -class d { inline friend class c; }; // ERROR - inline +inline int i;// { dg-error "" } .* +struct c { inline int i; };// { dg-error "" } .* +int foo (inline int i);// { dg-error "" } .* +inline class c; // { dg-error "" } inline +inline typedef int t; // { dg-error "" } inline +class d { inline friend class c; }; // { dg-error "" } inline diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/misc7.C b/gcc/testsuite/g++.old-deja/g++.brendan/misc7.C index aa179ca..af61f92 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/misc7.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/misc7.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed miscellaneous extern "C" int printf (const char *, ...); diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/misc8.C b/gcc/testsuite/g++.old-deja/g++.brendan/misc8.C index b2aa92f..f06393c 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/misc8.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/misc8.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed miscellaneous // used to say invalid lvalue in `&\' class foo { diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/misc9.C b/gcc/testsuite/g++.old-deja/g++.brendan/misc9.C index 88071c6..0ec12cb 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/misc9.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/misc9.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed miscellaneous //The program listed below produces the following error during compilation: // % g++ bug17.cc diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/mutable1.C b/gcc/testsuite/g++.old-deja/g++.brendan/mutable1.C index 79157b7..7840ac8 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/mutable1.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/mutable1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed mutable class foo; class bar { diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/nest1.C b/gcc/testsuite/g++.old-deja/g++.brendan/nest1.C index 32aab3e..7763538 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/nest1.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/nest1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed nested-classes int x; class enclose { @@ -8,7 +8,7 @@ public: class inner { public: void f (int i) { - x = i;// ERROR - .* + x = i;// { dg-error "" } .* } }; }; diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/nest10.C b/gcc/testsuite/g++.old-deja/g++.brendan/nest10.C index d22e307..17db4f0 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/nest10.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/nest10.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed nested-classes class A { diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/nest11.C b/gcc/testsuite/g++.old-deja/g++.brendan/nest11.C index 8a5de0f..0c6d475 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/nest11.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/nest11.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed nested-classes class A { int x; diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/nest12.C b/gcc/testsuite/g++.old-deja/g++.brendan/nest12.C index 19286db..4272729 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/nest12.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/nest12.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed nested-classes struct enclose { class nested; diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/nest13.C b/gcc/testsuite/g++.old-deja/g++.brendan/nest13.C index 354e7bc..d9a8b6e 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/nest13.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/nest13.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed nested-classes // The bug here is that wer'e getting a message about inner not // being a basetype itself. I think it's because it's being diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/nest15.C b/gcc/testsuite/g++.old-deja/g++.brendan/nest15.C index 4a696af..5d3a0b4 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/nest15.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/nest15.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed nested-classes class BDDHeap { public: diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/nest16.C b/gcc/testsuite/g++.old-deja/g++.brendan/nest16.C index 920ea0b5..72c0078 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/nest16.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/nest16.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed nested-classes class BDDHeap { public: diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/nest17.C b/gcc/testsuite/g++.old-deja/g++.brendan/nest17.C index f61c49e..94b8fbd 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/nest17.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/nest17.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed nested-classes class T { public: diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/nest18.C b/gcc/testsuite/g++.old-deja/g++.brendan/nest18.C index e41def4..e623827 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/nest18.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/nest18.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed nested-classes // This is the first line of file ||t2.C||. diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/nest19.C b/gcc/testsuite/g++.old-deja/g++.brendan/nest19.C index efa7ac5..01ae3d0 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/nest19.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/nest19.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed nested-classes // This is the first line of file ||t3.C||. diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/nest2.C b/gcc/testsuite/g++.old-deja/g++.brendan/nest2.C index 4b55245..dc61625 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/nest2.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/nest2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed nested-classes class A { protected: diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/nest20.C b/gcc/testsuite/g++.old-deja/g++.brendan/nest20.C index 297b08a..1b2c941 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/nest20.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/nest20.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed nested-classes // This is the first line of file ||t5.C||. diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/nest21.C b/gcc/testsuite/g++.old-deja/g++.brendan/nest21.C index 03d3f32..62ddab1 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/nest21.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/nest21.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed nested-classes #include <iostream> #include <cstdio> diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/nest22.C b/gcc/testsuite/g++.old-deja/g++.brendan/nest22.C index cd26c34..dfbc038 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/nest22.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/nest22.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed nested-classes class foo { public: diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/nest23.C b/gcc/testsuite/g++.old-deja/g++.brendan/nest23.C index e18398b..c62ba9f 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/nest23.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/nest23.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed nested-classes class CS { public: diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/nest24.C b/gcc/testsuite/g++.old-deja/g++.brendan/nest24.C index 4fcc02c..31ab875 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/nest24.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/nest24.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed nested-classes struct A { A (){} diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/nest3.C b/gcc/testsuite/g++.old-deja/g++.brendan/nest3.C index bedd519..0f405eb 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/nest3.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/nest3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed nested-classes class X { public: diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/nest4.C b/gcc/testsuite/g++.old-deja/g++.brendan/nest4.C index 34631f4..f7af04d 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/nest4.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/nest4.C @@ -1,9 +1,9 @@ -// Build don't link: -// Special g++ Options: -pedantic-errors +// { dg-do assemble } +// { dg-options "-pedantic-errors" } // GROUPS passed nested-classes class vec { class blah { }; - ::vec::blah satan( 0);// ERROR - .* - blah herman( 0);// ERROR - .* + ::vec::blah satan( 0);// { dg-error "" } .* + blah herman( 0);// { dg-error "" } .* }; diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/new-array.C b/gcc/testsuite/g++.old-deja/g++.brendan/new-array.C index 3080a58..5737c99 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/new-array.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/new-array.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed operator-new typedef struct { int a; @@ -8,7 +8,7 @@ void MakeBug() { AStruct *job; // This used to crash, it should now give error(s). - job = new AStruct[];// ERROR - .* + job = new AStruct[];// { dg-error "" } .* job = new AStruct; } diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/new1.C b/gcc/testsuite/g++.old-deja/g++.brendan/new1.C index 09326d2..42efbc1 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/new1.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/new1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed operator-new typedef __SIZE_TYPE__ size_t; struct x { int a; void * operator new (size_t, void *); }; diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/new2.C b/gcc/testsuite/g++.old-deja/g++.brendan/new2.C index fbb47fc..2fd55c7 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/new2.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/new2.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed operator-new // Check that if there is a user defined class-specific operator // new for a given class, that operator is invoked when a new diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/new3.C b/gcc/testsuite/g++.old-deja/g++.brendan/new3.C index c431331..82170fd 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/new3.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/new3.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed operator-new #include <stdio.h> #include <stdlib.h> diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/ns1.C b/gcc/testsuite/g++.old-deja/g++.brendan/ns1.C index 312c93a..a34379c 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/ns1.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/ns1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed old-abort struct B { @@ -7,12 +7,12 @@ struct B }; class C -{ // ERROR - warning +{ // { dg-error "" } warning int g(); }; class D2 : public B -{ // ERROR - type C is not a base type for type D2 +{ // { dg-error "" } type C is not a base type for type D2 using B::f; // ok: B is a base of D using C::g; // error: C isn't a base of D2 }; diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/operators1.C b/gcc/testsuite/g++.old-deja/g++.brendan/operators1.C index 89453f9..b1499bf 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/operators1.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/operators1.C @@ -1,14 +1,14 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed operators struct A { int x; }; -int operator()(A x,float y) { // MUST be a member function// ERROR - .* +int operator()(A x,float y) { // MUST be a member function// { dg-error "" } .* return 1; } int main() { A x; - x(1.0); // ERROR - no match for call + x(1.0); // { dg-error "" } no match for call } diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/operators2.C b/gcc/testsuite/g++.old-deja/g++.brendan/operators2.C index ece06ef..7ca114e 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/operators2.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/operators2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed operators class X { }; -void operator[](X& a, X& b) {} // MUST be a member function// ERROR - .* +void operator[](X& a, X& b) {} // MUST be a member function// { dg-error "" } .* diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/operators3.C b/gcc/testsuite/g++.old-deja/g++.brendan/operators3.C index e068de3..20bece7 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/operators3.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/operators3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed operators class X { }; -void operator->(X& a, X& b) {} // MUST be a member function// ERROR - .* +void operator->(X& a, X& b) {} // MUST be a member function// { dg-error "" } .* diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/operators4.C b/gcc/testsuite/g++.old-deja/g++.brendan/operators4.C index 2fee7e6..1f033a6 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/operators4.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/operators4.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // GROUPS passed operators // Check that the & operator, when applied to a global function // or member function returns a proper value as long as the context @@ -51,11 +52,11 @@ int main () if (test3 (vp)) return fail (); ptr_to_method_of_char p2 = &base::method; - vp = (void*) p2; // ERROR - + vp = (void*) p2; // { dg-error "" } if (test4 (vp)) return fail (); ptr_to_method_of_float p3 = &base::method; - vp = (void*) p3; // ERROR - + vp = (void*) p3; // { dg-error "" } if (test5 (vp)) return fail (); @@ -80,7 +81,7 @@ int test3 (void* vp) int test4 (void* vp) { char ch = 'x'; - ptr_to_method_of_char p = (ptr_to_method_of_char) vp; // ERROR - bad type conversion + ptr_to_method_of_char p = (ptr_to_method_of_char) vp; // { dg-error "" } bad type conversion return ((base_ptr->*p)(ch) != 9904); } @@ -88,7 +89,7 @@ int test4 (void* vp) int test5 (void* vp) { float flt = 9.9; - ptr_to_method_of_float p = (ptr_to_method_of_float) vp; // ERROR - bad type conversion + ptr_to_method_of_float p = (ptr_to_method_of_float) vp; // { dg-error "" } bad type conversion if ((base_ptr->*p)(flt) != 9905) { return 1; diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/operators5.C b/gcc/testsuite/g++.old-deja/g++.brendan/operators5.C index d4c8960..dedec90 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/operators5.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/operators5.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed operators // Check that operators may be (directly) recursive. diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/operators6.C b/gcc/testsuite/g++.old-deja/g++.brendan/operators6.C index c0c2318..8ac3df1 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/operators6.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/operators6.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed operators class a { public: diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/operators7.C b/gcc/testsuite/g++.old-deja/g++.brendan/operators7.C index 7a95221..8ceaf3e 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/operators7.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/operators7.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed operators class A { char *p; diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/operators8.C b/gcc/testsuite/g++.old-deja/g++.brendan/operators8.C index 390f749..7289188 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/operators8.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/operators8.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed operators struct A { char *p; diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/overload1.C b/gcc/testsuite/g++.old-deja/g++.brendan/overload1.C index e5040fd..e30ccdf 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/overload1.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/overload1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed overloading class Foo { @@ -9,13 +9,13 @@ public: class Bar : public Foo { public: - int f (int); // ERROR - candidates are + int f (int); // { dg-error "" } candidates are }; int main () { Bar b; - b.f ();// ERROR - + b.f ();// { dg-error "" } b.f (10); } diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/overload10.C b/gcc/testsuite/g++.old-deja/g++.brendan/overload10.C index e28d6ea..6ed0a3c 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/overload10.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/overload10.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed overloading class Bed { public: diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/overload11.C b/gcc/testsuite/g++.old-deja/g++.brendan/overload11.C index cbced94..3661804 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/overload11.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/overload11.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed overloading class foo_int { diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/overload2.C b/gcc/testsuite/g++.old-deja/g++.brendan/overload2.C index de6b406..0d8ad48 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/overload2.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/overload2.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed overloading // Check that calls to the correct overloaded virtual // functions are generated even where the type of the formal diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/overload3.C b/gcc/testsuite/g++.old-deja/g++.brendan/overload3.C index baa90fb..49f9d69 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/overload3.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/overload3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed overloading typedef int rutBoolean; diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/overload4.C b/gcc/testsuite/g++.old-deja/g++.brendan/overload4.C index 21c3dc8..ac4f8c8 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/overload4.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/overload4.C @@ -1,11 +1,11 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed overloading typedef void * (*NewObject) (void); class B { public: - static void WantsNew (NewObject creator); // ERROR - candidates are + static void WantsNew (NewObject creator); // { dg-error "" } candidates are }; 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 );// ERROR - + B::WantsNew ( A::NewOne );// { dg-error "" } } }; diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/overload5.C b/gcc/testsuite/g++.old-deja/g++.brendan/overload5.C index d71f0c0..d5c25db 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/overload5.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/overload5.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed overloading class Foo { diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/overload6.C b/gcc/testsuite/g++.old-deja/g++.brendan/overload6.C index 84903c1..1f7fdfa 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/overload6.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/overload6.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed overloading struct temp_string { temp_string (const unsigned char); diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/overload7.C b/gcc/testsuite/g++.old-deja/g++.brendan/overload7.C index 252eb6d..29a9060 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/overload7.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/overload7.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed overloading extern "C" int printf (const char *, ...); diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/overload8.C b/gcc/testsuite/g++.old-deja/g++.brendan/overload8.C index e097486..ae7b88f 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/overload8.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/overload8.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed overloading typedef struct{double re,im;} complex; class Complex{public:double re,im; @@ -6,4 +6,4 @@ class Complex{public:double re,im; void zxcvbnm(int n,...){n=1;} int main(){complex c; Complex C; zxcvbnm(1,c); -zxcvbnm(1,C);} // WARNING - cannot pass non pod +zxcvbnm(1,C);} // { dg-warning "" } cannot pass non pod diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/overload9.C b/gcc/testsuite/g++.old-deja/g++.brendan/overload9.C index 93a0cbf..32d6940 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/overload9.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/overload9.C @@ -1,10 +1,10 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed overloading class CLogger { public: - void operator() (int,const char *) {}; // ERROR - candidates - void operator() (int,const char *, ...) {}; // ERROR - candidates + void operator() (int,const char *) {}; // { dg-error "" } candidates + void operator() (int,const char *, ...) {}; // { dg-error "" } candidates } Log; class CGLogger : public CLogger @@ -13,8 +13,8 @@ class CGLogger : public CLogger int main() { - Log(1,"Test");// ERROR - call of.* + Log(1,"Test");// { dg-error "" } call of.* Log(1,"Test %d",3); - GLog(1,"Test");// ERROR - call of.* + GLog(1,"Test");// { dg-error "" } call of.* GLog(1,"Test %d",3); } diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/parse1.C b/gcc/testsuite/g++.old-deja/g++.brendan/parse1.C index 0c62c03..ce8e4ce 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/parse1.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/parse1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed parsing class Try { private: diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/parse2.C b/gcc/testsuite/g++.old-deja/g++.brendan/parse2.C index cd588e1..1b44876 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/parse2.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/parse2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed parsing class BitString { public: diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/parse3.C b/gcc/testsuite/g++.old-deja/g++.brendan/parse3.C index ffe72d2..18bde91 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/parse3.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/parse3.C @@ -1,5 +1,4 @@ -// Build don't link: -// crash test +// { dg-do assemble } // these are marked as expected errors because they evidence an // ambiguity in the grammar between expressions and declarations. diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/parse4.C b/gcc/testsuite/g++.old-deja/g++.brendan/parse4.C index 48f37e5..3f201e8 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/parse4.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/parse4.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } class B { diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/parse5.C b/gcc/testsuite/g++.old-deja/g++.brendan/parse5.C index 9895da0..666acf2 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/parse5.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/parse5.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } class ptr8 diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/parse6.C b/gcc/testsuite/g++.old-deja/g++.brendan/parse6.C index 9468011..3d7c51d 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/parse6.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/parse6.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } class A { }; diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/prepost1.C b/gcc/testsuite/g++.old-deja/g++.brendan/prepost1.C index e1b18bc..cfee4f4 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/prepost1.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/prepost1.C @@ -1,8 +1,8 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed prefix-postfix class foo { public: - operator ++ (); // ERROR - no type or storage class + operator ++ (); // { dg-error "" } no type or storage class }; int main() @@ -11,5 +11,5 @@ int main() // This should fall back to calling operator++(), and be an error with // the -pedantic flag. - x++;// ERROR - + x++;// { dg-error "" } } diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/prepost2.C b/gcc/testsuite/g++.old-deja/g++.brendan/prepost2.C index 1e34433..3156749 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/prepost2.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/prepost2.C @@ -1,10 +1,10 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed initialization class foo { public: - operator ++ (); // ERROR - no type or storage class - operator ++ (int); // ERROR - no type or storage class - operator ++ (char); // illegal// ERROR - .* - operator ++ (short); // illegal// ERROR - .* - operator ++ (long); // illegal// ERROR - .* + operator ++ (); // { dg-error "" } no type or storage class + operator ++ (int); // { dg-error "" } no type or storage class + operator ++ (char); // illegal// { dg-error "" } .* + operator ++ (short); // illegal// { dg-error "" } .* + operator ++ (long); // illegal// { dg-error "" } .* }; diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/prepost3.C b/gcc/testsuite/g++.old-deja/g++.brendan/prepost3.C index 4244e4f..d11624b 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/prepost3.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/prepost3.C @@ -1,7 +1,7 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed prefix-postfix class Y { public: friend Y operator++ (Y&); - friend Y operator++ (Y&, char); // illegal// ERROR - .* + friend Y operator++ (Y&, char); // illegal// { dg-error "" } .* }; diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/prepost4.C b/gcc/testsuite/g++.old-deja/g++.brendan/prepost4.C index ac31f91..1ec6d23 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/prepost4.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/prepost4.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed prefix-postfix class Y { public: diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/ptolemy1.C b/gcc/testsuite/g++.old-deja/g++.brendan/ptolemy1.C index 3e3b2df..4c7afeb 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/ptolemy1.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/ptolemy1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed ptolemy-bugs class Tcl_Interp; diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/ptolemy2.C b/gcc/testsuite/g++.old-deja/g++.brendan/ptolemy2.C index 0d053c2..a8a0623 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/ptolemy2.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/ptolemy2.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed ptolemy-bugs #include <iostream> diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/ptrmem1.C b/gcc/testsuite/g++.old-deja/g++.brendan/ptrmem1.C index 49c9f75..0514483 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/ptrmem1.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/ptrmem1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed pointers-to-members class my_class { diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/ptrmem2.C b/gcc/testsuite/g++.old-deja/g++.brendan/ptrmem2.C index 2af19e0..36145cf 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/ptrmem2.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/ptrmem2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed pointers-to-members struct C { struct N { diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/ptrmem3.C b/gcc/testsuite/g++.old-deja/g++.brendan/ptrmem3.C index 0f6bf0b..4f78039 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/ptrmem3.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/ptrmem3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed pointers-to-members template<class T> class TemplA { T t; diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/ptrmem4.C b/gcc/testsuite/g++.old-deja/g++.brendan/ptrmem4.C index a4f792e..4725fb5 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/ptrmem4.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/ptrmem4.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed pointers-to-members class X { private: diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/recurse.C b/gcc/testsuite/g++.old-deja/g++.brendan/recurse.C index 639dfb3..de20a07 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/recurse.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/recurse.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed recursive-aborts // types typedef unsigned int DBflag; // for storing user flag value @@ -75,6 +75,6 @@ int main() { DBpathrec a(), b(); - a = b;// ERROR - non-lvalue in assignment.* + a = b;// { dg-error "" } non-lvalue in assignment.* } diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/redecl1.C b/gcc/testsuite/g++.old-deja/g++.brendan/redecl1.C index f717c45..46f82df 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/redecl1.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/redecl1.C @@ -1,6 +1,5 @@ -// Build don't link: +// { dg-do assemble { xfail *-*-* } } // GROUPS passed redeclaration -// crash test - XFAIL *-*-* -inline int min(int x, int y) {return x < y ? x : y;} /* 235 */// ERROR - .* +inline int min(int x, int y) {return x < y ? x : y;} /* 235 */// { dg-error "" } .* int min(int a, int b); -inline int min(int a, int b) {return (a < b)?a:b;}// ERROR - .* +inline int min(int a, int b) {return (a < b)?a:b;}// { dg-error "" } .* diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/redecl2.C b/gcc/testsuite/g++.old-deja/g++.brendan/redecl2.C index 700ff7e..b654b24 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/redecl2.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/redecl2.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed redeclaration // Check that if multiple declarations of the same single // function are present in different places in the same file, diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/redecl3.C b/gcc/testsuite/g++.old-deja/g++.brendan/redecl3.C index 5987e0e..1bfd889 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/redecl3.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/redecl3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed redeclaration class foo { @@ -10,7 +10,7 @@ public: void bar(int &a); int foo::bar(int a) { - int a = 0; // Should this be an error ?// ERROR - declaration.* + int a = 0; // Should this be an error ?// { dg-error "" } declaration.* bar(a); return 0; diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/reference1.C b/gcc/testsuite/g++.old-deja/g++.brendan/reference1.C index 4df4636..92ff38d 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/reference1.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/reference1.C @@ -1,4 +1,5 @@ -// Special g++ Options: -w +// { dg-do run } +// { dg-options "-w" } // GROUPS passed references // Check that if a reference is initialized to refer to a value // which is returned from a function call, the actual call to diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/rtti1.C b/gcc/testsuite/g++.old-deja/g++.brendan/rtti1.C index 6dcdff3..f57b957 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/rtti1.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/rtti1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed RTTI #include <typeinfo> diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/scope1.C b/gcc/testsuite/g++.old-deja/g++.brendan/scope1.C index 26b565a..f545941 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/scope1.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/scope1.C @@ -1,8 +1,8 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed scoping int f (int i) { if (i) for (int j = i; j; j--) ; - return j; // error: j should only be in scope inside the body of `for'// ERROR - .* + return j; // error: j should only be in scope inside the body of `for'// { dg-error "" } .* } diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/scope2.C b/gcc/testsuite/g++.old-deja/g++.brendan/scope2.C index fccd1d6..1d211aa 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/scope2.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/scope2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed scoping class A { diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/scope3.C b/gcc/testsuite/g++.old-deja/g++.brendan/scope3.C index cf78430..3ff7f54 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/scope3.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/scope3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed scoping // This is fixed when NEW_CLASS_SCOPING is on. diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/scope4.C b/gcc/testsuite/g++.old-deja/g++.brendan/scope4.C index a6781ab..2729ca6 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/scope4.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/scope4.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed scoping class BitString { public: diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/scope5.C b/gcc/testsuite/g++.old-deja/g++.brendan/scope5.C index 7532369..3ae9f8b 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/scope5.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/scope5.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed scoping class Integer { public: diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/shadow1.C b/gcc/testsuite/g++.old-deja/g++.brendan/shadow1.C index b9b3636..c133dea 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/shadow1.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/shadow1.C @@ -1,7 +1,7 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed errors void f( int a) { - int a; // this should be an error now// ERROR - .* + int a; // this should be an error now// { dg-error "" } .* { int a; } diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/sizeof1.C b/gcc/testsuite/g++.old-deja/g++.brendan/sizeof1.C index c8242eb..bc2f181 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/sizeof1.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/sizeof1.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -pedantic-errors +// { dg-do assemble } +// { dg-options "-pedantic-errors" } // GROUPS passed sizeof // ARM $5.3.2 @@ -9,7 +9,7 @@ int main() { // sizeof may not be applied to a function - int i = sizeof( f);// ERROR - .* + int i = sizeof( f);// { dg-error "" } .* return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/sizeof2.C b/gcc/testsuite/g++.old-deja/g++.brendan/sizeof2.C index ddac679..355bee7 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/sizeof2.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/sizeof2.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -pedantic-errors +// { dg-do assemble } +// { dg-options "-pedantic-errors" } // GROUPS passed sizeof // ARM $5.3.2 @@ -12,7 +12,7 @@ main() { // sizeof may not be applied to a bit-field foo f; - int i = sizeof (f.bit);// ERROR - .* + int i = sizeof (f.bit);// { dg-error "" } .* return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/sizeof3.C b/gcc/testsuite/g++.old-deja/g++.brendan/sizeof3.C index e6972ca..3596a1e 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/sizeof3.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/sizeof3.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -pedantic-errors +// { dg-do assemble } +// { dg-options "-pedantic-errors" } // GROUPS passed sizeof // ARM $5.3.2 @@ -9,7 +9,7 @@ int main() { // sizeof may not be applied to an undefined class - int k = sizeof (bar);// ERROR - .* + int k = sizeof (bar);// { dg-error "" } .* return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/sizeof4.C b/gcc/testsuite/g++.old-deja/g++.brendan/sizeof4.C index 62d76c0..3ac0a8e 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/sizeof4.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/sizeof4.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -pedantic-errors +// { dg-do assemble } +// { dg-options "-pedantic-errors" } // GROUPS passed sizeof // ARM $5.3.2 @@ -7,7 +7,7 @@ int main() { // sizeof may not be applied to the type void - int l = sizeof (void);// ERROR - .* + int l = sizeof (void);// { dg-error "" } .* return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/sizeof5.C b/gcc/testsuite/g++.old-deja/g++.brendan/sizeof5.C index c23dc2f..551f408 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/sizeof5.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/sizeof5.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed sizeof // ARM $5.3.2 diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/sorry1.C b/gcc/testsuite/g++.old-deja/g++.brendan/sorry1.C index caa9276..7a77801 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/sorry1.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/sorry1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed old-sorry class a { public: diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/static1.C b/gcc/testsuite/g++.old-deja/g++.brendan/static1.C index b30c796..cb83923 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/static1.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/static1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed static -class A { public: int a; };// ERROR - .* -void foo7 () { A::a = 3; }// ERROR - .* +class A { public: int a; };// { dg-error "" } .* +void foo7 () { A::a = 3; }// { dg-error "" } .* diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/static2.C b/gcc/testsuite/g++.old-deja/g++.brendan/static2.C index 8fd5ffc..099d922 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/static2.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/static2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed static class A { @@ -9,7 +9,7 @@ class A static void staticMember() { - member (); // illegal, no object for calling non-static method// ERROR - .* + member (); // illegal, no object for calling non-static method// { dg-error "" } .* } }; diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/static3.C b/gcc/testsuite/g++.old-deja/g++.brendan/static3.C index 5c52f0e..c0ee011 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/static3.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/static3.C @@ -1,12 +1,12 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed static class foo{ public: static void bar( int i ){ value = i; } - static int value;// ERROR - .* + static int value;// { dg-error "" } .* }; -const int foo::value = 0; // should be an error.// ERROR - .* +const int foo::value = 0; // should be an error.// { dg-error "" } .* int main(){ foo::bar( 1 ); diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/synth1.C b/gcc/testsuite/g++.old-deja/g++.brendan/synth1.C index 5356796..eed7f9f 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/synth1.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/synth1.C @@ -1,7 +1,6 @@ -// Build don't link: -// Special g++ Options: -pedantic-errors -g -Wall +// { dg-do assemble { xfail sparc64-*-elf } } +// { dg-options "-pedantic-errors -g -Wall" } // GROUPS passed synthetics -// excess errors test - XFAIL sparc64-*-elf // Check to make sure that g++ doesn't get freaked out about the use // of generated methods that it supposedly "can't see". diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/template1.C b/gcc/testsuite/g++.old-deja/g++.brendan/template1.C index e6609fd..552f8ee 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/template1.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/template1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed templates // g++-2.2.1: member functions returning a template type diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/template11.C b/gcc/testsuite/g++.old-deja/g++.brendan/template11.C index 8316c2f..e522b79 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/template11.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/template11.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed templates template <class Called> class aCallback diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/template12.C b/gcc/testsuite/g++.old-deja/g++.brendan/template12.C index 2165ae2..686db48 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/template12.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/template12.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed templates inline void foo (const int &x) {} diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/template13.C b/gcc/testsuite/g++.old-deja/g++.brendan/template13.C index 653ef21..ea81202 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/template13.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/template13.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed templates template<class T> class ListS { diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/template15.C b/gcc/testsuite/g++.old-deja/g++.brendan/template15.C index b830505..366ebfe 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/template15.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/template15.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed templates template<class T> class Stack { public: diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/template16.C b/gcc/testsuite/g++.old-deja/g++.brendan/template16.C index ec13a24..d62f6be 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/template16.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/template16.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed templates template<class T> class TList { typedef void (T::*TVOIDFUNT)(); diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/template17.C b/gcc/testsuite/g++.old-deja/g++.brendan/template17.C index e6c2652..bb56bb3 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/template17.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/template17.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed templates struct Regex { int i; Regex(char *, int); }; template<class KEY> @@ -8,5 +8,5 @@ public: static unsigned sequence_number; }; -const Regex NDAMName<'L'>::pattern("^[Ll](.*)$", 1);// ERROR - type/value.* -unsigned NDAMName<'L'>::sequence_number = 0;// ERROR - type/value +const Regex NDAMName<'L'>::pattern("^[Ll](.*)$", 1);// { dg-error "" } type/value.* +unsigned NDAMName<'L'>::sequence_number = 0;// { dg-error "" } type/value diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/template18.C b/gcc/testsuite/g++.old-deja/g++.brendan/template18.C index 5c6479c..280db5d 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/template18.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/template18.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed templates template<class T> class X; typedef X<int> IX; diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/template19.C b/gcc/testsuite/g++.old-deja/g++.brendan/template19.C index a8b33c1..d5215ae 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/template19.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/template19.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed templates template <class T> class Base diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/template2.C b/gcc/testsuite/g++.old-deja/g++.brendan/template2.C index ca60fa7..cb1d674 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/template2.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/template2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed templates template <class Q> class Conc { diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/template20.C b/gcc/testsuite/g++.old-deja/g++.brendan/template20.C index da26f9a..6b7c40d 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/template20.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/template20.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed templates template <class A, class B> class Map; diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/template21.C b/gcc/testsuite/g++.old-deja/g++.brendan/template21.C index 9d61391..3bfd0cf 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/template21.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/template21.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed templates template<class T> class L { diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/template22.C b/gcc/testsuite/g++.old-deja/g++.brendan/template22.C index 28c70b3..4301fad 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/template22.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/template22.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed templates extern "C" int printf (const char *, ...); diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/template23.C b/gcc/testsuite/g++.old-deja/g++.brendan/template23.C index f38d420..d366eda 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/template23.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/template23.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed templates template <class T> class T_Base diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/template24.C b/gcc/testsuite/g++.old-deja/g++.brendan/template24.C index dd2b2f1..d755954 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/template24.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/template24.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed templates extern "C" int printf (const char *, ...); diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/template25.C b/gcc/testsuite/g++.old-deja/g++.brendan/template25.C index 5939fed..43f69a5 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/template25.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/template25.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed templates template <class T> class Temp_Base diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/template26.C b/gcc/testsuite/g++.old-deja/g++.brendan/template26.C index d245423..3f5de3d 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/template26.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/template26.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed templates class V { public: diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/template27.C b/gcc/testsuite/g++.old-deja/g++.brendan/template27.C index 2575216..5357f1c 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/template27.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/template27.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed templates template<class K, class V> class MapLS { }; class String {}; diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/template28.C b/gcc/testsuite/g++.old-deja/g++.brendan/template28.C index 48ae7fb..6c56d45 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/template28.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/template28.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed templates class X { const char *fptr; diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/template29.C b/gcc/testsuite/g++.old-deja/g++.brendan/template29.C index 2c427d9..aee91c2 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/template29.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/template29.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed templates template <class ElementType> class A { public: diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/template3.C b/gcc/testsuite/g++.old-deja/g++.brendan/template3.C index 6fec8d8..09c8571 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/template3.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/template3.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed templates extern "C" int printf (const char *, ...); extern "C" void exit (int); diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/template30.C b/gcc/testsuite/g++.old-deja/g++.brendan/template30.C index dcbd9c1..87c95e1 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/template30.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/template30.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed templates template<class K, class V> class MapLS { }; diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/template31.C b/gcc/testsuite/g++.old-deja/g++.brendan/template31.C index 3a1b149..b13e638 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/template31.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/template31.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed templates // PRMS Id: 13218 diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/template4.C b/gcc/testsuite/g++.old-deja/g++.brendan/template4.C index 318cd2e..61ad1cc 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/template4.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/template4.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed templates // This used to be a circularity in chainon. template <class ARG> struct TMPL { diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/template5.C b/gcc/testsuite/g++.old-deja/g++.brendan/template5.C index 810f0cb..1b68043 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/template5.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/template5.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed templates template<class T> class Vector diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/template6.C b/gcc/testsuite/g++.old-deja/g++.brendan/template6.C index 96459ca..2cff7e5 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/template6.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/template6.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed templates struct B { }; diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/template7.C b/gcc/testsuite/g++.old-deja/g++.brendan/template7.C index 59dc483..8fb636e 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/template7.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/template7.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed templates template <class ET> class ChainElem { diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/template8.C b/gcc/testsuite/g++.old-deja/g++.brendan/template8.C index 80adbe1..66ba0d8 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/template8.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/template8.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed templates #include <stdio.h> diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/temporary1.C b/gcc/testsuite/g++.old-deja/g++.brendan/temporary1.C index 8c6d4c3..f4c2ab3 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/temporary1.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/temporary1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed temporaries #include <stdio.h> diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/typedef1.C b/gcc/testsuite/g++.old-deja/g++.brendan/typedef1.C index 2f7aa87..3eed3e0 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/typedef1.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/typedef1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } class baseClassA { diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/union1.C b/gcc/testsuite/g++.old-deja/g++.brendan/union1.C index 6ae0605..ffc5555 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/union1.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/union1.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed unions // This is fixed by finish_anon_union doing a string_cst_equal check on // the DECL_SIZE of the decls, instead of comparing the DECL_SIZE nodes. diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/union2.C b/gcc/testsuite/g++.old-deja/g++.brendan/union2.C index d913ae8..5d7e9c8 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/union2.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/union2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed unions class B; diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/union3.C b/gcc/testsuite/g++.old-deja/g++.brendan/union3.C index ad8b840..75ffbc0 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/union3.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/union3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed unions union alan { int a; diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/visibility1.C b/gcc/testsuite/g++.old-deja/g++.brendan/visibility1.C index 784c167..cb4003f 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/visibility1.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/visibility1.C @@ -1,8 +1,8 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed visibility class foo { protected: - int i; // ERROR - protected + int i; // { dg-error "" } protected }; class bar : public foo { @@ -12,5 +12,5 @@ public: void baz (foo *f) { - f->i = 1; // error: i is protected// ERROR - .* + f->i = 1; // error: i is protected// { dg-error "" } .* } diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/visibility10.C b/gcc/testsuite/g++.old-deja/g++.brendan/visibility10.C index 4eb3cae..89d2157 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/visibility10.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/visibility10.C @@ -1,14 +1,14 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed visibility struct base { protected: - void base_func() {}// ERROR - .*is protected.* + void base_func() {}// { dg-error "" } .*is protected.* }; struct derived : public base { protected: - void derived_func(base *ptr) { ptr->base_func(); }// ERROR - within this context + void derived_func(base *ptr) { ptr->base_func(); }// { dg-error "" } within this context }; diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/visibility2.C b/gcc/testsuite/g++.old-deja/g++.brendan/visibility2.C index 09e0f65..74021d5 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/visibility2.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/visibility2.C @@ -1,10 +1,10 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed visibility class X { - void g (int); // ERROR - private + void g (int); // { dg-error "" } private public: void g (double); }; -class Y : public X { void f() { g (1); } }; // ERROR - private +class Y : public X { void f() { g (1); } }; // { dg-error "" } private diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/visibility3.C b/gcc/testsuite/g++.old-deja/g++.brendan/visibility3.C index 62cdfee..249ae81 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/visibility3.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/visibility3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed visibility // Used to say: // manip.cc:17: member `_f' is a private member of class `B<int>' diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/visibility4.C b/gcc/testsuite/g++.old-deja/g++.brendan/visibility4.C index 1e7aea1..158c161 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/visibility4.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/visibility4.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed visibility template <class T> class Feld { diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/visibility5.C b/gcc/testsuite/g++.old-deja/g++.brendan/visibility5.C index a53881a..f43b250 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/visibility5.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/visibility5.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed visibility template<int K> class B; template<int K> class A {int n; friend class B<K>;}; diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/visibility6.C b/gcc/testsuite/g++.old-deja/g++.brendan/visibility6.C index 85f47b5..f9ba954 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/visibility6.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/visibility6.C @@ -1,9 +1,9 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed visibility class bottom { public: - int b; // ERROR - private + int b; // { dg-error "" } private }; class middle : private bottom { @@ -13,5 +13,5 @@ public: class top : public middle { public: - void bar () { b; }// ERROR - .* + void bar () { b; }// { dg-error "" } .* }; diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/visibility7.C b/gcc/testsuite/g++.old-deja/g++.brendan/visibility7.C index 670547d..f7bf00c 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/visibility7.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/visibility7.C @@ -1,9 +1,9 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed visibility class X { public: - void fn ();// ERROR - .* + void fn ();// { dg-error "" } .* }; class Y : private X {}; @@ -11,5 +11,5 @@ class Y : private X class Unrelated { public: - void foo () { Y y; y.fn (); }// ERROR - .* + void foo () { Y y; y.fn (); }// { dg-error "" } .* }; diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/visibility8.C b/gcc/testsuite/g++.old-deja/g++.brendan/visibility8.C index 2d69e7b..00f5347 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/visibility8.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/visibility8.C @@ -1,15 +1,15 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed visibility // Make sure private inheritance affects the visibility of // static members used in an inherited context. class foo { public: - static int y; // ERROR - private + static int y; // { dg-error "" } private }; class foo1 : private foo { }; class foo2 : public foo1 { public: - void bar () { y; }// ERROR - .* + void bar () { y; }// { dg-error "" } .* }; diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/visibility9.C b/gcc/testsuite/g++.old-deja/g++.brendan/visibility9.C index c259929..963bc2b 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/visibility9.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/visibility9.C @@ -1,8 +1,8 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed visibility class A { public: - void aMethod(void) {};// ERROR - .* + void aMethod(void) {};// { dg-error "" } .* }; class AA : A { }; @@ -11,6 +11,6 @@ class B { public: void thisMethod() { AA ana; - ana.aMethod();// ERROR - .* + ana.aMethod();// { dg-error "" } .* } }; diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/vtables1.C b/gcc/testsuite/g++.old-deja/g++.brendan/vtables1.C index d6ce085..219bb91 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/vtables1.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/vtables1.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed virtual-tables // Check that virtual function tables are generated and used // even for struct's/classes which have no explicit constructors. diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/warnings1.C b/gcc/testsuite/g++.old-deja/g++.brendan/warnings1.C index 962e718..8497d54 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/warnings1.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/warnings1.C @@ -1,6 +1,6 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed warnings // there should be a warning about foo only defining private methods -class foo { // ERROR - .* +class foo { // { dg-error "" } .* int bar(); }; diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/warnings10.C b/gcc/testsuite/g++.old-deja/g++.brendan/warnings10.C index 78ddf77..ea1e888 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/warnings10.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/warnings10.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed warnings void foo() { diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/warnings2.C b/gcc/testsuite/g++.old-deja/g++.brendan/warnings2.C index 49971d5..665c7a4 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/warnings2.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/warnings2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed warnings class K { public: diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/warnings3.C b/gcc/testsuite/g++.old-deja/g++.brendan/warnings3.C index 14fe997..07381b9 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/warnings3.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/warnings3.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -O2 -Wall +// { dg-do assemble } +// { dg-options "-O2 -Wall" } // GROUPS passed warnings class A { int i; diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/warnings4.C b/gcc/testsuite/g++.old-deja/g++.brendan/warnings4.C index f22a57e..410ca80 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/warnings4.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/warnings4.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed warnings int main () diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/warnings5.C b/gcc/testsuite/g++.old-deja/g++.brendan/warnings5.C index 5a953fd..e6341fa 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/warnings5.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/warnings5.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed warnings enum TypeKind { ATK, BTK } ; diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/warnings6.C b/gcc/testsuite/g++.old-deja/g++.brendan/warnings6.C index 785c083..5557f19 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/warnings6.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/warnings6.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -O2 -Wall -ansi -pedantic +// { dg-do assemble } +// { dg-options "-O2 -Wall -ansi -pedantic" } // GROUPS passed warnings // should not emit this warning about func: // x.C:2: warning: invalid storage class for function `func' diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/warnings7.C b/gcc/testsuite/g++.old-deja/g++.brendan/warnings7.C index 2fc2892..89d6eca 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/warnings7.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/warnings7.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -O2 -Wall +// { dg-do assemble } +// { dg-options "-O2 -Wall" } // GROUPS passed warnings template<class T> class X { diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/warnings8.C b/gcc/testsuite/g++.old-deja/g++.brendan/warnings8.C index 5599918..cdb7c62 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/warnings8.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/warnings8.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -Wall +// { dg-do assemble } +// { dg-options "-Wall" } // GROUPS passed warnings bool foo(unsigned char c) { diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/warnings9.C b/gcc/testsuite/g++.old-deja/g++.brendan/warnings9.C index c46f2a1..576f431 100644 --- a/gcc/testsuite/g++.old-deja/g++.brendan/warnings9.C +++ b/gcc/testsuite/g++.old-deja/g++.brendan/warnings9.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -Wall +// { dg-do assemble } +// { dg-options "-Wall" } // GROUPS passed warnings inline int foo() { diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/891229_02.C b/gcc/testsuite/g++.old-deja/g++.bugs/891229_02.C index 042096c..d91987b 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/891229_02.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/891229_02.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // g++ 1.36.1 bug 891229_02 // g++ limits the scope of names which are declared as typedef names within @@ -17,7 +18,7 @@ struct foo { typedef void (*function_p) (void); }; -function_p fp; // ERROR - no such type in scope +function_p fp; // { dg-error "" } no such type in scope foo::foo () {} diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/891230_01.C b/gcc/testsuite/g++.old-deja/g++.bugs/891230_01.C index ac49e0b..769363d 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/891230_01.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/891230_01.C @@ -1,3 +1,4 @@ +// { dg-do run } // g++ 1.36.1 bug 891230_01 // g++ gives typedefs which are nested within class declarations a scope @@ -14,7 +15,7 @@ struct foo { void member (foo_p); }; -void foo::member (foo_p p) { // gets bogus errors +void foo::member (foo_p p) { // { dg-bogus "" } s } int main () { return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900107_01.C b/gcc/testsuite/g++.old-deja/g++.bugs/900107_01.C index 7271f1a..b486fc6 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900107_01.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900107_01.C @@ -1,3 +1,4 @@ +// { dg-do run } // g++ 1.36.1 bug 900107_01 // Unlike GCC and Cfront 2.0, the g++ 1.36.1 compiler gives struct, union, @@ -15,15 +16,15 @@ typedef int t1; void foo () { - class c1 { // gets bogus error + class c1 { // { dg-bogus "" } int c1_member1; } c1_local_object_0; - struct s1 { // gets bogus error + struct s1 { // { dg-bogus "" } int s1_member1; } s1_local_object_0; - union u1 { // gets bogus error + union u1 { // { dg-bogus "" } int u1_member1; } u1_local_object_0; diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900119_01.C b/gcc/testsuite/g++.old-deja/g++.bugs/900119_01.C index 3c93c52..01d570f 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900119_01.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900119_01.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // g++ 1.36.1 bug 900119_01 // g++ allows initializers to be included in the declaration of members @@ -11,26 +12,26 @@ int global_int; class class0 { public: - int class0_member_0 = 99; /* ERROR - */ - static int class0_member_1 = 99; /* ERROR - */ - int &class0_member_2 = global_int; /* ERROR - */ + int class0_member_0 = 99; /* { dg-error "" } */ + static int class0_member_1 = 99; /* { dg-error "" } */ + int &class0_member_2 = global_int; /* { dg-error "" } */ - class0 () : class0_member_2 (global_int) { } /* ERROR - */ + class0 () : class0_member_2 (global_int) { } /* { dg-error "" } */ }; struct struct0 { - int struct0_member_0 = 99; /* ERROR - */ - static int struct0_member_1 = 99; /* ERROR - */ - int &struct0_member_2 = global_int; /* ERROR - */ + int struct0_member_0 = 99; /* { dg-error "" } */ + static int struct0_member_1 = 99; /* { dg-error "" } */ + int &struct0_member_2 = global_int; /* { dg-error "" } */ - struct0 () : struct0_member_2 (global_int) { } /* ERROR - */ + struct0 () : struct0_member_2 (global_int) { } /* { dg-error "" } */ }; // g++ does not allow unions to have more than one member with an initializer union union0 { - int union0_member_0 = 99; /* ERROR - */ + int union0_member_0 = 99; /* { dg-error "" } */ }; union union1 { @@ -38,9 +39,9 @@ union union1 { }; union union2 { - int &union2_member_0 = global_int; /* ERROR - */ + int &union2_member_0 = global_int; /* { dg-error "" } */ - union2 () : union2_member_0 (global_int) { } /* ERROR - */ + union2 () : union2_member_0 (global_int) { } /* { dg-error "" } */ }; int main () { return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900121_01.C b/gcc/testsuite/g++.old-deja/g++.bugs/900121_01.C index ea07968..3259163 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900121_01.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900121_01.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // g++ 1.36.1 bug 900121_01 // The following file causes g++ 1.36.1 (and 1.36.2) to abort. @@ -6,11 +7,11 @@ // keywords: abort, incomplete types, reference types, formal parameters -struct s0; // ERROR - forward declaration +struct s0; // { dg-error "" } forward declaration void function (struct s0 &arg1, struct s0 &arg2) { - arg1 = arg2; // ERROR - causes abort + arg1 = arg2; // { dg-error "" } causes abort } int main () { return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900121_02.C b/gcc/testsuite/g++.old-deja/g++.bugs/900121_02.C index 79a669c..cb31366 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900121_02.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900121_02.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // g++ 1.36.1 bug 900121_02 // Assignment of structs is defined as memberwise assignment, @@ -34,8 +35,8 @@ struct s1 { }; union u0 { - s0 u0_member_0; // ERROR - - s1 u0_member_1; // ERROR - + s0 u0_member_0; // { dg-error "" } + s1 u0_member_1; // { dg-error "" } }; void function () diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900121_05.C b/gcc/testsuite/g++.old-deja/g++.bugs/900121_05.C index 03155ab..8dbae5df 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900121_05.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900121_05.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // g++ 1.36.1 bug 900121_05 // g++ allows unions to have base types (i.e. to be "derived") and it allows @@ -13,7 +14,7 @@ struct s0 { int s0_member; }; -union u0 : public s0 { /* ERROR - union has base class */ +union u0 : public s0 { /* { dg-error "" } union has base class */ int u0_member_0; int u0_member_1; }; @@ -23,7 +24,7 @@ union u1 { int u1_member_1; }; -struct s1 : public u1 { /* ERROR - base class is a union */ +struct s1 : public u1 { /* { dg-error "" } base class is a union */ int s1_member_0; }; diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900127_01.C b/gcc/testsuite/g++.old-deja/g++.bugs/900127_01.C index 7c24d08..3ea60aa 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900127_01.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900127_01.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // g++ 1.36.1 bug 900127_01 // g++ often fails to detect (and issue errors for) ambiguous overload @@ -14,12 +15,12 @@ int foo (void); typedef int (*f_ptr_t1) (void); typedef void (*f_ptr_t2) (int); -void bar (f_ptr_t1); // ERROR - -void bar (f_ptr_t2); // ERROR - +void bar (f_ptr_t1); // { dg-error "" } +void bar (f_ptr_t2); // { dg-error "" } void function () { - bar (foo); // ERROR - ambiguous + bar (foo); // { dg-error "" } ambiguous } int main () { return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900127_02.C b/gcc/testsuite/g++.old-deja/g++.bugs/900127_02.C index 61cd481..0ae2388 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900127_02.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900127_02.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // g++ 1.36.1 bug 900127_02 // g++ (mostly) keeps separate name spaces for the declarations of data @@ -15,32 +16,32 @@ // keywords: name spaces, overloading -int global0; // ERROR - -int global0 (); // ERROR - +int global0; // { dg-error "" } +int global0 (); // { dg-error "" } -int global1 (); // ERROR - xref for below -int global1; // ERROR - caught +int global1 (); // { dg-error "" } xref for below +int global1; // { dg-error "" } caught struct struct_0 { - int class_local (); // ERROR - - int class_local; // ERROR - + int class_local (); // { dg-error "" } + int class_local; // { dg-error "" } }; struct struct_1 { - int class_local; // ERROR - - int class_local (); // ERROR - + int class_local; // { dg-error "" } + int class_local (); // { dg-error "" } }; void function_0 () { - int function_0_local; // ERROR - - extern int function_0_local (); // ERROR - + int function_0_local; // { dg-error "" } + extern int function_0_local (); // { dg-error "" } } void function_1 () { - int function_1_local (); // ERROR - - extern int function_1_local; // ERROR - + int function_1_local (); // { dg-error "" } + extern int function_1_local; // { dg-error "" } } int main () { return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900205_02.C b/gcc/testsuite/g++.old-deja/g++.bugs/900205_02.C index 505792f..6275d6a 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900205_02.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900205_02.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // g++ 1.36.1 bug 900205_02 // g++ allows constructors to be defined which do not include @@ -12,7 +13,7 @@ int i; class c0 { int &int_ref; public: - c0 () /* : int_ref(i) */ { // ERROR - reference needs initializer + c0 () /* : int_ref(i) */ { // { dg-error "" } reference needs initializer } }; @@ -22,7 +23,7 @@ public: c1 (); }; -c1::c1() /* : int_ref(i) */ { // ERROR - reference needs initializer +c1::c1() /* : int_ref(i) */ { // { dg-error "" } reference needs initializer } int main () { return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900205_03.C b/gcc/testsuite/g++.old-deja/g++.bugs/900205_03.C index 4c352c8..b22172d 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900205_03.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900205_03.C @@ -1,3 +1,5 @@ +// { dg-do assemble } +// { dg-options "-Wreturn-type -pedantic-errors" } // g++ 1.36.1 bug 900205_03 // Section 6.6.3 of the cfront 2.0 Reference Manual says "A return statement @@ -12,23 +14,22 @@ // keywords: return statements, return type, void return, implicit return -// Special g++ Options: -Wreturn-type -pedantic-errors struct struct00 { }; int global_function_0 () { -} // ERROR - +} // { dg-error "" } struct00 global_function_1 () { -} // ERROR - +} // { dg-error "" } struct struct0 { int struct0_member_function_0 () { - } // ERROR - + } // { dg-error "" } struct0 struct0_member_function_1 () { - } // ERROR - + } // { dg-error "" } }; struct struct1 { @@ -40,9 +41,9 @@ struct struct1 { }; int struct1_member_function_0 () { -} // ERROR - +} // { dg-error "" } struct1 struct1::struct1_member_function_1 () { -} // ERROR - +} // { dg-error "" } int main () { return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900205_04.C b/gcc/testsuite/g++.old-deja/g++.bugs/900205_04.C index 9769518..e5f59ab 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900205_04.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900205_04.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // g++ 1.36.1 bug 900205_04 // g++ allows a class for which an implicit default X::X() constructor must @@ -18,7 +19,7 @@ struct0::struct0 (int, void *) { } -struct struct0_derived_struct_0 : public struct0 { // ERROR - +struct struct0_derived_struct_0 : public struct0 { // { dg-error "" } }; // struct0_derived_struct_0 object; // would give g++ error if compiled diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900207_03.C b/gcc/testsuite/g++.old-deja/g++.bugs/900207_03.C index 187c070..8dd5c9f 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900207_03.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900207_03.C @@ -1,3 +1,4 @@ +// { dg-do run } // g++ 1.36.1 bug 900207_03 // g++ fails to allow objects of class or struct types to be initialized @@ -21,11 +22,11 @@ struct struct0 { }; struct0 struct0_gbl_object0; -struct0 struct0_gbl_object1 (struct0_gbl_object0); // gets bogus error +struct0 struct0_gbl_object1 (struct0_gbl_object0); // { dg-bogus "" } void struct0_test () { - struct0 struct0_lcl_object1 (struct0_gbl_object0); // gets bogus error + struct0 struct0_lcl_object1 (struct0_gbl_object0); // { dg-bogus "" } } // Check construction for a type with virtual function members. @@ -39,11 +40,11 @@ struct struct1 { void struct1::function_member () { } struct1 struct1_gbl_object0; -struct1 struct1_gbl_object1 (struct1_gbl_object0); // gets bogus error +struct1 struct1_gbl_object1 (struct1_gbl_object0); // { dg-bogus "" } void struct1_test () { - struct1 struct1_lcl_object1 (struct1_gbl_object0); // gets bogus error + struct1 struct1_lcl_object1 (struct1_gbl_object0); // { dg-bogus "" } } int main () { return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900208_02.C b/gcc/testsuite/g++.old-deja/g++.bugs/900208_02.C index 7e99abd..8e4fdbf 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900208_02.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900208_02.C @@ -1,3 +1,4 @@ +// { dg-do run } // g++ 1.36.1 bug 900208_02 // g++ does not allow a static member of a class/struct/union to be @@ -9,9 +10,9 @@ class class0 { public: - static int class0_data_member_0[]; // gets bogus error + static int class0_data_member_0[]; // { dg-bogus "" } }; -int class0::class0_data_member_0[3] = { 1, 2, 3 }; // gets bogus error +int class0::class0_data_member_0[3] = { 1, 2, 3 }; // { dg-bogus "" } int main () { return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900208_03.C b/gcc/testsuite/g++.old-deja/g++.bugs/900208_03.C index 667a174..7b7c247 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900208_03.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900208_03.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // g++ 1.36.1 bug 900208_03 // The Cfront 2.0 reference manual (5.3.3) says "This type must be an @@ -12,7 +13,7 @@ typedef void (func_type) (); void global_function_0 () { - new func_type; // ERROR - missed by both cfront 2.0 and g++ 1.36.1 + new func_type; // { dg-error "" } missed by both cfront 2.0 and g++ 1.36.1 } int main () { return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900208_04.C b/gcc/testsuite/g++.old-deja/g++.bugs/900208_04.C index bcf0397..d01268d 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900208_04.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900208_04.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // g++ 1.36.1 bug 900208_04 // The Cfront 2.0 reference manual (5.3.3) says "This type must be an @@ -14,7 +15,7 @@ typedef void (func_type) (); void global_function_1 (func_type *p) { - delete p; // ERROR - caught by Cfront 2.0 but not by g++ 1.36.1 + delete p; // { dg-error "" } caught by Cfront 2.0 but not by g++ 1.36.1 } int main () { return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900209_01.C b/gcc/testsuite/g++.old-deja/g++.bugs/900209_01.C index 59871ab..6d91010 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900209_01.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900209_01.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // g++ 1.36.1 bug 900209_01 // g++ implicitly casts values whose types are "void*" to other pointer @@ -14,7 +15,7 @@ char * char_pointer_object; void global_function_0 () { - char_pointer_object = void_pointer_object; // ERROR - + char_pointer_object = void_pointer_object; // { dg-error "" } } int main () { return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900210_01.C b/gcc/testsuite/g++.old-deja/g++.bugs/900210_01.C index 0a98388..3150911 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900210_01.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900210_01.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // g++ 1.36.1 bug 900210_01 // g++ allows pointer type values to be assigned to variables of integal @@ -35,78 +36,78 @@ void (*fp) (void); void global_function () { - i = vp; /* ERROR - */ - i = cp; /* ERROR - */ - i = ip; /* ERROR - */ - i = ep; /* ERROR - */ - i = sp; /* ERROR - */ - i = fp; /* ERROR - */ - l = vp; /* ERROR - */ - l = cp; /* ERROR - */ - l = ip; /* ERROR - */ - l = ep; /* ERROR - */ - l = sp; /* ERROR - */ - l = fp; /* ERROR - */ - s = vp; /* ERROR - */ - s = cp; /* ERROR - */ - s = ip; /* ERROR - */ - s = ep; /* ERROR - */ - s = sp; /* ERROR - */ - s = fp; /* ERROR - */ - c = vp; /* ERROR - */ - c = cp; /* ERROR - */ - c = ip; /* ERROR - */ - c = ep; /* ERROR - */ - c = sp; /* ERROR - */ - c = fp; /* ERROR - */ - si = vp; /* ERROR - */ - si = cp; /* ERROR - */ - si = ip; /* ERROR - */ - si = ep; /* ERROR - */ - si = sp; /* ERROR - */ - si = fp; /* ERROR - */ - sl = vp; /* ERROR - */ - sl = cp; /* ERROR - */ - sl = ip; /* ERROR - */ - sl = ep; /* ERROR - */ - sl = sp; /* ERROR - */ - sl = fp; /* ERROR - */ - ss = vp; /* ERROR - */ - ss = cp; /* ERROR - */ - ss = ip; /* ERROR - */ - ss = ep; /* ERROR - */ - ss = sp; /* ERROR - */ - ss = fp; /* ERROR - */ - sc = vp; /* ERROR - */ - sc = cp; /* ERROR - */ - sc = ip; /* ERROR - */ - sc = ep; /* ERROR - */ - sc = sp; /* ERROR - */ - sc = fp; /* ERROR - */ - ui = vp; /* ERROR - */ - ui = cp; /* ERROR - */ - ui = ip; /* ERROR - */ - ui = ep; /* ERROR - */ - ui = sp; /* ERROR - */ - ui = fp; /* ERROR - */ - ul = vp; /* ERROR - */ - ul = cp; /* ERROR - */ - ul = ip; /* ERROR - */ - ul = ep; /* ERROR - */ - ul = sp; /* ERROR - */ - ul = fp; /* ERROR - */ - us = vp; /* ERROR - */ - us = cp; /* ERROR - */ - us = ip; /* ERROR - */ - us = ep; /* ERROR - */ - us = sp; /* ERROR - */ - us = fp; /* ERROR - */ - uc = vp; /* ERROR - */ - uc = cp; /* ERROR - */ - uc = ip; /* ERROR - */ - uc = ep; /* ERROR - */ - uc = sp; /* ERROR - */ - uc = fp; /* ERROR - */ + i = vp; /* { dg-error "" } */ + i = cp; /* { dg-error "" } */ + i = ip; /* { dg-error "" } */ + i = ep; /* { dg-error "" } */ + i = sp; /* { dg-error "" } */ + i = fp; /* { dg-error "" } */ + l = vp; /* { dg-error "" } */ + l = cp; /* { dg-error "" } */ + l = ip; /* { dg-error "" } */ + l = ep; /* { dg-error "" } */ + l = sp; /* { dg-error "" } */ + l = fp; /* { dg-error "" } */ + s = vp; /* { dg-error "" } */ + s = cp; /* { dg-error "" } */ + s = ip; /* { dg-error "" } */ + s = ep; /* { dg-error "" } */ + s = sp; /* { dg-error "" } */ + s = fp; /* { dg-error "" } */ + c = vp; /* { dg-error "" } */ + c = cp; /* { dg-error "" } */ + c = ip; /* { dg-error "" } */ + c = ep; /* { dg-error "" } */ + c = sp; /* { dg-error "" } */ + c = fp; /* { dg-error "" } */ + si = vp; /* { dg-error "" } */ + si = cp; /* { dg-error "" } */ + si = ip; /* { dg-error "" } */ + si = ep; /* { dg-error "" } */ + si = sp; /* { dg-error "" } */ + si = fp; /* { dg-error "" } */ + sl = vp; /* { dg-error "" } */ + sl = cp; /* { dg-error "" } */ + sl = ip; /* { dg-error "" } */ + sl = ep; /* { dg-error "" } */ + sl = sp; /* { dg-error "" } */ + sl = fp; /* { dg-error "" } */ + ss = vp; /* { dg-error "" } */ + ss = cp; /* { dg-error "" } */ + ss = ip; /* { dg-error "" } */ + ss = ep; /* { dg-error "" } */ + ss = sp; /* { dg-error "" } */ + ss = fp; /* { dg-error "" } */ + sc = vp; /* { dg-error "" } */ + sc = cp; /* { dg-error "" } */ + sc = ip; /* { dg-error "" } */ + sc = ep; /* { dg-error "" } */ + sc = sp; /* { dg-error "" } */ + sc = fp; /* { dg-error "" } */ + ui = vp; /* { dg-error "" } */ + ui = cp; /* { dg-error "" } */ + ui = ip; /* { dg-error "" } */ + ui = ep; /* { dg-error "" } */ + ui = sp; /* { dg-error "" } */ + ui = fp; /* { dg-error "" } */ + ul = vp; /* { dg-error "" } */ + ul = cp; /* { dg-error "" } */ + ul = ip; /* { dg-error "" } */ + ul = ep; /* { dg-error "" } */ + ul = sp; /* { dg-error "" } */ + ul = fp; /* { dg-error "" } */ + us = vp; /* { dg-error "" } */ + us = cp; /* { dg-error "" } */ + us = ip; /* { dg-error "" } */ + us = ep; /* { dg-error "" } */ + us = sp; /* { dg-error "" } */ + us = fp; /* { dg-error "" } */ + uc = vp; /* { dg-error "" } */ + uc = cp; /* { dg-error "" } */ + uc = ip; /* { dg-error "" } */ + uc = ep; /* { dg-error "" } */ + uc = sp; /* { dg-error "" } */ + uc = fp; /* { dg-error "" } */ } int main () { return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900210_02.C b/gcc/testsuite/g++.old-deja/g++.bugs/900210_02.C index f900a86..11fc184 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900210_02.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900210_02.C @@ -1,3 +1,5 @@ +// { dg-do assemble } +// { dg-options "" } // g++ 1.36.1 bug 900210_02 // g++ allows integral type values to be assigned to variables of pointer @@ -35,78 +37,78 @@ void (*fp) (void); void global_function () { - vp = i; /* ERROR - */ - vp = l; /* ERROR - */ - vp = s; /* ERROR - */ - vp = c; /* ERROR - */ - vp = si; /* ERROR - */ - vp = sl; /* ERROR - */ - vp = ss; /* ERROR - */ - vp = sc; /* ERROR - */ - vp = ui; /* ERROR - */ - vp = ul; /* ERROR - */ - vp = us; /* ERROR - */ - vp = uc; /* ERROR - */ - cp = i; /* ERROR - */ - cp = l; /* ERROR - */ - cp = s; /* ERROR - */ - cp = c; /* ERROR - */ - cp = si; /* ERROR - */ - cp = sl; /* ERROR - */ - cp = ss; /* ERROR - */ - cp = sc; /* ERROR - */ - cp = ui; /* ERROR - */ - cp = ul; /* ERROR - */ - cp = us; /* ERROR - */ - cp = uc; /* ERROR - */ - ip = i; /* ERROR - */ - ip = l; /* ERROR - */ - ip = s; /* ERROR - */ - ip = c; /* ERROR - */ - ip = si; /* ERROR - */ - ip = sl; /* ERROR - */ - ip = ss; /* ERROR - */ - ip = sc; /* ERROR - */ - ip = ui; /* ERROR - */ - ip = ul; /* ERROR - */ - ip = us; /* ERROR - */ - ip = uc; /* ERROR - */ - ep = i; /* ERROR - */ - ep = l; /* ERROR - */ - ep = s; /* ERROR - */ - ep = c; /* ERROR - */ - ep = si; /* ERROR - */ - ep = sl; /* ERROR - */ - ep = ss; /* ERROR - */ - ep = sc; /* ERROR - */ - ep = ui; /* ERROR - */ - ep = ul; /* ERROR - */ - ep = us; /* ERROR - */ - ep = uc; /* ERROR - */ - sp = i; /* ERROR - */ - sp = l; /* ERROR - */ - sp = s; /* ERROR - */ - sp = c; /* ERROR - */ - sp = si; /* ERROR - */ - sp = sl; /* ERROR - */ - sp = ss; /* ERROR - */ - sp = sc; /* ERROR - */ - sp = ui; /* ERROR - */ - sp = ul; /* ERROR - */ - sp = us; /* ERROR - */ - sp = uc; /* ERROR - */ - fp = i; /* ERROR - */ - fp = l; /* ERROR - */ - fp = s; /* ERROR - */ - fp = c; /* ERROR - */ - fp = si; /* ERROR - */ - fp = sl; /* ERROR - */ - fp = ss; /* ERROR - */ - fp = sc; /* ERROR - */ - fp = ui; /* ERROR - */ - fp = ul; /* ERROR - */ - fp = us; /* ERROR - */ - fp = uc; /* ERROR - */ + vp = i; /* { dg-error "" } */ + vp = l; /* { dg-error "" } */ + vp = s; /* { dg-error "" } */ + vp = c; /* { dg-error "" } */ + vp = si; /* { dg-error "" } */ + vp = sl; /* { dg-error "" } */ + vp = ss; /* { dg-error "" } */ + vp = sc; /* { dg-error "" } */ + vp = ui; /* { dg-error "" } */ + vp = ul; /* { dg-error "" } */ + vp = us; /* { dg-error "" } */ + vp = uc; /* { dg-error "" } */ + cp = i; /* { dg-error "" } */ + cp = l; /* { dg-error "" } */ + cp = s; /* { dg-error "" } */ + cp = c; /* { dg-error "" } */ + cp = si; /* { dg-error "" } */ + cp = sl; /* { dg-error "" } */ + cp = ss; /* { dg-error "" } */ + cp = sc; /* { dg-error "" } */ + cp = ui; /* { dg-error "" } */ + cp = ul; /* { dg-error "" } */ + cp = us; /* { dg-error "" } */ + cp = uc; /* { dg-error "" } */ + ip = i; /* { dg-error "" } */ + ip = l; /* { dg-error "" } */ + ip = s; /* { dg-error "" } */ + ip = c; /* { dg-error "" } */ + ip = si; /* { dg-error "" } */ + ip = sl; /* { dg-error "" } */ + ip = ss; /* { dg-error "" } */ + ip = sc; /* { dg-error "" } */ + ip = ui; /* { dg-error "" } */ + ip = ul; /* { dg-error "" } */ + ip = us; /* { dg-error "" } */ + ip = uc; /* { dg-error "" } */ + ep = i; /* { dg-error "" } */ + ep = l; /* { dg-error "" } */ + ep = s; /* { dg-error "" } */ + ep = c; /* { dg-error "" } */ + ep = si; /* { dg-error "" } */ + ep = sl; /* { dg-error "" } */ + ep = ss; /* { dg-error "" } */ + ep = sc; /* { dg-error "" } */ + ep = ui; /* { dg-error "" } */ + ep = ul; /* { dg-error "" } */ + ep = us; /* { dg-error "" } */ + ep = uc; /* { dg-error "" } */ + sp = i; /* { dg-error "" } */ + sp = l; /* { dg-error "" } */ + sp = s; /* { dg-error "" } */ + sp = c; /* { dg-error "" } */ + sp = si; /* { dg-error "" } */ + sp = sl; /* { dg-error "" } */ + sp = ss; /* { dg-error "" } */ + sp = sc; /* { dg-error "" } */ + sp = ui; /* { dg-error "" } */ + sp = ul; /* { dg-error "" } */ + sp = us; /* { dg-error "" } */ + sp = uc; /* { dg-error "" } */ + fp = i; /* { dg-error "" } */ + fp = l; /* { dg-error "" } */ + fp = s; /* { dg-error "" } */ + fp = c; /* { dg-error "" } */ + fp = si; /* { dg-error "" } */ + fp = sl; /* { dg-error "" } */ + fp = ss; /* { dg-error "" } */ + fp = sc; /* { dg-error "" } */ + fp = ui; /* { dg-error "" } */ + fp = ul; /* { dg-error "" } */ + fp = us; /* { dg-error "" } */ + fp = uc; /* { dg-error "" } */ } int main () { return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900210_03.C b/gcc/testsuite/g++.old-deja/g++.bugs/900210_03.C index 8711d86..effebf1 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900210_03.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900210_03.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // g++ 1.36.1 bug 900210_03 // g++ allows void* type values to be assigned to variables of other @@ -16,11 +17,11 @@ void (*fp) (void); void global_function () { - cp = vp; /* ERROR - */ - ip = vp; /* ERROR - */ - ep = vp; /* ERROR - */ - sp = vp; /* ERROR - */ - fp = vp; /* ERROR - */ + cp = vp; /* { dg-error "" } */ + ip = vp; /* { dg-error "" } */ + ep = vp; /* { dg-error "" } */ + sp = vp; /* { dg-error "" } */ + fp = vp; /* { dg-error "" } */ } int main () { return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900210_05.C b/gcc/testsuite/g++.old-deja/g++.bugs/900210_05.C index c053c2a..a14c554 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900210_05.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900210_05.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // g++ 1.36.1 bug 900210_05 // Section 18.3 of the 2.0 Reference Manual says "An implementation @@ -31,7 +32,7 @@ int int0_object; void function () { - enum0_object = int0_object; /* ERROR - */ + enum0_object = int0_object; /* { dg-error "" } */ } int main () { return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900210_06.C b/gcc/testsuite/g++.old-deja/g++.bugs/900210_06.C index d52f511..0475a82 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900210_06.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900210_06.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // g++ 1.36.1 bug 900210_06 // g++ allows values of pointer-to-const types to be assigned to variables @@ -18,8 +19,8 @@ char *cp; void function () { - cp = ccp; /* ERROR - */ - cp = vcp; /* ERROR - */ + cp = ccp; /* { dg-error "" } */ + cp = vcp; /* { dg-error "" } */ } int main () { return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900210_07.C b/gcc/testsuite/g++.old-deja/g++.bugs/900210_07.C index 1013058..3a2aae9 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900210_07.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900210_07.C @@ -1,3 +1,5 @@ +// { dg-do assemble } +// { dg-options "" } // g++ 1.36.1 bug 900210_07 // g++ allows values of pointer-to-signed types to be assigned to variables @@ -12,8 +14,8 @@ unsigned int *uip; void function () { - sip = uip; // ERROR - - uip = sip; // ERROR - + sip = uip; // { dg-error "" } + uip = sip; // { dg-error "" } } int main () { return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900210_08.C b/gcc/testsuite/g++.old-deja/g++.bugs/900210_08.C index 40704d4..163757b 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900210_08.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900210_08.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // g++ 1.36.1 bug 900210_08 // g++ allows pointer-to-const values to be implicitly converted to @@ -12,7 +13,7 @@ void *vp; void function () { - vp = ccp; /* ERROR - */ + vp = ccp; /* { dg-error "" } */ } int main () { return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900210_09.C b/gcc/testsuite/g++.old-deja/g++.bugs/900210_09.C index ce78540..aabe3d5 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900210_09.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900210_09.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // g++ 1.36.1 bug 900210_09 // g++ allows pointer to members (both data members and function members) @@ -23,8 +24,8 @@ void *vp; void global_function_0 () { - vp = class0_data_member_pointer; // ERROR - - vp = class0_function_member_pointer; // ERROR - + vp = class0_data_member_pointer; // { dg-error "" } + vp = class0_function_member_pointer; // { dg-error "" } } int main () { return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900210_10.C b/gcc/testsuite/g++.old-deja/g++.bugs/900210_10.C index 26c1721..b1b1067 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900210_10.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900210_10.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // g++ 1.36.1 bug 900210_10 // g++ allows operator[] to be declared as a static member function. @@ -8,7 +9,7 @@ // keywords: operator[], static function members struct struct0 { - static int operator[] (); /* ERROR - */ + static int operator[] (); /* { dg-error "" } */ }; int main () { return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900211_01.C b/gcc/testsuite/g++.old-deja/g++.bugs/900211_01.C index 75c99b6..3312d3f 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900211_01.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900211_01.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // g++ 1.36.1 bug 900211_01 // g++ issues only warnings for calls to previously undeclared functions, @@ -6,11 +7,10 @@ // Cfront 2.0 passes this test. // keywords: undeclared, functions -// Build don't link: void global_function_0 () { - global_function_1 (); /* ERROR - */ + global_function_1 (); /* { dg-error "" } */ } int main () { return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900211_02.C b/gcc/testsuite/g++.old-deja/g++.bugs/900211_02.C index d23a9df..b9f2def 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900211_02.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900211_02.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // g++ 1.36.1 bug 900211_02 // g++ allows you to explicitly specify the return type for a type conversion @@ -14,10 +15,10 @@ struct struct0 { int member_0; }; struct0 struct0_object_0; struct struct1 { - struct0 operator struct0 (); /* ERROR - */ + struct0 operator struct0 (); /* { dg-error "" } */ }; -struct0 struct1::operator struct0 () { // ERROR - +struct0 struct1::operator struct0 () { // { dg-error "" } return struct0_object_0; } diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900211_03.C b/gcc/testsuite/g++.old-deja/g++.bugs/900211_03.C index b805f78..b614400 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900211_03.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900211_03.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // g++ 1.36.1 bug 900211_03 // The following erroneous code causes g++ to segfault. @@ -8,7 +9,7 @@ void function () { - char* new_base = new char[x]; // ERROR - + char* new_base = new char[x]; // { dg-error "" } } int main () { return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900211_04.C b/gcc/testsuite/g++.old-deja/g++.bugs/900211_04.C index e2bd8fd..5043606 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900211_04.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900211_04.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // g++ 1.36.1 bug 900211_04 // g++ fails to flag as errors attempts to compare pointer values against @@ -16,12 +17,12 @@ char *p; void function () { - result = i == p; /* ERROR - caught by g++ */ - result = i != p; /* ERROR - caught by g++ */ - result = i > p; /* ERROR - missed */ - result = i < p; /* ERROR - missed */ - result = i >= p; /* ERROR - missed */ - result = i <= p; /* ERROR - missed */ + result = i == p; /* { dg-error "" } caught by g++ */ + result = i != p; /* { dg-error "" } caught by g++ */ + result = i > p; /* { dg-error "" } missed */ + result = i < p; /* { dg-error "" } missed */ + result = i >= p; /* { dg-error "" } missed */ + result = i <= p; /* { dg-error "" } missed */ } int main () { return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900212_01.C b/gcc/testsuite/g++.old-deja/g++.bugs/900212_01.C index 03c41fb..8c3349f 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900212_01.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900212_01.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // g++ 1.36.1 bug 900212_01 // g++ fails to flag as errors all attempts to add or subtract integer values @@ -20,19 +21,19 @@ int (struct0::*fp1) (); void global_function_0 () { - p0 = p1 + 3; // ERROR - - p0 = p1 - 3; // ERROR - - p1++; /* ERROR - caught by g++ */ - ++p1; /* ERROR - caught by g++ */ - p1--; /* ERROR - caught by g++ */ - --p1; /* ERROR - caught by g++ */ - - fp0 = fp1 + 3; // ERROR - - fp0 = fp1 - 3; // ERROR - - fp1++; /* ERROR - */ - ++fp1; /* ERROR - */ - fp1--; /* ERROR - */ - --fp1; /* ERROR - */ + p0 = p1 + 3; // { dg-error "" } + p0 = p1 - 3; // { dg-error "" } + p1++; /* { dg-error "" } caught by g++ */ + ++p1; /* { dg-error "" } caught by g++ */ + p1--; /* { dg-error "" } caught by g++ */ + --p1; /* { dg-error "" } caught by g++ */ + + fp0 = fp1 + 3; // { dg-error "" } + fp0 = fp1 - 3; // { dg-error "" } + fp1++; /* { dg-error "" } */ + ++fp1; /* { dg-error "" } */ + fp1--; /* { dg-error "" } */ + --fp1; /* { dg-error "" } */ } int main () { return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900212_02.C b/gcc/testsuite/g++.old-deja/g++.bugs/900212_02.C index d997b61..dbcf96c0 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900212_02.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900212_02.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // g++ 1.36.1 bug 900212_02 // g++ fails to flag as errors attempts to take the difference of two values @@ -20,8 +21,8 @@ int result; void global_function_0 () { - result = (p0 - p1); // ERROR - - result = (fp0 - fp1); // ERROR - + result = (p0 - p1); // { dg-error "" } + result = (fp0 - fp1); // { dg-error "" } } int main () { return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900212_03.C b/gcc/testsuite/g++.old-deja/g++.bugs/900212_03.C index 479e32c..d930e65 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900212_03.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900212_03.C @@ -1,3 +1,4 @@ +// { dg-do run } // g++ 1.36.1 bug 900212_03 // g++ segfaults on any attempt to use the ->* operator. diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900213_01.C b/gcc/testsuite/g++.old-deja/g++.bugs/900213_01.C index 309a419..e7feb94 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900213_01.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900213_01.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // g++ 1.36.1 bug 900213_01 // g++ incorrectly diagnoses the error when an attempt is made to reference @@ -11,7 +12,7 @@ // keywords: non-static members, member pointers, scope resolution struct struct0 { - int struct0_data_member_0; /* ERROR - gets error from below */ + int struct0_data_member_0; /* { dg-error "" } gets error from below */ int struct0_function_member_0 (); }; @@ -19,7 +20,7 @@ int i; void global_function_0 () { - i = struct0::struct0_data_member_0; /* ERROR - mishandled by g++ */ + i = struct0::struct0_data_member_0; /* { dg-error "" } mishandled by g++ */ //i = struct0::struct0_function_member_0 (); /* gets caught by g++ */ } diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900213_02.C b/gcc/testsuite/g++.old-deja/g++.bugs/900213_02.C index c4263f9..c6415e1 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900213_02.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900213_02.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // g++ 1.36.1 bug 900213_02 // The following erroneous code causes g++ to abort. @@ -15,7 +16,7 @@ int struct0::*dmp; void global_function_0 () { - i = *dmp; // ERROR - causes abort + i = *dmp; // { dg-error "" } causes abort } int main () { return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900213_03.C b/gcc/testsuite/g++.old-deja/g++.bugs/900213_03.C index 4e15896..3c150b8 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900213_03.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900213_03.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // g++ 1.36.1 bug 900213_03 // g++ fails to detect an error when the address of a "bound" function is @@ -6,7 +7,6 @@ // It does however correctly detect a similar errors for data-members. // keywords: bound function, operator&, member pointers -// Build don't link: struct struct0 { int data_member; @@ -21,7 +21,7 @@ struct0 *ptr; void global_function_0 () { - fmp = &ptr->function_member; // ERROR - + fmp = &ptr->function_member; // { dg-error "" } //dmp = &ptr->data_member; // caught by g++, missed by cfront } diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900214_01.C b/gcc/testsuite/g++.old-deja/g++.bugs/900214_01.C index 09fd184..88cafbf 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900214_01.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900214_01.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // g++ 1.36.1 bug 900214_01 // g++ allows function members of incomplete types to be declared to be @@ -7,13 +8,13 @@ // keywords: friends, incomplete types, function members -struct A; // ERROR - forward declaration +struct A; // { dg-error "" } forward declaration struct B { - friend void A::foo(); // ERROR - type A is incomplete + friend void A::foo(); // { dg-error "" } type A is incomplete }; -void A::foo(); /* ERROR - also illegal */ +void A::foo(); /* { dg-error "" } also illegal */ struct A { void foo() {} diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900215_01.C b/gcc/testsuite/g++.old-deja/g++.bugs/900215_01.C index 70df426..7681057 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900215_01.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900215_01.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // g++ 1.36.1 bug 900215_01 // g++ allows the definition of a type conversion operator `operator void' @@ -21,7 +22,7 @@ struct struct0 { - operator void (); // WARNING - operator void + operator void (); // { dg-warning "" } operator void }; int exit_status = 1; diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900215_02.C b/gcc/testsuite/g++.old-deja/g++.bugs/900215_02.C index 269849e..6802299 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900215_02.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900215_02.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // g++ 1.36.1 bug 900215_02 // g++ allows global objects (which happen to be pointers to members of some @@ -40,8 +41,8 @@ void struct0::function_member () i = (this->*fmp) (); // perfectly legal - for both cfront and g++ i = this->*dmp; // perfectly legal - for both cfront and g++ - i = (*fmp) (); // ERROR - - i = *dmp; // ERROR - + i = (*fmp) (); // { dg-error "" } + i = *dmp; // { dg-error "" } } int main () { return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900220_01.C b/gcc/testsuite/g++.old-deja/g++.bugs/900220_01.C index df7e641..bda259d 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900220_01.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900220_01.C @@ -1,3 +1,4 @@ +// { dg-do run } // g++ 1.36.1 bug 900220_01 // Ref: 12.8 @@ -23,14 +24,14 @@ typedef struct0& (struct0::*member_func_t) (const struct0&); member_func_t member_func; void global_function_0 (member_func_t member_f) -{ // gets bogus error - ref from below +{ // { dg-bogus "" } ref from below } void global_function_1 () { - member_func = &struct0::operator=; // gets bogus error + member_func = &struct0::operator=; // { dg-bogus "" } - global_function_0 (&struct0::operator=); // gets bogus error + global_function_0 (&struct0::operator=); // { dg-bogus "" } } int main () { return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900220_02.C b/gcc/testsuite/g++.old-deja/g++.bugs/900220_02.C index cf039f6..48cb821 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900220_02.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900220_02.C @@ -1,3 +1,4 @@ +// { dg-do run } // g++ 1.36.1 bug 900220_02 // g++ treats plain `char' and `unsigned char' as different types, however @@ -10,7 +11,7 @@ void overloaded (char) { } -void overloaded (signed char) { // gets bogus error +void overloaded (signed char) { // { dg-bogus "" } } void overloaded (unsigned char) { diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900220_03.C b/gcc/testsuite/g++.old-deja/g++.bugs/900220_03.C index 532fc84..7e4aab6 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900220_03.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900220_03.C @@ -1,3 +1,4 @@ +// { dg-do run } // g++ 1.36.1 bug 900220_03 // g++ does not properly disambiguate calls to overloaded functions @@ -42,7 +43,7 @@ int test () //volatile char& vcr = vc; overloaded (c); // OK - overloaded (cc); // gets bogus error + overloaded (cc); // { dg-bogus "" } //overloaded (vc); // OK return (c_call_count != 1 || cc_call_count != 1 /* || vc_call_count != 1 */); diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900221_01.C b/gcc/testsuite/g++.old-deja/g++.bugs/900221_01.C index 92c56fc..7a31fbb 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900221_01.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900221_01.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // g++ 1.36.1 bug 900221_01 // Ref: 3.2 @@ -15,7 +16,7 @@ void function (int arg1) { - int arg1; // ERROR - redeclaration of arg1 + int arg1; // { dg-error "" } redeclaration of arg1 } int main () { return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900227_01.C b/gcc/testsuite/g++.old-deja/g++.bugs/900227_01.C index a878873..78450df 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900227_01.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900227_01.C @@ -1,3 +1,5 @@ +// { dg-do assemble } +// { dg-options "" } // g++ 1.37.1 bug 900227_01 // g++ allows pointer type values to be converted to integral types which are @@ -28,11 +30,10 @@ // Update 2/10/95: The compiler will now compute these expressions at // runtime. I think this is in the spirit of the GNU compilers (jason). -// Special g++ Options: int main (); -short s = (short) &main; // WARNING - small integer XFAIL h8*-*-* xstormy16-*-* -char c = (char) &main; // WARNING - small integer +short s = (short) &main; // { dg-warning "" "" { xfail h8*-*-* xstormy16-*-* } } small integer +char c = (char) &main; // { dg-warning "" } small integer int main () { return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900321_01.C b/gcc/testsuite/g++.old-deja/g++.bugs/900321_01.C index 489671f..6b52783 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900321_01.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900321_01.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // g++ 1.37.1 bug 900321_01 // cfront flags ERRORs on each of the lines indicated below. g++ does not @@ -19,11 +20,11 @@ void function_0 () { // we miss the first two because typeck.c (comp_array_types) deems // it okay if one of the sizes is null - ptr_to_array_of_ints = ptr_to_array_of_3_ints; // ERROR - - ptr_to_array_of_3_ints = ptr_to_array_of_ints; // ERROR - + ptr_to_array_of_ints = ptr_to_array_of_3_ints; // { dg-error "" } + ptr_to_array_of_3_ints = ptr_to_array_of_ints; // { dg-error "" } - ptr_to_array_of_3_ints = ptr_to_array_of_5_ints; // ERROR - - ptr_to_array_of_5_ints = ptr_to_array_of_3_ints; // ERROR - + ptr_to_array_of_3_ints = ptr_to_array_of_5_ints; // { dg-error "" } + ptr_to_array_of_5_ints = ptr_to_array_of_3_ints; // { dg-error "" } } int main () { return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900321_02.C b/gcc/testsuite/g++.old-deja/g++.bugs/900321_02.C index e54a02d..2d48764 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900321_02.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900321_02.C @@ -1,3 +1,4 @@ +// { dg-do run } // g++ 1.37.1 bug 900321_02 // The following program exits with a nonzero status because the constructor diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900321_04.C b/gcc/testsuite/g++.old-deja/g++.bugs/900321_04.C index 5f3d5a1..72c063e 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900321_04.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900321_04.C @@ -1,3 +1,4 @@ +// { dg-do run } // g++ 1.37.1 bug 900321_04 // The following code causes g++ to segfault. diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900321_05.C b/gcc/testsuite/g++.old-deja/g++.bugs/900321_05.C index 8f417e8..eb08d1a 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900321_05.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900321_05.C @@ -1,3 +1,4 @@ +// { dg-do run } // g++ 1.37.1 bug 900321_05 // The following code is legal as far as the ANSI C standard, GCC, and @@ -13,8 +14,8 @@ int i; void function () { - c = 3["abcdef"]; // gets bogus error - c = i[cp]; // gets bogus error + c = 3["abcdef"]; // { dg-bogus "" } + c = i[cp]; // { dg-bogus "" } } int main () { return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900322_01.C b/gcc/testsuite/g++.old-deja/g++.bugs/900322_01.C index 48ae600..bd3296a 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900322_01.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900322_01.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // g++ 1.37.1 bug 900322_01 // ** Old, obsolete commentary: @@ -32,23 +33,23 @@ // keywords: incomplete types, arrays, element types -extern int extern_two_d [] []; // ERROR - invalid declaration -int tenative_two_d [] []; // ERROR - caught by g++ -static int static_two_d [] []; // ERROR - caught by g++ +extern int extern_two_d [] []; // { dg-error "" } invalid declaration +int tenative_two_d [] []; // { dg-error "" } caught by g++ +static int static_two_d [] []; // { dg-error "" } caught by g++ -int (*pointer_to_two_d)[][]; // ERROR - invalid declaration +int (*pointer_to_two_d)[][]; // { dg-error "" } invalid declaration -void function_0 (int arg [] []) { // ERROR - invalid declaration +void function_0 (int arg [] []) { // { dg-error "" } invalid declaration } typedef int int_one_d_type []; -typedef int_one_d_type int_two_d_type[];// ERROR - invalid declaration +typedef int_one_d_type int_two_d_type[];// { dg-error "" } invalid declaration struct s; extern struct s extern_s_array [10]; // OK -struct s tenative_s_array [10]; // ERROR - object with incomplete type -static struct s static_s_array [10]; // ERROR - object with incomplete type +struct s tenative_s_array [10]; // { dg-error "" } object with incomplete type +static struct s static_s_array [10]; // { dg-error "" } object with incomplete type struct s (*pointer_to_s_array) []; // OK diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900324_02.C b/gcc/testsuite/g++.old-deja/g++.bugs/900324_02.C index 56ff7b7..bb612c6 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900324_02.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900324_02.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // g++ 1.37.1 bug 900324_02 // The following erroreous code causes g++ to segfault. @@ -12,7 +13,7 @@ void (*fp)(void); void function_1 () { - fp = 1 ? function_0 : fp; // ERROR - + fp = 1 ? function_0 : fp; // { dg-error "" } } int main () { return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900324_03.C b/gcc/testsuite/g++.old-deja/g++.bugs/900324_03.C index 69d9b58..8c9989d 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900324_03.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900324_03.C @@ -1,3 +1,4 @@ +// { dg-do run } // g++ 1.37.1 bug 900324_03 // g++ is unable to correctly parse declarations of non-global function-pointer @@ -11,10 +12,10 @@ void (*p0)(); // OK void function_0 () { - void (*p1)(); // gets bogus errors + void (*p1)(); // { dg-bogus "" } s } -void function_1 (void (*p2)()); // gets bogus errors +void function_1 (void (*p2)()); // { dg-bogus "" } s void (*function_2 ()) (); // OK diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900324_04.C b/gcc/testsuite/g++.old-deja/g++.bugs/900324_04.C index c874897..1d671d1 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900324_04.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900324_04.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // g++ 1.37.1 bug 900324_04 // g++ implements an extension which supports the copying of array objects. @@ -19,7 +20,7 @@ int_array ia2; void function_0 () { - ia1 = ia2; // ERROR - gnu extension + ia1 = ia2; // { dg-error "" } gnu extension } int main () { return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900324_05.C b/gcc/testsuite/g++.old-deja/g++.bugs/900324_05.C index 32f691d..62625b5 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900324_05.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900324_05.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // g++ 1.37.1 bug 900324_05 // The following erroneous code causes g++ to segfault. @@ -15,7 +16,7 @@ int_array &right = int_array_object; void function () { - left = right; // ERROR - causes segfault + left = right; // { dg-error "" } causes segfault } int main () { return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900324_06.C b/gcc/testsuite/g++.old-deja/g++.bugs/900324_06.C index 5a1938a..95eb000 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900324_06.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900324_06.C @@ -1,3 +1,4 @@ +// { dg-do run } // g++ 1.37.1 bug 900324_06 // g++ is unable to use context information (i.e. the required type of the @@ -20,9 +21,9 @@ void function_0 () void function_1 () { - p = i ? function_0 : 0; // gets bogus error - p = i ? 0 : function_0; // gets bogus error - p = i ? function_1 : function_0; // gets bogus error + p = i ? function_0 : 0; // { dg-bogus "" } + p = i ? 0 : function_0; // { dg-bogus "" } + p = i ? function_1 : function_0; // { dg-bogus "" } } int main () { return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900325_01.C b/gcc/testsuite/g++.old-deja/g++.bugs/900325_01.C index f11ec18..e95a20b 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900325_01.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900325_01.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // g++ 1.37.1 bug 900325_01 // g++ fails to generate errors for attempts to declare a formal argument to @@ -8,10 +9,10 @@ typedef void __void; typedef __void Void; -void function0 (void arg1) { // ERROR - missed +void function0 (void arg1) { // { dg-error "" } missed } -void function1 (Void arg1) { // ERROR - missed +void function1 (Void arg1) { // { dg-error "" } missed } int main () { return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900330_01.C b/gcc/testsuite/g++.old-deja/g++.bugs/900330_01.C index 651d370..6800499 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900330_01.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900330_01.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // g++ 1.37.1 bug 900330_01 // // As indicated by the example at the end of the section 3.5.3 of the ANSI @@ -46,7 +47,7 @@ int *pi; void function_1 () { - pi = a[0]; // ERROR - a[0] has type "const int *" + pi = a[0]; // { dg-error "" } a[0] has type "const int *" } int main () { return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900330_02.C b/gcc/testsuite/g++.old-deja/g++.bugs/900330_02.C index 85c40f0..98393ba 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900330_02.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900330_02.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // g++ 1.37.1 bug 900330_02 // The C++ Reference Manual says in section 13.1: @@ -18,12 +19,12 @@ struct B { }; struct D : public B { - int f(struct B); // ERROR - referred to below + int f(struct B); // { dg-error "" } referred to below }; void h(D* pd) { - pd->f(1); // ERROR - D::f(struct B) hides B::f(int) + pd->f(1); // { dg-error "" } D::f(struct B) hides B::f(int) } int main () { return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900331_02.C b/gcc/testsuite/g++.old-deja/g++.bugs/900331_02.C index 11884db..f4d69fd 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900331_02.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900331_02.C @@ -1,3 +1,4 @@ +// { dg-do run } // g++ 1.37.1 bug 900331_02 // g++ fails to treat conditional expressions which yield composite type @@ -20,8 +21,8 @@ int i; void function0 () { - (i ? object0 : object1).data_member = 99; // gets bogus error - (i ? object0 : object1) = object2; // gets bogus error + (i ? object0 : object1).data_member = 99; // { dg-bogus "" } + (i ? object0 : object1) = object2; // { dg-bogus "" } } int main () { return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900331_03.C b/gcc/testsuite/g++.old-deja/g++.bugs/900331_03.C index a73d685..f59f107 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900331_03.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900331_03.C @@ -1,3 +1,5 @@ +// { dg-do run } +// { dg-options "" } // g++ 1.37.1 bug 900331_03 // Special Options: -ansi diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900331_04.C b/gcc/testsuite/g++.old-deja/g++.bugs/900331_04.C index f8a14c6..ddc3918 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900331_04.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900331_04.C @@ -1,3 +1,4 @@ +// { dg-do run } // g++ 1.37.1 bug 900331_04 // g++ is unable to correctly parse declarations of formal parameters and @@ -13,20 +14,20 @@ int array[10]; int (*global_array_ptr)[10] = &array; int (&global_array_ref)[10] = array; -void function0 (int (*formal_array_ptr)[10]) { // gets bogus errors +void function0 (int (*formal_array_ptr)[10]) { // { dg-bogus "" } s } -void function1 (int (&formal_array_ref)[10]) { // gets bogus errors +void function1 (int (&formal_array_ref)[10]) { // { dg-bogus "" } s } void function2 () { - int (*local_array_ptr)[10] = &array; // gets bogus errors + int (*local_array_ptr)[10] = &array; // { dg-bogus "" } s } void function3 () { - int (&local_array_ref)[10] = array; // gets bogus error + int (&local_array_ref)[10] = array; // { dg-bogus "" } } int main () { return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900401_01.C b/gcc/testsuite/g++.old-deja/g++.bugs/900401_01.C index 18ecd61..cef7175 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900401_01.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900401_01.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // g++ 1.37.1 bug 900401_01 // The following erroneous code causes g++ to abort. @@ -9,7 +10,7 @@ typedef unsigned nibble_array[4]; struct whole { - nibble_array nibbles:16; // ERROR - + nibble_array nibbles:16; // { dg-error "" } }; int main () { return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900402_01.C b/gcc/testsuite/g++.old-deja/g++.bugs/900402_01.C index 946e6d1..4253386 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900402_01.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900402_01.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // g++ 1.37.1 bug 900402_01 // The following erroneous code causes g++ to abort. @@ -9,7 +10,7 @@ typedef void (func_type) (); struct s { - func_type f:32; // ERROR - bitified with function type + func_type f:32; // { dg-error "" } bitified with function type }; int main () { return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900402_02.C b/gcc/testsuite/g++.old-deja/g++.bugs/900402_02.C index 705cbf22..e1740b1 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900402_02.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900402_02.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // g++ 1.37.1 bug 900402_02 // g++ fails to correctly flag all attempts to construct an array type @@ -5,17 +6,17 @@ // keywords: arrays, array bound, zero length -typedef int array_type[0]; // ERROR - gets warning only +typedef int array_type[0]; // { dg-error "" } gets warning only -int array_object_1[0]; // ERROR - gets warning only +int array_object_1[0]; // { dg-error "" } gets warning only void function_0 (int formal_array[0]) -{ // ERROR - gets warning only +{ // { dg-error "" } gets warning only } void function_2 () { - int local_object_array_0[0]; // ERROR - gets warning only + int local_object_array_0[0]; // { dg-error "" } gets warning only } int main () { return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900403_01.C b/gcc/testsuite/g++.old-deja/g++.bugs/900403_01.C index 608d8f9..124654f 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900403_01.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900403_01.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // g++ 1.37.1 bug 900403_01 // g++ allows casts to be treated as lvalues (even when the -pedantic @@ -12,8 +13,8 @@ int i, j; void f () { - (int) i = j; // ERROR - - ((int) i) = j; // ERROR - + (int) i = j; // { dg-error "" } + ((int) i) = j; // { dg-error "" } } int main () { return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900403_04.C b/gcc/testsuite/g++.old-deja/g++.bugs/900403_04.C index c68e4c2..1435bfa 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900403_04.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900403_04.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // g++ 1.37.1 bug 900403_04 // The following erroneous code causes g++ to abort. @@ -5,7 +6,7 @@ // keywords: abort, bit-fields, zero length struct s { - unsigned int foo:0; // ERROR - This is the real line + unsigned int foo:0; // { dg-error "" } This is the real line unsigned int field; }; diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900404_01.C b/gcc/testsuite/g++.old-deja/g++.bugs/900404_01.C index f728865..60e8112 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900404_01.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900404_01.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // g++ 1.37.1 bug 900404_01 // g++ allows string initializers for known-length character arrays to be @@ -10,6 +11,6 @@ // keywords: arrays, initialization, array bounds -char cv[4] = "asdf"; // ERROR - missed +char cv[4] = "asdf"; // { dg-error "" } missed int main () { return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900404_02.C b/gcc/testsuite/g++.old-deja/g++.bugs/900404_02.C index b48eb8a..3f87b61 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900404_02.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900404_02.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // g++ 1.37.1 bug 900404_02 // g++ fails to treat multicharacter literals as type "int" as required by @@ -21,4 +22,4 @@ void function0 (char c) // function that is actually called exit_status++; } -int main () { function0 ('abcd'); return exit_status; } // WARNING - +int main () { function0 ('abcd'); return exit_status; } // { dg-warning "" } diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900404_03.C b/gcc/testsuite/g++.old-deja/g++.bugs/900404_03.C index 98a33d7..be258fc 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900404_03.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900404_03.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // g++ 1.37.1 bug 900404_03 // g++ fails to be able to properly flag errors for even simple cases of @@ -8,12 +9,12 @@ // keywords: overloading, ambiguity, resolution void function0 (int i, char c) -{ // ERROR - +{ // { dg-error "" } i = c; } void function0 (char c, int i) -{ // ERROR - +{ // { dg-error "" } i = c; } @@ -21,7 +22,7 @@ char c; void test () { - function0 (c,c); // ERROR - missed + function0 (c,c); // { dg-error "" } missed } int main () { return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900404_04.C b/gcc/testsuite/g++.old-deja/g++.bugs/900404_04.C index d3e2812..09f5b2a 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900404_04.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900404_04.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // g++ 1.37.1 bug 900404_04 // [dcl.dcl] explains that simple-declarations may omit the @@ -12,6 +13,6 @@ int i; -; // ERROR - +; // { dg-error "" } int main () { return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900404_07.C b/gcc/testsuite/g++.old-deja/g++.bugs/900404_07.C index c07a577..19791bf 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900404_07.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900404_07.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // g++ 1.37.1 bug 900404_07 // It is illegal to use a cast to attempt to convert an object type @@ -13,5 +14,5 @@ array_type *ap; void foo () { - int i = *((array_type) *ap); /* ERROR - missed */ + int i = *((array_type) *ap); /* { dg-error "" } missed */ } diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900405_01.C b/gcc/testsuite/g++.old-deja/g++.bugs/900405_01.C index 346db0c..25686f80 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900405_01.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900405_01.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // g++ 1.37.1 bug 900405_01 // The C++ Reference Manual says (in section 5.4) "Types may not be defined @@ -10,10 +11,10 @@ void f () { - (enum e { red, green } *) 0; // ERROR - type defined in cast - (struct s { int member; } *) 0; // ERROR - type defined in cast - (union u { int member; } * ) 0; // ERROR - type defined in cast - (class c { int member; } *) 0; // ERROR - type defined in cast + (enum e { red, green } *) 0; // { dg-error "" } type defined in cast + (struct s { int member; } *) 0; // { dg-error "" } type defined in cast + (union u { int member; } * ) 0; // { dg-error "" } type defined in cast + (class c { int member; } *) 0; // { dg-error "" } type defined in cast } int main () { return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900406_01.C b/gcc/testsuite/g++.old-deja/g++.bugs/900406_01.C index 93e7af3..f99f73d 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900406_01.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900406_01.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // g++ 1.37.1 bug 900406_01 // The following code causes g++ to segfault. @@ -8,12 +9,12 @@ void function0 () { - new int[]; // ERROR - causes segfault + new int[]; // { dg-error "" } causes segfault } void function1 () { - new int (*)[]; // ERROR - no size specified + new int (*)[]; // { dg-error "" } no size specified } int main () { return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900406_02.C b/gcc/testsuite/g++.old-deja/g++.bugs/900406_02.C index daf46a1..bcbffeb 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900406_02.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900406_02.C @@ -1,3 +1,4 @@ +// { dg-do run } // g++ bug 900406_02 // g++ fails to correctly parse some type specifications within casts. @@ -17,7 +18,7 @@ int (**ippp)[]; int function () { ipp = (int (*)[]) 0; // OK - ippp = (int (**)[]) 0; // gets bogus error (syntax) + ippp = (int (**)[]) 0; // { dg-bogus "" } (syntax) return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900407_01.C b/gcc/testsuite/g++.old-deja/g++.bugs/900407_01.C index 988642f..e5976d6 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900407_01.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900407_01.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // g++ 1.37.1 bug 900407_01 // g++ fails to flag errors for uses of anachronistic features such as the @@ -30,7 +31,7 @@ struct s1 : public s0 { s1 (); }; -s1::s1() : () { // ERROR - anachronism used +s1::s1() : () { // { dg-error "" } anachronism used } int main () { return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900428_01.C b/gcc/testsuite/g++.old-deja/g++.bugs/900428_01.C index ecbda0c..a806ef0 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900428_01.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900428_01.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // g++ 1.37.1 bug 900428_01 // g++ fails to issue error messages for cases where an incomplete type @@ -16,7 +17,6 @@ // dereference of pointer to volatile to be a read. // keywords: incomplete types, evaluation, volatile qualifier -// Build don't link: int *ip_fn (); int &ir_fn (); @@ -46,16 +46,16 @@ void int_test (int i, int *p, volatile int *vp, int &r, volatile int &vr) (void)(i ? r : j); // ok, no warning (void)((void)1, r); // ok, no warning - vr; // WARNING - reference not accessed - (void)vr; // WARNING - reference not accessed - (void)(i ? vj : vr); // WARNING - reference not accessed - (void)(i ? vr : vj); // WARNING - reference not accessed - (void)((void)1, vr); // WARNING - reference not accessed + vr; // { dg-warning "" } reference not accessed + (void)vr; // { dg-warning "" } reference not accessed + (void)(i ? vj : vr); // { dg-warning "" } reference not accessed + (void)(i ? vr : vj); // { dg-warning "" } reference not accessed + (void)((void)1, vr); // { dg-warning "" } reference not accessed *ip_fn (); // ok, no warning *vip_fn (); // ok, no warning ir_fn (); // ok, no warning - vir_fn (); // WARNING - reference not accessed + vir_fn (); // { dg-warning "" } reference not accessed } struct S; @@ -75,11 +75,11 @@ void incomplete_test (int i, S *p, volatile S *vp, S &r, volatile S &vr) (void)(i ? *p : j); // ok, no warning (void)((void)1, *p); // ok, no warning - *vp; // WARNING - incomplete not accessed - (void)*vp; // WARNING - incomplete not accessed - (void)(i ? vj : *vp); // WARNING - incomplete not accessed - (void)(i ? *vp : vj); // WARNING - incomplete not accessed - (void)((void)1, *vp); // WARNING - incomplete not accessed + *vp; // { dg-warning "" } incomplete not accessed + (void)*vp; // { dg-warning "" } incomplete not accessed + (void)(i ? vj : *vp); // { dg-warning "" } incomplete not accessed + (void)(i ? *vp : vj); // { dg-warning "" } incomplete not accessed + (void)((void)1, *vp); // { dg-warning "" } incomplete not accessed r; // ok, no warning (void)r; // ok, no warning @@ -87,16 +87,16 @@ void incomplete_test (int i, S *p, volatile S *vp, S &r, volatile S &vr) (void)(i ? r : j); // ok, no warning (void)((void)1, r); // ok, no warning - vr; // WARNING - reference not accessed - (void)vr; // WARNING - reference not accessed - (void)(i ? vj : vr); // WARNING - reference not accessed - (void)(i ? vr : vj); // WARNING - reference not accessed - (void)((void)1, vr); // WARNING - reference not accessed + vr; // { dg-warning "" } reference not accessed + (void)vr; // { dg-warning "" } reference not accessed + (void)(i ? vj : vr); // { dg-warning "" } reference not accessed + (void)(i ? vr : vj); // { dg-warning "" } reference not accessed + (void)((void)1, vr); // { dg-warning "" } reference not accessed *sp_fn (); // ok, no warning - *vsp_fn (); // WARNING - incomplete not accessed + *vsp_fn (); // { dg-warning "" } incomplete not accessed sr_fn (); // ok, no warning - vsr_fn (); // WARNING - reference not accessed + vsr_fn (); // { dg-warning "" } reference not accessed } struct T {int m;}; @@ -128,16 +128,16 @@ void complete_test (int i, T *p, volatile T *vp, T &r, volatile T &vr) (void)(i ? r : j); // ok, no warning (void)((void)1, r); // ok, no warning - vr; // WARNING - reference not accessed - (void)vr; // WARNING - reference not accessed - (void)(i ? vj : vr); // WARNING - reference not accessed - (void)(i ? vr : vj); // WARNING - reference not accessed - (void)((void)1, vr); // WARNING - reference not accessed + vr; // { dg-warning "" } reference not accessed + (void)vr; // { dg-warning "" } reference not accessed + (void)(i ? vj : vr); // { dg-warning "" } reference not accessed + (void)(i ? vr : vj); // { dg-warning "" } reference not accessed + (void)((void)1, vr); // { dg-warning "" } reference not accessed *tp_fn (); // ok, no warning *vtp_fn (); // ok, no warning tr_fn (); // ok, no warning - vtr_fn (); // ok, no warningWARNING - reference not accessed + vtr_fn (); // ok, no warning{ dg-warning "" } reference not accessed } void extern_test () @@ -153,12 +153,12 @@ void extern_test () extern volatile T &vetr; es; // ok, no warning - ves; // WARNING - incomplete not accessed + ves; // { dg-warning "" } incomplete not accessed et; // ok, no warning vet; // ok, no warning esr; // ok, no warning - vesr; // WARNING - incomplete not accessed + vesr; // { dg-warning "" } incomplete not accessed etr; // ok, no warning - vetr; // WARNING - reference not accessed + vetr; // { dg-warning "" } reference not accessed } diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900428_02.C b/gcc/testsuite/g++.old-deja/g++.bugs/900428_02.C index 9da709f..4846a81 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900428_02.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900428_02.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // g++ 1.37.1 bug 900428_02 // g++ fails to issue either errors or warnings (even with -pedantic) for @@ -8,20 +9,19 @@ // cfront 2.0 passes this test. // keywords: pointer arithmetic, increment, decrement -// Build don't link: void *vp; void (*fp) (); void test () { - vp++; /* ERROR - */ - ++vp; /* ERROR - */ - vp--; /* ERROR - */ - --vp; /* ERROR - */ + vp++; /* { dg-error "" } */ + ++vp; /* { dg-error "" } */ + vp--; /* { dg-error "" } */ + --vp; /* { dg-error "" } */ - fp++; /* ERROR - */ - ++fp; /* ERROR - */ - fp--; /* ERROR - */ - --fp; /* ERROR - */ + fp++; /* { dg-error "" } */ + ++fp; /* { dg-error "" } */ + fp--; /* { dg-error "" } */ + --fp; /* { dg-error "" } */ } diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900428_03.C b/gcc/testsuite/g++.old-deja/g++.bugs/900428_03.C index 74e5586..722de9b 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900428_03.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900428_03.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // g++ 1.37.1 bug 900428_03 // g++ fails to detect cases where a constructor for a derived class invokes @@ -17,7 +18,7 @@ public: }; struct_0::struct_0 (int i) { } -struct_0::struct_0 (int, int) { } // ERROR - xref from below +struct_0::struct_0 (int, int) { } // { dg-error "" } xref from below struct struct_1 : public struct_0 { @@ -25,7 +26,7 @@ struct struct_1 : public struct_0 { }; struct_1::struct_1 () : struct_0 (8,9) -{ // ERROR - +{ // { dg-error "" } } struct struct_2 { @@ -38,7 +39,7 @@ struct struct_2 { // closing curly brace). struct_2::struct_2 () : struct_2_data_member (8,9) -{ // ERROR - should be up one line +{ // { dg-error "" } should be up one line } int main () { return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900511_01.C b/gcc/testsuite/g++.old-deja/g++.bugs/900511_01.C index e4488d9..e5dff0e 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900511_01.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900511_01.C @@ -1,3 +1,4 @@ +// { dg-do run } // g++ 1.37.1 bug 900511_01 // g++ fails to properly apply user-defined type conversion operators @@ -36,7 +37,7 @@ double d; void test () { d = struct_2_object + struct_1_object; // OK - d = struct_1_object + struct_2_object; // gets bogus error + d = struct_1_object + struct_2_object; // { dg-bogus "" } } int main () { return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900511_02.C b/gcc/testsuite/g++.old-deja/g++.bugs/900511_02.C index cef71c0..f2f5650 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900511_02.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900511_02.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // g++ 1.37.1 bug 900511_02 // g++ does not properly shadow names of types with names of data members @@ -12,10 +13,10 @@ enum enum0 { enum0_value_0 }; struct struct0 { int enum0; - void member_function (enum0 e); // ERROR - invalid use of struct-local member + void member_function (enum0 e); // { dg-error "" } invalid use of struct-local member }; -void class0::member_function (enum0 e) { // ERROR - syntax error +void class0::member_function (enum0 e) { // { dg-error "" } syntax error } int main () { return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900511_03.C b/gcc/testsuite/g++.old-deja/g++.bugs/900511_03.C index 849bdf3..d01b6aa 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900511_03.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900511_03.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // g++ 1.37.1 bug 900511_03 // g++ does not properly shadow names of types with names of data members @@ -10,10 +11,10 @@ class class0; struct struct1 { int class0; - void member_function (class0 *); // ERROR - invalid use of struct-local member + void member_function (class0 *); // { dg-error "" } invalid use of struct-local member }; -void class1::member_function (class0 *p) { // ERROR - +void class1::member_function (class0 *p) { // { dg-error "" } } int main () { return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900514_03.C b/gcc/testsuite/g++.old-deja/g++.bugs/900514_03.C index 370a460..a5419fb 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900514_03.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900514_03.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // g++ 1.37.1 bug 900514_03 // g++ fails to flag ERRORs on the following erroneous code. @@ -18,14 +19,14 @@ struct t_0_st_0; struct t_0_st_1 { int member; - t_0_st_1 (t_0_st_0&);// ERROR - + t_0_st_1 (t_0_st_0&);// { dg-error "" } t_0_st_1 (); }; struct t_0_st_0 { int member; - operator t_0_st_1 ();// ERROR - + operator t_0_st_1 ();// { dg-error "" } }; t_0_st_0 t_0_st_0_obj0; @@ -36,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; // ERROR - caught + t_0_st_1_obj0 = t_0_st_0_obj0; // { dg-error "" } 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; // ERROR - + t_0_st_1 t_0_st_1_obj0 = t_0_st_0_obj0; // { dg-error "" } t_0_st_1 t_0_st_1_obj1 = t_0_st_1 (t_0_st_0_obj0); } @@ -51,15 +52,15 @@ struct t_1_st_0; struct t_1_st_1 { int member; - t_1_st_1 (t_1_st_0&); // ERROR - + t_1_st_1 (t_1_st_0&); // { dg-error "" } t_1_st_1 (); - void operator= (t_1_st_1&); // ERROR - + void operator= (t_1_st_1&); // { dg-error "" } }; struct t_1_st_0 { int member; - operator t_1_st_1 (); // ERROR - + operator t_1_st_1 (); // { dg-error "" } }; t_1_st_0 t_1_st_0_obj0; @@ -70,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; // ERROR - - t_1_st_1_obj1 = t_1_st_1 (t_1_st_0_obj0); // ERROR - + 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 "" } } void t_1_local_init () { - t_1_st_1 t_1_st_1_obj0 = t_1_st_0_obj0; // ERROR - + t_1_st_1 t_1_st_1_obj0 = t_1_st_0_obj0; // { dg-error "" } t_1_st_1 t_1_st_1_obj1 = t_1_st_1 (t_1_st_0_obj0); } @@ -85,14 +86,14 @@ struct t_2_st_0; struct t_2_st_1 { int member; - t_2_st_1 (t_2_st_0); // ERROR - candidate + t_2_st_1 (t_2_st_0); // { dg-error "" } candidate t_2_st_1 (); }; struct t_2_st_0 { int member; - operator t_2_st_1 (); // ERROR - candidate + operator t_2_st_1 (); // { dg-error "" } candidate }; t_2_st_0 t_2_st_0_obj0; @@ -103,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; // ERROR - caught + t_2_st_1_obj0 = t_2_st_0_obj0; // { dg-error "" } 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; // ERROR - + t_2_st_1 t_2_st_1_obj0 = t_2_st_0_obj0; // { dg-error "" } t_2_st_1 t_2_st_1_obj1 = t_2_st_1 (t_2_st_0_obj0); } diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900519_01.C b/gcc/testsuite/g++.old-deja/g++.bugs/900519_01.C index 9641d1d..4d26511 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900519_01.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900519_01.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // g++ 1.37.1 bug 900519_01 // g++ fails to flag errors for some attempts to declare or define non-member @@ -7,9 +8,9 @@ // keywords: user-defined type conversion operator, non-member -extern operator int (); // ERROR - +extern operator int (); // { dg-error "" } -extern operator int () { // ERROR - +extern operator int () { // { dg-error "" } return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900519_02.C b/gcc/testsuite/g++.old-deja/g++.bugs/900519_02.C index 90dc16a..831c4a7 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900519_02.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900519_02.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // g++ 1.37.1 bug 900519_02 // The C++ Reference Manual says (in section 8.4.3) "A reference to a plain @@ -9,24 +10,24 @@ extern const int cint_obj = 9; volatile int vint_obj = 9; -void take_int_ref (int& arg) { } // ERROR - referenced by errors below +void take_int_ref (int& arg) { } // { dg-error "" } referenced by errors below -int& global_int_ref0 = cint_obj; // ERROR - -int& global_int_ref1 = vint_obj; // ERROR - +int& global_int_ref0 = cint_obj; // { dg-error "" } +int& global_int_ref1 = vint_obj; // { dg-error "" } extern const int& cint_ref; extern volatile int& vint_ref; void test_0 () { - int& local_int_ref0 = cint_obj; // ERROR - - int& local_int_ref1 = vint_obj; // ERROR - + int& local_int_ref0 = cint_obj; // { dg-error "" } + int& local_int_ref1 = vint_obj; // { dg-error "" } - take_int_ref (cint_obj); // ERROR - caught - take_int_ref (vint_obj); // ERROR - + take_int_ref (cint_obj); // { dg-error "" } caught + take_int_ref (vint_obj); // { dg-error "" } - take_int_ref (cint_ref); // ERROR - - take_int_ref (vint_ref); // ERROR - + take_int_ref (cint_ref); // { dg-error "" } + take_int_ref (vint_ref); // { dg-error "" } } int main () { return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900519_03.C b/gcc/testsuite/g++.old-deja/g++.bugs/900519_03.C index 114d909..b840ee7 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900519_03.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900519_03.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // g++ 1.37.1 bug 900519_03 // The C++ Reference Manual says (in section 8.4.3) "A reference to a @@ -13,35 +14,35 @@ extern const int cint_obj; extern volatile int vint_obj; -void take_cint_ref (const int& arg) { } // ERROR - -void take_vint_ref (volatile int& arg) { } // ERROR - +void take_cint_ref (const int& arg) { } // { dg-error "" } +void take_vint_ref (volatile int& arg) { } // { dg-error "" } -const int& global_cint_ref2 = vint_obj; // ERROR - +const int& global_cint_ref2 = vint_obj; // { dg-error "" } -volatile int& global_vint_ref1 = cint_obj; // ERROR - +volatile int& global_vint_ref1 = cint_obj; // { dg-error "" } extern const int& extern_cint_ref; extern volatile int& extern_vint_ref; void test_0 () { - const int& local_cint_ref2 = vint_obj; // ERROR - + const int& local_cint_ref2 = vint_obj; // { dg-error "" } - volatile int& local_vint_ref1 = cint_obj; // ERROR - + volatile int& local_vint_ref1 = cint_obj; // { dg-error "" } } void test_1 () { - take_cint_ref (vint_obj); // ERROR - + take_cint_ref (vint_obj); // { dg-error "" } - take_vint_ref (cint_obj); // ERROR - caught + take_vint_ref (cint_obj); // { dg-error "" } caught } void test_2 () { - take_cint_ref (extern_vint_ref); // ERROR - + take_cint_ref (extern_vint_ref); // { dg-error "" } - take_vint_ref (extern_cint_ref); // ERROR - + take_vint_ref (extern_cint_ref); // { dg-error "" } } int main () { return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900519_04.C b/gcc/testsuite/g++.old-deja/g++.bugs/900519_04.C index 53867a1..5074c5a 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900519_04.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900519_04.C @@ -1,3 +1,4 @@ +// { dg-do run } // g++ 1.37.1 bug 900519_04 // The following legal code causes g++ to segfault. diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900519_05.C b/gcc/testsuite/g++.old-deja/g++.bugs/900519_05.C index 9a2a4cf..f7f7ef3 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900519_05.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900519_05.C @@ -1,3 +1,4 @@ +// { dg-do run } // g++ 1.37.1 bug 900519_05 // g++ fails to allow the use of function-reference types. diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900519_06.C b/gcc/testsuite/g++.old-deja/g++.bugs/900519_06.C index 5704c3f..601e4aa 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900519_06.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900519_06.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // g++ 1.37.1 bug 900519_06 // g++ allows the type given in an invocation of operator new to be a @@ -11,12 +12,12 @@ typedef int& int_ref; void test (int n) { - new int&; // ERROR - missed - new int_ref; // ERROR - missed - new int&[n]; // ERROR - missed - new int_ref[n]; // ERROR - missed - new int&[3]; // ERROR - missed - new int_ref[3]; // ERROR - missed + new int&; // { dg-error "" } missed + new int_ref; // { dg-error "" } missed + new int&[n]; // { dg-error "" } missed + new int_ref[n]; // { dg-error "" } missed + new int&[3]; // { dg-error "" } missed + new int_ref[3]; // { dg-error "" } missed } int main () { return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900519_07.C b/gcc/testsuite/g++.old-deja/g++.bugs/900519_07.C index f5ea6bc..650147e 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900519_07.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900519_07.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // g++ 1.37.1 bug 900519_07 // It is illegal to specify or to use array-of-reference types, yet g++ @@ -10,7 +11,7 @@ int i; int j; typedef int& int_ref; -typedef int_ref int_ref_array_type[2]; // ERROR - missed +typedef int_ref int_ref_array_type[2]; // { dg-error "" } missed -int& int_ref_array_obj0[2] = { i, j }; // ERROR - missed -int_ref int_ref_array_obj1[2] = { i, j }; // ERROR - missed +int& int_ref_array_obj0[2] = { i, j }; // { dg-error "" } missed +int_ref int_ref_array_obj1[2] = { i, j }; // { dg-error "" } missed diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900519_09.C b/gcc/testsuite/g++.old-deja/g++.bugs/900519_09.C index 3bff70e..71c4263 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900519_09.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900519_09.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // g++ 1.37.1 bug 900519_09 // g++ allows the allocation of const objects via operator new even when @@ -20,10 +21,10 @@ typedef const struct struct_0 const_struct_0; void test () { - new const int; // ERROR - - new const_int; // ERROR - - new const struct_0; // ERROR - - new const_struct_0; // ERROR - + new const int; // { dg-error "" } + new const_int; // { dg-error "" } + new const struct_0; // { dg-error "" } + new const_struct_0; // { dg-error "" } } int main () { return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900519_12.C b/gcc/testsuite/g++.old-deja/g++.bugs/900519_12.C index 112b989..e08aba1 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900519_12.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900519_12.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // g++ 1.37.1 bug 900519_12 // The following erroneous code causes g++ to segfault. @@ -6,6 +7,6 @@ // keywords: segfault, typedef, pointer type, function type -typedef eek void (*)(); // ERROR - +typedef eek void (*)(); // { dg-error "" } int main () { return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900519_13.C b/gcc/testsuite/g++.old-deja/g++.bugs/900519_13.C index b4bebda..9d4edc6 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900519_13.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900519_13.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // g++ 1.37.1 bug 900519_13 // If multiple inheritance creates a situation in which a given name is @@ -11,25 +12,25 @@ // keywords: inheritance, ambiguity resolution, members struct base_0 { - enum { base_member }; // ERROR - candidate (26, 30) + enum { base_member }; // { dg-error "" } candidate (26, 30) }; struct base_1 { - int base_member; // ERROR - candidate (26, 34) + int base_member; // { dg-error "" } candidate (26, 34) }; struct base_2 { - int base_member (); // ERROR - candidate (30, 34) + int base_member (); // { dg-error "" } candidate (30, 34) }; struct derived_0 : public base_0, public base_1 { - void member () { base_member; } // ERROR - + void member () { base_member; } // { dg-error "" } }; struct derived_1 : public base_0, public base_2 { - void member () { base_member; } // ERROR - missed + void member () { base_member; } // { dg-error "" } missed }; struct derived_2 : public base_1, public base_2 { - void member () { base_member; } // ERROR - missed + void member () { base_member; } // { dg-error "" } missed }; diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900520_02.C b/gcc/testsuite/g++.old-deja/g++.bugs/900520_02.C index 80543b6..0c8d8a2 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900520_02.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900520_02.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // g++ 1.37.1 bug 900520_02 // keywords: reference types, initialization, parameter passing @@ -8,17 +9,17 @@ typedef int u_array[]; typedef b_array &b_array_ref; typedef u_array &u_array_ref; -void take_b_array_ref (b_array_ref arg) { } // ERROR - passed to here +void take_b_array_ref (b_array_ref arg) { } // { dg-error "" } passed to here extern u_array u_array_gbl_obj; u_array_ref u_array_ref_gbl_obj0 = u_array_gbl_obj; -b_array_ref b_array_ref_gbl_obj0 = u_array_ref_gbl_obj0; // ERROR - invalid declaration +b_array_ref b_array_ref_gbl_obj0 = u_array_ref_gbl_obj0; // { dg-error "" } invalid declaration void test_passing () { - take_b_array_ref (u_array_ref_gbl_obj0); // ERROR - invalid call + take_b_array_ref (u_array_ref_gbl_obj0); // { dg-error "" } invalid call } b_array u_array_gbl_obj; diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900520_03.C b/gcc/testsuite/g++.old-deja/g++.bugs/900520_03.C index b1f05c9..7978e38 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900520_03.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900520_03.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // g++ 1.37.1 bug 900520_03 // The C++ Reference Manual says (in section 8.2.4): @@ -33,7 +34,7 @@ typedef int u_array[]; typedef u_array &u_array_ref; -void take_u_array_ref (u_array_ref arg) { } // ERROR - reference to array of unknown bound in parmtype +void take_u_array_ref (u_array_ref arg) { } // { dg-error "" } reference to array of unknown bound in parmtype extern u_array u_array_gbl_obj; u_array_ref u_array_ref_gbl_obj0 = u_array_gbl_obj; // OK diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900520_04.C b/gcc/testsuite/g++.old-deja/g++.bugs/900520_04.C index d9488cf..4fce936 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900520_04.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900520_04.C @@ -1,3 +1,4 @@ +// { dg-do run } // g++ 1.37.1 bug 900520_04 // g++ does not yet support the initialization of scalar type objects @@ -13,28 +14,28 @@ typedef char *charp; charp cp; -int global_i (1); // gets bogus error -double global_d (9.9); // gets bogus error -charp global_cp0 (cp); // gets bogus error -charp global_cp1 (0); // gets bogus error -enum e_type global_e (e_value); // gets bogus error +int global_i (1); // { dg-bogus "" } +double global_d (9.9); // { dg-bogus "" } +charp global_cp0 (cp); // { dg-bogus "" } +charp global_cp1 (0); // { dg-bogus "" } +enum e_type global_e (e_value); // { dg-bogus "" } void func0 () { - int local_i (1); // gets bogus error - double local_d (9.9); // gets bogus error - charp local_cp0 (cp); // gets bogus error - charp local_cp1 (0); // gets bogus error - enum e_type local_e (e_value); // gets bogus error + int local_i (1); // { dg-bogus "" } + double local_d (9.9); // { dg-bogus "" } + charp local_cp0 (cp); // { dg-bogus "" } + charp local_cp1 (0); // { dg-bogus "" } + enum e_type local_e (e_value); // { dg-bogus "" } } void func1 () { - int* ip = new int (1); // gets bogus error - double* dp = new double (9.9); // gets bogus error - charp* cpp0 = new charp (cp); // gets bogus error - charp* cpp1 = new charp (0); // gets bogus error - enum e_type* ep = new e_type (e_value); // gets bogus error + int* ip = new int (1); // { dg-bogus "" } + double* dp = new double (9.9); // { dg-bogus "" } + charp* cpp0 = new charp (cp); // { dg-bogus "" } + charp* cpp1 = new charp (0); // { dg-bogus "" } + enum e_type* ep = new e_type (e_value); // { dg-bogus "" } } int main () { return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900520_05.C b/gcc/testsuite/g++.old-deja/g++.bugs/900520_05.C index d628ae3..294feee 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900520_05.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900520_05.C @@ -1,3 +1,4 @@ +// { dg-do run } // g++ 1.37.1 bug 900520_05 // The following legal code gets syntax errors from g++. @@ -12,12 +13,12 @@ static struct_0 *sp; void test0 () { - new char * (cp); // gets bogus error + new char * (cp); // { dg-bogus "" } } void test1 () { - new struct_0 * (sp); // gets bogus error + new struct_0 * (sp); // { dg-bogus "" } } int main () { return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900520_06.C b/gcc/testsuite/g++.old-deja/g++.bugs/900520_06.C index 2fda6ca..e111231 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900520_06.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900520_06.C @@ -1,3 +1,4 @@ +// { dg-do run } // g++ 1.37.1 bug 900520_06 // When an object of a class type is passed into a formal parameter of the diff --git a/gcc/testsuite/g++.old-deja/g++.eh/badalloc1.C b/gcc/testsuite/g++.old-deja/g++.eh/badalloc1.C index d5722bd..34eb37b 100644 --- a/gcc/testsuite/g++.old-deja/g++.eh/badalloc1.C +++ b/gcc/testsuite/g++.old-deja/g++.eh/badalloc1.C @@ -1,4 +1,4 @@ -// excess errors test - XFAIL xstormy16-*-* *-*-darwin* +// { dg-do run { xfail xstormy16-*-* *-*-darwin* } } // Copyright (C) 2000, 2002 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 6 June 2000 <nathan@codesourcery.com> diff --git a/gcc/testsuite/g++.old-deja/g++.eh/catch1.C b/gcc/testsuite/g++.old-deja/g++.eh/catch1.C index 052be5f..7aa70ac 100644 --- a/gcc/testsuite/g++.old-deja/g++.eh/catch1.C +++ b/gcc/testsuite/g++.old-deja/g++.eh/catch1.C @@ -1,18 +1,18 @@ -// Build don't link: +// { dg-do assemble } // // Copyright (C) 1999 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 6 Jun 1999 <nathan@acm.org> // We cannot catch an incomplete type, or ptr to one -struct A; // ERROR - forward decl +struct A; // { dg-error "" } forward decl void fn() { try {} - catch (A *p) {} // ERROR - undefined type + catch (A *p) {} // { dg-error "" } undefined type try {} - catch (A p) {} // ERROR - undefined type + catch (A p) {} // { dg-error "" } undefined type try {} catch (void const *p) {} // ok } diff --git a/gcc/testsuite/g++.old-deja/g++.eh/catch10.C b/gcc/testsuite/g++.old-deja/g++.eh/catch10.C index 639f166..2300a94 100644 --- a/gcc/testsuite/g++.old-deja/g++.eh/catch10.C +++ b/gcc/testsuite/g++.old-deja/g++.eh/catch10.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // Test that we notice unfortunate handler ordering. struct A { }; @@ -8,12 +9,12 @@ void f(); void g() { try { f(); } - catch (...) { } // ERROR - ... followed by others + catch (...) { } // { dg-error "" } ... followed by others catch (A*) { } try { f(); } - catch (A*) { } // WARNING - A* before B* - catch (B*) { } // WARNING - A* before B* + catch (A*) { } // { dg-warning "" } A* before B* + catch (B*) { } // { dg-warning "" } A* before B* try { f(); } catch (A*) { } diff --git a/gcc/testsuite/g++.old-deja/g++.eh/catch11.C b/gcc/testsuite/g++.old-deja/g++.eh/catch11.C index 298dd03..275a96a 100644 --- a/gcc/testsuite/g++.old-deja/g++.eh/catch11.C +++ b/gcc/testsuite/g++.old-deja/g++.eh/catch11.C @@ -1,3 +1,4 @@ +// { dg-do run } // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 24 May 2000 <nathan@codesourcery.com> diff --git a/gcc/testsuite/g++.old-deja/g++.eh/catch12.C b/gcc/testsuite/g++.old-deja/g++.eh/catch12.C index b174019..ae3b47c 100644 --- a/gcc/testsuite/g++.old-deja/g++.eh/catch12.C +++ b/gcc/testsuite/g++.old-deja/g++.eh/catch12.C @@ -1,3 +1,4 @@ +// { dg-do run } // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 24 May 2000 <nathan@codesourcery.com> diff --git a/gcc/testsuite/g++.old-deja/g++.eh/catch13.C b/gcc/testsuite/g++.old-deja/g++.eh/catch13.C index 47a0c90..2e0fdc8 100644 --- a/gcc/testsuite/g++.old-deja/g++.eh/catch13.C +++ b/gcc/testsuite/g++.old-deja/g++.eh/catch13.C @@ -1,8 +1,8 @@ +// { dg-do assemble } +// { dg-options "-O2" } // Copyright (C) 2001 Free Software Foundation, Inc. // Contributed by Jakub Jelinek 2 May 2001 <jakub@redhat.com> -// Build don't link: -// Special g++ Options: -O2 struct A; diff --git a/gcc/testsuite/g++.old-deja/g++.eh/catch14.C b/gcc/testsuite/g++.old-deja/g++.eh/catch14.C index 96be464..7addb88 100644 --- a/gcc/testsuite/g++.old-deja/g++.eh/catch14.C +++ b/gcc/testsuite/g++.old-deja/g++.eh/catch14.C @@ -1,8 +1,8 @@ +// { dg-do assemble } +// { dg-options "-O1" } // Copyright (C) 2001 Free Software Foundation, Inc. // Contributed by Jakub Jelinek 2 May 2001 <jakub@redhat.com> -// Build don't link: -// Special g++ Options: -O1 void foo(); diff --git a/gcc/testsuite/g++.old-deja/g++.eh/catch2.C b/gcc/testsuite/g++.old-deja/g++.eh/catch2.C index 66c607a..3520190 100644 --- a/gcc/testsuite/g++.old-deja/g++.eh/catch2.C +++ b/gcc/testsuite/g++.old-deja/g++.eh/catch2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Mike Danylchuk <miked@mpath.com> typedef char TCHAR; diff --git a/gcc/testsuite/g++.old-deja/g++.eh/catch3.C b/gcc/testsuite/g++.old-deja/g++.eh/catch3.C index bc30df7..2a717b3 100644 --- a/gcc/testsuite/g++.old-deja/g++.eh/catch3.C +++ b/gcc/testsuite/g++.old-deja/g++.eh/catch3.C @@ -1,3 +1,5 @@ +// { dg-do run } +// { dg-options "-w" } // Copyright (C) 1999, 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 29 Aug 1999 <nathan@acm.org> @@ -8,7 +10,6 @@ // D--B--A // +--C--A -// Special g++ Options: -w struct A { int m; }; struct B : A { int m; }; diff --git a/gcc/testsuite/g++.old-deja/g++.eh/catch3p.C b/gcc/testsuite/g++.old-deja/g++.eh/catch3p.C index 34182e2..c1332b3 100644 --- a/gcc/testsuite/g++.old-deja/g++.eh/catch3p.C +++ b/gcc/testsuite/g++.old-deja/g++.eh/catch3p.C @@ -1,3 +1,5 @@ +// { dg-do run } +// { dg-options "-w" } // Copyright (C) 1999, 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 29 Aug 1999 <nathan@acm.org> @@ -8,7 +10,6 @@ // D--B--A // +--C--A -// Special g++ Options: -w struct A { int m; virtual ~A(){}}; struct B : A { int m; }; diff --git a/gcc/testsuite/g++.old-deja/g++.eh/catch4.C b/gcc/testsuite/g++.old-deja/g++.eh/catch4.C index b67b70e..1da91d0 100644 --- a/gcc/testsuite/g++.old-deja/g++.eh/catch4.C +++ b/gcc/testsuite/g++.old-deja/g++.eh/catch4.C @@ -1,3 +1,5 @@ +// { dg-do run } +// { dg-options "-w" } // Copyright (C) 1999, 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 29 Aug 1999 <nathan@acm.org> @@ -8,7 +10,6 @@ // D--B==A // +--C==A -// Special g++ Options: -w struct A { int m; }; struct B : virtual A { int m; }; diff --git a/gcc/testsuite/g++.old-deja/g++.eh/catch4p.C b/gcc/testsuite/g++.old-deja/g++.eh/catch4p.C index 5cc56c0..6700a52 100644 --- a/gcc/testsuite/g++.old-deja/g++.eh/catch4p.C +++ b/gcc/testsuite/g++.old-deja/g++.eh/catch4p.C @@ -1,3 +1,5 @@ +// { dg-do run } +// { dg-options "-w" } // Copyright (C) 1999, 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 29 Aug 1999 <nathan@acm.org> @@ -8,7 +10,6 @@ // D--B==A // +--C==A -// Special g++ Options: -w struct A { int m; virtual ~A(){}}; struct B : virtual A { int m; }; diff --git a/gcc/testsuite/g++.old-deja/g++.eh/catch5.C b/gcc/testsuite/g++.old-deja/g++.eh/catch5.C index 59e111e..1fae7f5 100644 --- a/gcc/testsuite/g++.old-deja/g++.eh/catch5.C +++ b/gcc/testsuite/g++.old-deja/g++.eh/catch5.C @@ -1,3 +1,5 @@ +// { dg-do run } +// { dg-options "-w" } // Copyright (C) 1999, 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 29 Aug 1999 <nathan@acm.org> @@ -8,7 +10,6 @@ // +--C==A // +--AA-A -// Special g++ Options: -w struct A { int m; }; struct B : virtual A { int m; }; diff --git a/gcc/testsuite/g++.old-deja/g++.eh/catch5p.C b/gcc/testsuite/g++.old-deja/g++.eh/catch5p.C index 218097e..8ae8d65 100644 --- a/gcc/testsuite/g++.old-deja/g++.eh/catch5p.C +++ b/gcc/testsuite/g++.old-deja/g++.eh/catch5p.C @@ -1,3 +1,5 @@ +// { dg-do run } +// { dg-options "-w" } // Copyright (C) 1999, 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 29 Aug 1999 <nathan@acm.org> @@ -8,7 +10,6 @@ // +--C==A // +--AA-A -// Special g++ Options: -w struct A { int m; virtual ~A(){}}; struct B : virtual A { int m; }; diff --git a/gcc/testsuite/g++.old-deja/g++.eh/catch6.C b/gcc/testsuite/g++.old-deja/g++.eh/catch6.C index 341e456..d60d43e 100644 --- a/gcc/testsuite/g++.old-deja/g++.eh/catch6.C +++ b/gcc/testsuite/g++.old-deja/g++.eh/catch6.C @@ -1,3 +1,5 @@ +// { dg-do run } +// { dg-options "-w" } // Copyright (C) 1999, 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 29 Aug 1999 <nathan@acm.org> @@ -8,7 +10,6 @@ // +--C==A // +--AA-A -// Special g++ Options: -w struct A { int m; }; struct B : virtual A { int m; }; diff --git a/gcc/testsuite/g++.old-deja/g++.eh/catch6p.C b/gcc/testsuite/g++.old-deja/g++.eh/catch6p.C index 95d015b..c73ac2c 100644 --- a/gcc/testsuite/g++.old-deja/g++.eh/catch6p.C +++ b/gcc/testsuite/g++.old-deja/g++.eh/catch6p.C @@ -1,3 +1,5 @@ +// { dg-do run } +// { dg-options "-w" } // Copyright (C) 1999, 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 29 Aug 1999 <nathan@acm.org> @@ -8,7 +10,6 @@ // +--C==A // +--AA-A -// Special g++ Options: -w struct A { int m; virtual ~A(){}}; struct B : virtual A { int m; }; diff --git a/gcc/testsuite/g++.old-deja/g++.eh/catch7.C b/gcc/testsuite/g++.old-deja/g++.eh/catch7.C index 1c24063..936b67c 100644 --- a/gcc/testsuite/g++.old-deja/g++.eh/catch7.C +++ b/gcc/testsuite/g++.old-deja/g++.eh/catch7.C @@ -1,3 +1,5 @@ +// { dg-do run } +// { dg-options "-w" } // Copyright (C) 1999, 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 29 Aug 1999 <nathan@acm.org> @@ -9,7 +11,6 @@ // +--C--A // +--E--A -// Special g++ Options: -w struct A { int m; }; struct B : A { int m; }; diff --git a/gcc/testsuite/g++.old-deja/g++.eh/catch7p.C b/gcc/testsuite/g++.old-deja/g++.eh/catch7p.C index a689f1b..5f15a48 100644 --- a/gcc/testsuite/g++.old-deja/g++.eh/catch7p.C +++ b/gcc/testsuite/g++.old-deja/g++.eh/catch7p.C @@ -1,3 +1,5 @@ +// { dg-do run } +// { dg-options "-w" } // Copyright (C) 1999, 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 29 Aug 1999 <nathan@acm.org> @@ -9,7 +11,6 @@ // +--C--A // +--E--A -// Special g++ Options: -w struct A { int m; virtual ~A(){}}; struct B : A { int m; }; diff --git a/gcc/testsuite/g++.old-deja/g++.eh/catch8.C b/gcc/testsuite/g++.old-deja/g++.eh/catch8.C index e9f2545..1947c1c 100644 --- a/gcc/testsuite/g++.old-deja/g++.eh/catch8.C +++ b/gcc/testsuite/g++.old-deja/g++.eh/catch8.C @@ -1,3 +1,5 @@ +// { dg-do run } +// { dg-options "-w" } // Copyright (C) 1999, 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 6 Jun 1999 <nathan@acm.org> @@ -7,7 +9,6 @@ // D--B--A // +--C<<A -// Special g++ Options: -w struct A { int m; }; struct B : A { int m; }; diff --git a/gcc/testsuite/g++.old-deja/g++.eh/catch8p.C b/gcc/testsuite/g++.old-deja/g++.eh/catch8p.C index 08d349b..56fafcf 100644 --- a/gcc/testsuite/g++.old-deja/g++.eh/catch8p.C +++ b/gcc/testsuite/g++.old-deja/g++.eh/catch8p.C @@ -1,3 +1,5 @@ +// { dg-do run } +// { dg-options "-w" } // Copyright (C) 1999, 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 6 Jun 1999 <nathan@acm.org> @@ -7,7 +9,6 @@ // D--B--A // +--C<<A -// Special g++ Options: -w struct A { int m; virtual ~A(){}}; struct B : A { int m; }; diff --git a/gcc/testsuite/g++.old-deja/g++.eh/catch9.C b/gcc/testsuite/g++.old-deja/g++.eh/catch9.C index 4f9355d..f4938a3 100644 --- a/gcc/testsuite/g++.old-deja/g++.eh/catch9.C +++ b/gcc/testsuite/g++.old-deja/g++.eh/catch9.C @@ -1,3 +1,5 @@ +// { dg-do run } +// { dg-options "-w" } // Copyright (C) 1999, 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 29 Aug 1999 <nathan@acm.org> @@ -7,7 +9,6 @@ // D==B--A // +==C--A -// Special g++ Options: -w struct A { int m; }; struct B : A { int m; }; diff --git a/gcc/testsuite/g++.old-deja/g++.eh/catch9p.C b/gcc/testsuite/g++.old-deja/g++.eh/catch9p.C index 1b2015a..9cec7e7 100644 --- a/gcc/testsuite/g++.old-deja/g++.eh/catch9p.C +++ b/gcc/testsuite/g++.old-deja/g++.eh/catch9p.C @@ -1,3 +1,5 @@ +// { dg-do run } +// { dg-options "-w" } // Copyright (C) 1999, 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 29 Aug 1999 <nathan@acm.org> @@ -7,7 +9,6 @@ // D==B--A // +==C--A -// Special g++ Options: -w struct A { int m; virtual ~A(){}}; struct B : A { int m; }; diff --git a/gcc/testsuite/g++.old-deja/g++.eh/catchptr1.C b/gcc/testsuite/g++.old-deja/g++.eh/catchptr1.C index bddca37..2d24675 100644 --- a/gcc/testsuite/g++.old-deja/g++.eh/catchptr1.C +++ b/gcc/testsuite/g++.old-deja/g++.eh/catchptr1.C @@ -1,3 +1,4 @@ +// { dg-do run } // Test pointer chain catching // Copyright (C) 2000, 2002 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 9 Apr 2000 <nathan@nathan@codesourcery.com> diff --git a/gcc/testsuite/g++.old-deja/g++.eh/cleanup1.C b/gcc/testsuite/g++.old-deja/g++.eh/cleanup1.C index 6faea26..271ecf0 100644 --- a/gcc/testsuite/g++.old-deja/g++.eh/cleanup1.C +++ b/gcc/testsuite/g++.old-deja/g++.eh/cleanup1.C @@ -1,3 +1,4 @@ +// { dg-do run } // Bug: obj gets destroyed twice because the fixups for the return are // inside its cleanup region. diff --git a/gcc/testsuite/g++.old-deja/g++.eh/cleanup2.C b/gcc/testsuite/g++.old-deja/g++.eh/cleanup2.C index b9ed9a5..9538de9 100644 --- a/gcc/testsuite/g++.old-deja/g++.eh/cleanup2.C +++ b/gcc/testsuite/g++.old-deja/g++.eh/cleanup2.C @@ -1,3 +1,4 @@ +// { dg-do run } // Copyright (C) 1999 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 21 Nov 1999 <nathan@acm.org> diff --git a/gcc/testsuite/g++.old-deja/g++.eh/cond1.C b/gcc/testsuite/g++.old-deja/g++.eh/cond1.C index 734e300..1b2de1d 100644 --- a/gcc/testsuite/g++.old-deja/g++.eh/cond1.C +++ b/gcc/testsuite/g++.old-deja/g++.eh/cond1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 1999, 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 11 Apr 1999 <nathan@acm.org> @@ -22,10 +22,10 @@ void fn(int i) (i ? throw X() : throw X()); // ok, void (i ? i : j) = 1; // ok, int & - (i ? throw X() : j) = 1; // ERROR - non-lvalue - (i ? j : throw X()) = 1; // ERROR - non-lvalue - (i ? throw X() : throw X()) = 1; // ERROR - void + (i ? throw X() : j) = 1; // { dg-error "" } non-lvalue + (i ? j : throw X()) = 1; // { dg-error "" } non-lvalue + (i ? throw X() : throw X()) = 1; // { dg-error "" } void - (i ? (void)1 : i++); // ERROR - ANSI forbids - (i ? i++ : (void)1); // ERROR - ANSI forbids + (i ? (void)1 : i++); // { dg-error "" } ANSI forbids + (i ? i++ : (void)1); // { dg-error "" } ANSI forbids } diff --git a/gcc/testsuite/g++.old-deja/g++.eh/crash1.C b/gcc/testsuite/g++.old-deja/g++.eh/crash1.C index 6ba4d08..a4440c7 100644 --- a/gcc/testsuite/g++.old-deja/g++.eh/crash1.C +++ b/gcc/testsuite/g++.old-deja/g++.eh/crash1.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -O1 -fno-inline-functions +// { dg-do assemble } +// { dg-options "-O1 -fno-inline-functions" } struct A { diff --git a/gcc/testsuite/g++.old-deja/g++.eh/crash2.C b/gcc/testsuite/g++.old-deja/g++.eh/crash2.C index 463df9d..195b862 100644 --- a/gcc/testsuite/g++.old-deja/g++.eh/crash2.C +++ b/gcc/testsuite/g++.old-deja/g++.eh/crash2.C @@ -1,6 +1,6 @@ -// Build don't link: +// { dg-do assemble } +// { dg-options "-O" } // Origin: Thomas Kunert <kunert@physik.tu-dresden.de> -// Special g++ Options: -O struct C { ~C(); diff --git a/gcc/testsuite/g++.old-deja/g++.eh/crash3.C b/gcc/testsuite/g++.old-deja/g++.eh/crash3.C index 75287bf..e0cc420 100644 --- a/gcc/testsuite/g++.old-deja/g++.eh/crash3.C +++ b/gcc/testsuite/g++.old-deja/g++.eh/crash3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Marc Espie <Marc.Espie@liafa.jussieu.fr> // Used to use -fsjlj-exceptions, but that isn't an option anymore. diff --git a/gcc/testsuite/g++.old-deja/g++.eh/crash4.C b/gcc/testsuite/g++.old-deja/g++.eh/crash4.C index 573149f..e14f03b 100644 --- a/gcc/testsuite/g++.old-deja/g++.eh/crash4.C +++ b/gcc/testsuite/g++.old-deja/g++.eh/crash4.C @@ -1,6 +1,6 @@ -// Build don't link: +// { dg-do assemble } +// { dg-options "-O2" } // Origin: Nathan Sidwell <nathan@codesourcery.com> -// Special g++ Options: -O2 struct A { diff --git a/gcc/testsuite/g++.old-deja/g++.eh/crash5.C b/gcc/testsuite/g++.old-deja/g++.eh/crash5.C index ef476bf..eceb22e 100644 --- a/gcc/testsuite/g++.old-deja/g++.eh/crash5.C +++ b/gcc/testsuite/g++.old-deja/g++.eh/crash5.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Mark Mitchell <mark@codesourcery.com> int i; diff --git a/gcc/testsuite/g++.old-deja/g++.eh/crash6.C b/gcc/testsuite/g++.old-deja/g++.eh/crash6.C index 1f5dcce..7151cbf 100644 --- a/gcc/testsuite/g++.old-deja/g++.eh/crash6.C +++ b/gcc/testsuite/g++.old-deja/g++.eh/crash6.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // // Copyright (C) 2001 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 26 April 2001 <nathan@codesourcery.com> diff --git a/gcc/testsuite/g++.old-deja/g++.eh/ctor1.C b/gcc/testsuite/g++.old-deja/g++.eh/ctor1.C index 9874131..6071d7e 100644 --- a/gcc/testsuite/g++.old-deja/g++.eh/ctor1.C +++ b/gcc/testsuite/g++.old-deja/g++.eh/ctor1.C @@ -1,7 +1,8 @@ +// { dg-do assemble } struct A { A(); - A(A&); // ERROR - referenced below + A(A&); // { dg-error "" } referenced below }; int @@ -9,7 +10,7 @@ main () { try { - throw A(); // ERROR - can't copy + throw A(); // { dg-error "" } can't copy } catch (...) { } } diff --git a/gcc/testsuite/g++.old-deja/g++.eh/flow1.C b/gcc/testsuite/g++.old-deja/g++.eh/flow1.C index 6ba76d7..d48a896 100644 --- a/gcc/testsuite/g++.old-deja/g++.eh/flow1.C +++ b/gcc/testsuite/g++.old-deja/g++.eh/flow1.C @@ -1,3 +1,4 @@ +// { dg-do run } #include <stdio.h> int bar () diff --git a/gcc/testsuite/g++.old-deja/g++.eh/fntry1.C b/gcc/testsuite/g++.old-deja/g++.eh/fntry1.C index 9c1c0ff..9b14f01 100644 --- a/gcc/testsuite/g++.old-deja/g++.eh/fntry1.C +++ b/gcc/testsuite/g++.old-deja/g++.eh/fntry1.C @@ -1,3 +1,4 @@ +// { dg-do run } // Bug: g++ fails to treat function-try-blocks in ctors specially. // Submitted by Jason Merrill <jason@cygnus.com> diff --git a/gcc/testsuite/g++.old-deja/g++.eh/ia64-1.C b/gcc/testsuite/g++.old-deja/g++.eh/ia64-1.C index ec02264..f8def11 100644 --- a/gcc/testsuite/g++.old-deja/g++.eh/ia64-1.C +++ b/gcc/testsuite/g++.old-deja/g++.eh/ia64-1.C @@ -1,4 +1,5 @@ -// Special g++ Options: -O2 +// { dg-do run } +// { dg-options "-O2" } #include <exception> diff --git a/gcc/testsuite/g++.old-deja/g++.eh/inline1.C b/gcc/testsuite/g++.old-deja/g++.eh/inline1.C index ae03c7a..cb2d3ff 100644 --- a/gcc/testsuite/g++.old-deja/g++.eh/inline1.C +++ b/gcc/testsuite/g++.old-deja/g++.eh/inline1.C @@ -1,9 +1,8 @@ +// { dg-do assemble { xfail *-*-* } } +// { dg-options "-ansi -pedantic-errors -O2" } // Copyright (C) 1999 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 29 Nov 1999 <nathan@acm.org> -// Build don't link: -// Special g++ Options: -ansi -pedantic-errors -O2 -// crash test - XFAIL *-*-* struct Foo { diff --git a/gcc/testsuite/g++.old-deja/g++.eh/inline2.C b/gcc/testsuite/g++.old-deja/g++.eh/inline2.C index 9c80132..356c85a 100644 --- a/gcc/testsuite/g++.old-deja/g++.eh/inline2.C +++ b/gcc/testsuite/g++.old-deja/g++.eh/inline2.C @@ -1,6 +1,7 @@ +// { dg-do run } +// { dg-options "-O" } // Test that inlining a destructor with a catch block doesn't confuse the // enclosing try block. -// Special g++ Options: -O struct A { ~A() diff --git a/gcc/testsuite/g++.old-deja/g++.eh/new1.C b/gcc/testsuite/g++.old-deja/g++.eh/new1.C index 788a39b..4c52cf4 100644 --- a/gcc/testsuite/g++.old-deja/g++.eh/new1.C +++ b/gcc/testsuite/g++.old-deja/g++.eh/new1.C @@ -1,3 +1,4 @@ +// { dg-do run } // Test that a throw in foo destroys the A, but does not free the memory. #include <cstddef> diff --git a/gcc/testsuite/g++.old-deja/g++.eh/new2.C b/gcc/testsuite/g++.old-deja/g++.eh/new2.C index 316afff..2d69df0 100644 --- a/gcc/testsuite/g++.old-deja/g++.eh/new2.C +++ b/gcc/testsuite/g++.old-deja/g++.eh/new2.C @@ -1,3 +1,4 @@ +// { dg-do run } // Test that a throw in B's constructor destroys the A and frees the memory. #include <cstddef> diff --git a/gcc/testsuite/g++.old-deja/g++.eh/pdel1.C b/gcc/testsuite/g++.old-deja/g++.eh/pdel1.C index b8e553c..fd7ecff 100644 --- a/gcc/testsuite/g++.old-deja/g++.eh/pdel1.C +++ b/gcc/testsuite/g++.old-deja/g++.eh/pdel1.C @@ -1,3 +1,4 @@ +// { dg-do run } // Test for calling placement delete. #include <new> diff --git a/gcc/testsuite/g++.old-deja/g++.eh/pdel2.C b/gcc/testsuite/g++.old-deja/g++.eh/pdel2.C index 12efcd3..9bad6ee 100644 --- a/gcc/testsuite/g++.old-deja/g++.eh/pdel2.C +++ b/gcc/testsuite/g++.old-deja/g++.eh/pdel2.C @@ -1,3 +1,4 @@ +// { dg-do run } // Test for not calling mismatched placement delete. #include <new> diff --git a/gcc/testsuite/g++.old-deja/g++.eh/ptr1.C b/gcc/testsuite/g++.old-deja/g++.eh/ptr1.C index 093abd1..aad2a0a 100644 --- a/gcc/testsuite/g++.old-deja/g++.eh/ptr1.C +++ b/gcc/testsuite/g++.old-deja/g++.eh/ptr1.C @@ -1,3 +1,4 @@ +// { dg-do run } // Bug: catching pointers by reference doesn't work right. extern "C" int printf (const char *, ...); diff --git a/gcc/testsuite/g++.old-deja/g++.eh/ptrmem1.C b/gcc/testsuite/g++.old-deja/g++.eh/ptrmem1.C index ba70612..299dc4a 100644 --- a/gcc/testsuite/g++.old-deja/g++.eh/ptrmem1.C +++ b/gcc/testsuite/g++.old-deja/g++.eh/ptrmem1.C @@ -1,3 +1,4 @@ +// { dg-do run } extern "C" void exit (int); extern "C" void abort (void); struct A { int i; }; diff --git a/gcc/testsuite/g++.old-deja/g++.eh/rethrow1.C b/gcc/testsuite/g++.old-deja/g++.eh/rethrow1.C index ef4dcb4..286f1bd 100644 --- a/gcc/testsuite/g++.old-deja/g++.eh/rethrow1.C +++ b/gcc/testsuite/g++.old-deja/g++.eh/rethrow1.C @@ -1,3 +1,4 @@ +// { dg-do run } // Testcase for proper handling of rethrow. #include <stdio.h> diff --git a/gcc/testsuite/g++.old-deja/g++.eh/rethrow2.C b/gcc/testsuite/g++.old-deja/g++.eh/rethrow2.C index 2d2583b..cd2dd7e 100644 --- a/gcc/testsuite/g++.old-deja/g++.eh/rethrow2.C +++ b/gcc/testsuite/g++.old-deja/g++.eh/rethrow2.C @@ -1,3 +1,4 @@ +// { dg-do run } // Testcase for proper handling of rethrow. #include <stdio.h> diff --git a/gcc/testsuite/g++.old-deja/g++.eh/rethrow3.C b/gcc/testsuite/g++.old-deja/g++.eh/rethrow3.C index 5ab25d6..952318b 100644 --- a/gcc/testsuite/g++.old-deja/g++.eh/rethrow3.C +++ b/gcc/testsuite/g++.old-deja/g++.eh/rethrow3.C @@ -1,3 +1,4 @@ +// { dg-do run } #include <stdio.h> #include <stdlib.h> #include <exception> diff --git a/gcc/testsuite/g++.old-deja/g++.eh/rethrow4.C b/gcc/testsuite/g++.old-deja/g++.eh/rethrow4.C index c5dcd23..df54e49 100644 --- a/gcc/testsuite/g++.old-deja/g++.eh/rethrow4.C +++ b/gcc/testsuite/g++.old-deja/g++.eh/rethrow4.C @@ -1,3 +1,4 @@ +// { dg-do run } // Testcase for proper handling of rethrow. #include <stdio.h> diff --git a/gcc/testsuite/g++.old-deja/g++.eh/rethrow5.C b/gcc/testsuite/g++.old-deja/g++.eh/rethrow5.C index f137d18..34a56e4 100644 --- a/gcc/testsuite/g++.old-deja/g++.eh/rethrow5.C +++ b/gcc/testsuite/g++.old-deja/g++.eh/rethrow5.C @@ -1,3 +1,4 @@ +// { dg-do run } // Testcase for proper handling of rethrow. #include <stdio.h> diff --git a/gcc/testsuite/g++.old-deja/g++.eh/rethrow6.C b/gcc/testsuite/g++.old-deja/g++.eh/rethrow6.C index 56f61ef..ce99626 100644 --- a/gcc/testsuite/g++.old-deja/g++.eh/rethrow6.C +++ b/gcc/testsuite/g++.old-deja/g++.eh/rethrow6.C @@ -1,3 +1,4 @@ +// { dg-do run } // Testcase for proper handling of rethrow. #include <stdio.h> diff --git a/gcc/testsuite/g++.old-deja/g++.eh/spec1.C b/gcc/testsuite/g++.old-deja/g++.eh/spec1.C index 044af8c..0ff8883 100644 --- a/gcc/testsuite/g++.old-deja/g++.eh/spec1.C +++ b/gcc/testsuite/g++.old-deja/g++.eh/spec1.C @@ -1,3 +1,4 @@ +// { dg-do run } // Testing exception specifications. // Test 1: the original exception succeeds. diff --git a/gcc/testsuite/g++.old-deja/g++.eh/spec2.C b/gcc/testsuite/g++.old-deja/g++.eh/spec2.C index d0269b3..5c7a913 100644 --- a/gcc/testsuite/g++.old-deja/g++.eh/spec2.C +++ b/gcc/testsuite/g++.old-deja/g++.eh/spec2.C @@ -1,3 +1,4 @@ +// { dg-do run } // Testing exception specifications. // Test 2: the second throw succeeds. diff --git a/gcc/testsuite/g++.old-deja/g++.eh/spec3.C b/gcc/testsuite/g++.old-deja/g++.eh/spec3.C index 57b29d4..6239270 100644 --- a/gcc/testsuite/g++.old-deja/g++.eh/spec3.C +++ b/gcc/testsuite/g++.old-deja/g++.eh/spec3.C @@ -1,3 +1,4 @@ +// { dg-do run } // Testing exception specifications. // Test 3: the bad_exception throw succeeds. diff --git a/gcc/testsuite/g++.old-deja/g++.eh/spec4.C b/gcc/testsuite/g++.old-deja/g++.eh/spec4.C index a92f7f0..e1f702e 100644 --- a/gcc/testsuite/g++.old-deja/g++.eh/spec4.C +++ b/gcc/testsuite/g++.old-deja/g++.eh/spec4.C @@ -1,3 +1,4 @@ +// { dg-do run } // Testing exception specifications. // Test 4: all throws fail, call terminate. diff --git a/gcc/testsuite/g++.old-deja/g++.eh/spec5.C b/gcc/testsuite/g++.old-deja/g++.eh/spec5.C index 56154f9..107ba7f 100644 --- a/gcc/testsuite/g++.old-deja/g++.eh/spec5.C +++ b/gcc/testsuite/g++.old-deja/g++.eh/spec5.C @@ -1,3 +1,3 @@ -// Build don't link: +// { dg-do assemble } extern void *f(unsigned int k) throw(); diff --git a/gcc/testsuite/g++.old-deja/g++.eh/spec6.C b/gcc/testsuite/g++.old-deja/g++.eh/spec6.C index d9d4edf..b9ccd6e 100644 --- a/gcc/testsuite/g++.old-deja/g++.eh/spec6.C +++ b/gcc/testsuite/g++.old-deja/g++.eh/spec6.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 1999 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 19 Jan 1999 <nathan@acm.org> @@ -7,25 +7,25 @@ // [except.spec] 1, a type in an exception specifier shall not be incomplete, // or pointer or ref to incomplete -struct X; // ERROR - forward declaration.* -void fn1() throw(X); // ERROR - invalid use of undefined type -void fn2() throw(X *); // ERROR - invalid use of undefined type -void fn3() throw(X &); // ERROR - invalid use of undefined tyoe -void fn4() throw(void); // ERROR - invalid use of void expression -void fn5() throw(void &); // ERROR - invalid type // ERROR - invalid use of void +struct X; // { dg-error "" } forward declaration.* +void fn1() throw(X); // { dg-error "" } invalid use of undefined type +void fn2() throw(X *); // { dg-error "" } invalid use of undefined type +void fn3() throw(X &); // { dg-error "" } invalid use of undefined tyoe +void fn4() throw(void); // { dg-error "" } invalid use of void expression +void fn5() throw(void &); // { dg-error "" } invalid type // ERROR - invalid use of void // except for cv pointer to void void fn6() throw(void *); // ok -- pointer to void void fn7() throw(void const *); // ok -- pointer to cv void template<class T> void fny() throw(T); // ok (so far) template<> void fny<int>() throw(int); // ok -template<> void fny<void>() throw(void); // ERROR - invalid use of void +template<> void fny<void>() throw(void); // { dg-error "" } invalid use of void -template<class T> void fnx(T *) throw(T){} // ERROR - invalid use of void expression +template<class T> void fnx(T *) throw(T){} // { dg-error "" } invalid use of void expression void fx() { fnx((int *)0); - fnx((void *)0); // ERROR - instantiated from here + fnx((void *)0); // { dg-error "" } instantiated from here } // [except.spec] 2, exception specifiers must be the same set of types (but @@ -43,33 +43,33 @@ void baz3() throw(Int, char){} // typedefs are the same type ... void baz4() throw(int, Int, char); // ... so this is a duplicate void baz4() throw(Int, char){} -void fna() throw(int, char); // ERROR - to previous declaration -void fna() throw(int const, char); // ERROR - declaration different exceptions // ERROR - to previous declaration -void fna() throw(int){} // ERROR - declaration different exceptions +void fna() throw(int, char); // { dg-error "" } to previous declaration +void fna() throw(int const, char); // { dg-error "" } declaration different exceptions // ERROR - to previous declaration +void fna() throw(int){} // { dg-error "" } declaration different exceptions -void fnb() throw(int, char); // ERROR - to previous declaration -void fnb() throw(char){} // ERROR - declaration different exceptions +void fnb() throw(int, char); // { dg-error "" } to previous declaration +void fnb() throw(char){} // { dg-error "" } declaration different exceptions -void fnc() throw(int, char); // ERROR - to previous declaration -void fnc() throw(char, int, float){} // ERROR - declaration different exceptions +void fnc() throw(int, char); // { dg-error "" } to previous declaration +void fnc() throw(char, int, float){} // { dg-error "" } declaration different exceptions -void fnd() throw(); // ERROR - to previous declaration -void fnd() throw(char){} // ERROR - declaration different exceptions +void fnd() throw(); // { dg-error "" } to previous declaration +void fnd() throw(char){} // { dg-error "" } declaration different exceptions -void fne() throw(char); // ERROR - to previous declaration -void fne() throw(){} // ERROR - declaration different exceptions +void fne() throw(char); // { dg-error "" } to previous declaration +void fne() throw(){} // { dg-error "" } declaration different exceptions -void fnf(); // ERROR - to previous declaration -void fnf() throw(char){} // ERROR - declaration different exceptions +void fnf(); // { dg-error "" } to previous declaration +void fnf() throw(char){} // { dg-error "" } declaration different exceptions -void fng() throw(char); // ERROR - to previous declaration -void fng(){} // ERROR - declaration different exceptions +void fng() throw(char); // { dg-error "" } to previous declaration +void fng(){} // { dg-error "" } declaration different exceptions -void fnh() throw(int, char); // ERROR - to previous declaration -void fnh() throw(int, float){} // ERROR - declaration different exceptions +void fnh() throw(int, char); // { dg-error "" } to previous declaration +void fnh() throw(int, float){} // { dg-error "" } declaration different exceptions -void fni() throw(int, char); // ERROR - to previous declaration -void fni() throw(float, char){} // ERROR - declaration different exceptions +void fni() throw(int, char); // { dg-error "" } to previous declaration +void fni() throw(float, char){} // { dg-error "" } declaration different exceptions // [except.spec] 3, virtual function overriders shall throw a subset of the // overridden function @@ -80,33 +80,33 @@ struct G : public F, F1 {}; struct H : private E {}; struct A { - virtual void foo() throw(); // ERROR - overriding + virtual void foo() throw(); // { dg-error "" } overriding virtual void baz() throw(double, int); virtual void bar(); virtual void qux() throw(E); - virtual void qux(int) throw(E const *); // ERROR - overriding (pedantically) - virtual void quux() throw(F); // ERROR - overriding - virtual void quux(int) throw(F *); // ERROR - overriding - virtual void wibble() throw(E); // ERROR - overriding - virtual void wobble() throw(E *); // ERROR - overriding - virtual void wobble(int) throw(E *); // ERROR - overriding + virtual void qux(int) throw(E const *); // { dg-error "" } overriding (pedantically) + virtual void quux() throw(F); // { dg-error "" } overriding + virtual void quux(int) throw(F *); // { dg-error "" } overriding + virtual void wibble() throw(E); // { dg-error "" } overriding + virtual void wobble() throw(E *); // { dg-error "" } overriding + virtual void wobble(int) throw(E *); // { dg-error "" } overriding virtual void wabble(int) throw(E *); virtual void wubble(int) throw(E *, H *); - virtual ~A() throw(); // ERROR - overriding + virtual ~A() throw(); // { dg-error "" } overriding }; struct B : A { - virtual void foo() throw(int); // ERROR - looser throw - A::foo + virtual void foo() throw(int); // { dg-error "" } looser throw - A::foo virtual void baz() throw(double); // ok subset virtual void bar(int) throw(int); // ok not overriding virtual void qux() throw(F); // ok subset - virtual void qux(int) throw(F *); // ERROR - looser (pedantically) - virtual void quux() throw(E); // ERROR - looser throw - A::quux() - virtual void quux(int) throw(E *); // ERROR - looser throw - A::quux(int) - virtual void wibble() throw(E *); // ERROR - looser throw - A::wibble - virtual void wobble() throw(G *); // ERROR - looser throw - A::wobble() - virtual void wobble(int) throw(H *); // ERROR - looser throw - A::wobble(int) + virtual void qux(int) throw(F *); // { dg-error "" } looser (pedantically) + virtual void quux() throw(E); // { dg-error "" } looser throw - A::quux() + virtual void quux(int) throw(E *); // { dg-error "" } looser throw - A::quux(int) + virtual void wibble() throw(E *); // { dg-error "" } looser throw - A::wibble + virtual void wobble() throw(G *); // { dg-error "" } looser throw - A::wobble() + virtual void wobble(int) throw(H *); // { dg-error "" } looser throw - A::wobble(int) virtual void wubble(int) throw(H *); // ok virtual void wabble(int) throw(F1 *, F *); // ok }; @@ -114,7 +114,7 @@ struct B : A struct A1 { virtual void foo() throw(int); - virtual void bar() throw(); // ERROR - overriding + virtual void bar() throw(); // { dg-error "" } overriding virtual ~A1() throw(int); }; @@ -123,15 +123,15 @@ struct B1 : A }; struct C : A, A1 -{ // ERROR - looser throw - A::~A() - virtual void foo() throw(int); // ERROR - looser throw - A::foo - virtual void bar() throw(int); // ERROR - looser throw - A1::bar +{ // { dg-error "" } looser throw - A::~A() + virtual void foo() throw(int); // { dg-error "" } looser throw - A::foo + virtual void bar() throw(int); // { dg-error "" } looser throw - A1::bar }; struct D : A, A1 { - virtual ~D() throw(int); // ERROR - looser throw - A::~A() + virtual ~D() throw(int); // { dg-error "" } looser throw - A::~A() }; // [except.spec] 5, types shall not be defined in exception specifiers -void fn8() throw(struct Z {}); // ERROR - ANSI C++ forbids +void fn8() throw(struct Z {}); // { dg-error "" } ANSI C++ forbids diff --git a/gcc/testsuite/g++.old-deja/g++.eh/spec7.C b/gcc/testsuite/g++.old-deja/g++.eh/spec7.C index 1945b84..2ef88a2 100644 --- a/gcc/testsuite/g++.old-deja/g++.eh/spec7.C +++ b/gcc/testsuite/g++.old-deja/g++.eh/spec7.C @@ -1,3 +1,4 @@ +// { dg-do run } // Test that we allow simple throw specs on pointers. void f() throw () { } diff --git a/gcc/testsuite/g++.old-deja/g++.eh/terminate1.C b/gcc/testsuite/g++.old-deja/g++.eh/terminate1.C index 9526041..09dd84f 100644 --- a/gcc/testsuite/g++.old-deja/g++.eh/terminate1.C +++ b/gcc/testsuite/g++.old-deja/g++.eh/terminate1.C @@ -1,3 +1,4 @@ +// { dg-do run } // Test that an exception thrown out of the constructor for the exception // object (i.e. "after completing evaluation of the expression to be thrown // but before the exception is caught") causes us to call terminate. diff --git a/gcc/testsuite/g++.old-deja/g++.eh/terminate2.C b/gcc/testsuite/g++.old-deja/g++.eh/terminate2.C index 6f75124..3a31158 100644 --- a/gcc/testsuite/g++.old-deja/g++.eh/terminate2.C +++ b/gcc/testsuite/g++.old-deja/g++.eh/terminate2.C @@ -1,3 +1,4 @@ +// { dg-do run } // Test that an unhandled exception causes us to call terminate. #include <exception> diff --git a/gcc/testsuite/g++.old-deja/g++.eh/throw1.C b/gcc/testsuite/g++.old-deja/g++.eh/throw1.C index 49a7d1e..e5d234b 100644 --- a/gcc/testsuite/g++.old-deja/g++.eh/throw1.C +++ b/gcc/testsuite/g++.old-deja/g++.eh/throw1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } void athrow(const int & e) throw(int) { diff --git a/gcc/testsuite/g++.old-deja/g++.eh/throw2.C b/gcc/testsuite/g++.old-deja/g++.eh/throw2.C index fbf0cec..63bb029 100644 --- a/gcc/testsuite/g++.old-deja/g++.eh/throw2.C +++ b/gcc/testsuite/g++.old-deja/g++.eh/throw2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Submitted by Sebastian Ritterbusch <uabp@rz.uni-karlsruhe.de> @@ -6,7 +6,7 @@ void athrow(const ANY & e) throw(ANY) { - throw e; // gets bogus error - discarding const + throw e; // { dg-bogus "" } discarding const } int main(void) diff --git a/gcc/testsuite/g++.old-deja/g++.eh/tmpl1.C b/gcc/testsuite/g++.old-deja/g++.eh/tmpl1.C index cdbd6e1..985fcae 100644 --- a/gcc/testsuite/g++.old-deja/g++.eh/tmpl1.C +++ b/gcc/testsuite/g++.old-deja/g++.eh/tmpl1.C @@ -1,3 +1,4 @@ +// { dg-do run } template <class T> void f() throw (T) { diff --git a/gcc/testsuite/g++.old-deja/g++.eh/tmpl2.C b/gcc/testsuite/g++.old-deja/g++.eh/tmpl2.C index af3dc7b..9bd5aeb 100644 --- a/gcc/testsuite/g++.old-deja/g++.eh/tmpl2.C +++ b/gcc/testsuite/g++.old-deja/g++.eh/tmpl2.C @@ -1,6 +1,5 @@ -// Build don't link: -// Special g++ flags: -O -// crash test - XFAIL i*86-*-linux* +// { dg-do assemble { xfail i*86-*-linux* } } +// { dg-options "-O" } // Posted by H. J. Lu <hjl@lucon.org> diff --git a/gcc/testsuite/g++.old-deja/g++.eh/tmpl3.C b/gcc/testsuite/g++.old-deja/g++.eh/tmpl3.C index 521315e..0ddf63c 100644 --- a/gcc/testsuite/g++.old-deja/g++.eh/tmpl3.C +++ b/gcc/testsuite/g++.old-deja/g++.eh/tmpl3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Posted by Trevor Taylor <ttaylor@powerup.com.au> diff --git a/gcc/testsuite/g++.old-deja/g++.eh/tmpl4.C b/gcc/testsuite/g++.old-deja/g++.eh/tmpl4.C index 1f79981..14e455b 100644 --- a/gcc/testsuite/g++.old-deja/g++.eh/tmpl4.C +++ b/gcc/testsuite/g++.old-deja/g++.eh/tmpl4.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Mark Mitchell <mark@codesourcery.com> template <class T> void test(){ diff --git a/gcc/testsuite/g++.old-deja/g++.eh/tmpl5.C b/gcc/testsuite/g++.old-deja/g++.eh/tmpl5.C index 4564633..4f9580b 100644 --- a/gcc/testsuite/g++.old-deja/g++.eh/tmpl5.C +++ b/gcc/testsuite/g++.old-deja/g++.eh/tmpl5.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Mark Mitchell <mark@codesourcery.com> template <class T = int> diff --git a/gcc/testsuite/g++.old-deja/g++.eh/tmpl6.C b/gcc/testsuite/g++.old-deja/g++.eh/tmpl6.C index b5b79c8..d79e8ad 100644 --- a/gcc/testsuite/g++.old-deja/g++.eh/tmpl6.C +++ b/gcc/testsuite/g++.old-deja/g++.eh/tmpl6.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Mark Mitchell <mark@codesourcery.com> struct S diff --git a/gcc/testsuite/g++.old-deja/g++.eh/unwind1.C b/gcc/testsuite/g++.old-deja/g++.eh/unwind1.C index 75bb614..076b550 100644 --- a/gcc/testsuite/g++.old-deja/g++.eh/unwind1.C +++ b/gcc/testsuite/g++.old-deja/g++.eh/unwind1.C @@ -1,3 +1,4 @@ +// { dg-do run } // Test that unwinding properly restores SP. // Contributed by Jason Merrill <jason@cygnus.com> diff --git a/gcc/testsuite/g++.old-deja/g++.eh/vbase1.C b/gcc/testsuite/g++.old-deja/g++.eh/vbase1.C index cf665d4..96766d6 100644 --- a/gcc/testsuite/g++.old-deja/g++.eh/vbase1.C +++ b/gcc/testsuite/g++.old-deja/g++.eh/vbase1.C @@ -1,3 +1,4 @@ +// { dg-do run } // Origin: Mark Mitchell <mark@codesourcery.com> int i; diff --git a/gcc/testsuite/g++.old-deja/g++.eh/vbase2.C b/gcc/testsuite/g++.old-deja/g++.eh/vbase2.C index abf7223..eaae9d9 100644 --- a/gcc/testsuite/g++.old-deja/g++.eh/vbase2.C +++ b/gcc/testsuite/g++.old-deja/g++.eh/vbase2.C @@ -1,3 +1,4 @@ +// { dg-do run } // Origin: Mark Mitchell <mark@codesourcery.com> int i; diff --git a/gcc/testsuite/g++.old-deja/g++.eh/vbase3.C b/gcc/testsuite/g++.old-deja/g++.eh/vbase3.C index 364eca6..f59b53b 100644 --- a/gcc/testsuite/g++.old-deja/g++.eh/vbase3.C +++ b/gcc/testsuite/g++.old-deja/g++.eh/vbase3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Used to use -fsjlj-exceptions, but that isn't an option anymore. // Origin: Donn Terry <donn@interix.com> diff --git a/gcc/testsuite/g++.old-deja/g++.eh/vbase4.C b/gcc/testsuite/g++.old-deja/g++.eh/vbase4.C index 6036086..748d37f 100644 --- a/gcc/testsuite/g++.old-deja/g++.eh/vbase4.C +++ b/gcc/testsuite/g++.old-deja/g++.eh/vbase4.C @@ -1,3 +1,4 @@ +// { dg-do run } // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 8 Mar 2000 <nathan@codesourcery.com> diff --git a/gcc/testsuite/g++.old-deja/g++.ext/addrfunc1.C b/gcc/testsuite/g++.old-deja/g++.ext/addrfunc1.C index e0948a5..3fec371 100644 --- a/gcc/testsuite/g++.old-deja/g++.ext/addrfunc1.C +++ b/gcc/testsuite/g++.old-deja/g++.ext/addrfunc1.C @@ -1,8 +1,8 @@ +// { dg-do assemble } +// { dg-options "-fms-extensions" } // Test that taking the address of a member function name produces // a pointer to member function. // Contributed by Jason Merrill <jason@cygnus.com> -// Special g++ Options: -fms-extensions -// Build don't link: struct A { }; int (A::*p)(); diff --git a/gcc/testsuite/g++.old-deja/g++.ext/addrfunc2.C b/gcc/testsuite/g++.old-deja/g++.ext/addrfunc2.C index 97c745d..7314d16 100644 --- a/gcc/testsuite/g++.old-deja/g++.ext/addrfunc2.C +++ b/gcc/testsuite/g++.old-deja/g++.ext/addrfunc2.C @@ -1,6 +1,7 @@ +// { dg-do run } +// { dg-options "-fms-extensions" } // Test for implicit & on methods. // Contributed by Jason Merrill <jason@cygnus.com>. -// Special g++ Options: -fms-extensions struct A { void f (int = 0) { } diff --git a/gcc/testsuite/g++.old-deja/g++.ext/addrfunc3.C b/gcc/testsuite/g++.old-deja/g++.ext/addrfunc3.C index 7926eba..16d3318 100644 --- a/gcc/testsuite/g++.old-deja/g++.ext/addrfunc3.C +++ b/gcc/testsuite/g++.old-deja/g++.ext/addrfunc3.C @@ -1,6 +1,7 @@ +// { dg-do run } +// { dg-options "-fpermissive -w" } // Test for overload resolution in comparison expressions. // Contributed by Jason Merrill <jason@cygnus.com>. -// Special g++ Options: -fpermissive -w void f (int) { } void f (); diff --git a/gcc/testsuite/g++.old-deja/g++.ext/addrfunc4.C b/gcc/testsuite/g++.old-deja/g++.ext/addrfunc4.C index a4949f6..05312e4 100644 --- a/gcc/testsuite/g++.old-deja/g++.ext/addrfunc4.C +++ b/gcc/testsuite/g++.old-deja/g++.ext/addrfunc4.C @@ -1,7 +1,8 @@ +// { dg-do run } +// { dg-options "-fms-extensions" } // Test that an object-dependent reference to a member function can be // used to produce a pointer to member function, as in VC++. // Contributed by Jason Merrill <jason@cygnus.com> -// Special g++ Options: -fms-extensions struct A { diff --git a/gcc/testsuite/g++.old-deja/g++.ext/anon1.C b/gcc/testsuite/g++.old-deja/g++.ext/anon1.C index 8ec3580..6fc6d2e 100644 --- a/gcc/testsuite/g++.old-deja/g++.ext/anon1.C +++ b/gcc/testsuite/g++.old-deja/g++.ext/anon1.C @@ -1,4 +1,5 @@ -// Special g++ Options: +// { dg-do run } +// { dg-options "" } union U { struct { int i; int j; }; diff --git a/gcc/testsuite/g++.old-deja/g++.ext/anon2.C b/gcc/testsuite/g++.old-deja/g++.ext/anon2.C index 587427a..6cf16bf 100644 --- a/gcc/testsuite/g++.old-deja/g++.ext/anon2.C +++ b/gcc/testsuite/g++.old-deja/g++.ext/anon2.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: +// { dg-do assemble } +// { dg-options "" } struct S { @@ -8,7 +8,7 @@ struct S union U { struct { - S s; // ERROR - struct with constructor in union + S s; // { dg-error "" } struct with constructor in union }; }; diff --git a/gcc/testsuite/g++.old-deja/g++.ext/anon3.C b/gcc/testsuite/g++.old-deja/g++.ext/anon3.C index f4b9903..44c03c7 100644 --- a/gcc/testsuite/g++.old-deja/g++.ext/anon3.C +++ b/gcc/testsuite/g++.old-deja/g++.ext/anon3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 2001 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 6 Jun 2001 <nathan@codesourcery.com> diff --git a/gcc/testsuite/g++.old-deja/g++.ext/array1.C b/gcc/testsuite/g++.old-deja/g++.ext/array1.C index 095d05a..a297c73 100644 --- a/gcc/testsuite/g++.old-deja/g++.ext/array1.C +++ b/gcc/testsuite/g++.old-deja/g++.ext/array1.C @@ -1,6 +1,7 @@ +// { dg-do assemble } +// { dg-options "" } // Testcase for assignment of non-array to array (assigns the same value to // each member) -// Build don't link: // Special Options: typedef struct {} ct2d_rigid, ct2d_rigid_a[1]; @@ -18,5 +19,5 @@ void ccBgaInspection::reinspect (unsigned long diag_flags) { ct2d_rigid physTdev; - _dev2phys = physTdev; // ERROR - + _dev2phys = physTdev; // { dg-error "" } } diff --git a/gcc/testsuite/g++.old-deja/g++.ext/array2.C b/gcc/testsuite/g++.old-deja/g++.ext/array2.C index 4f3a09e..88482fe 100644 --- a/gcc/testsuite/g++.old-deja/g++.ext/array2.C +++ b/gcc/testsuite/g++.old-deja/g++.ext/array2.C @@ -1,6 +1,6 @@ +// { dg-do assemble } +// { dg-options "-w" } // This testcase used to cause a crash on the Alpha. -// Special g++ Options: -w -// Build don't link: struct A { int i; diff --git a/gcc/testsuite/g++.old-deja/g++.ext/array3.C b/gcc/testsuite/g++.old-deja/g++.ext/array3.C index a1c9c1c..b60b407 100644 --- a/gcc/testsuite/g++.old-deja/g++.ext/array3.C +++ b/gcc/testsuite/g++.old-deja/g++.ext/array3.C @@ -1,6 +1,6 @@ -// Build don't link: +// { dg-do assemble } +// { dg-options "" } // Origin: Mark Mitchell <mark@codesourcery.com> -// Special g++ Options: void *vp; diff --git a/gcc/testsuite/g++.old-deja/g++.ext/array4.C b/gcc/testsuite/g++.old-deja/g++.ext/array4.C index 2b53c6c..f0a90d8 100644 --- a/gcc/testsuite/g++.old-deja/g++.ext/array4.C +++ b/gcc/testsuite/g++.old-deja/g++.ext/array4.C @@ -1,6 +1,6 @@ -// Build don't link: +// { dg-do assemble } +// { dg-options "" } -// Special g++ Options: // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Mark Mitchell 19 Mar 2000 <mark@codesourcery.com> diff --git a/gcc/testsuite/g++.old-deja/g++.ext/arrnew.C b/gcc/testsuite/g++.old-deja/g++.ext/arrnew.C index 53030e0..4a2da86d 100644 --- a/gcc/testsuite/g++.old-deja/g++.ext/arrnew.C +++ b/gcc/testsuite/g++.old-deja/g++.ext/arrnew.C @@ -1,7 +1,7 @@ +// { dg-do assemble } +// { dg-options "" } // PRMS Id: 4992 -// Build don't link: -// Special g++ Options: int *f(){ - return new int[1] = { 1 }; // ERROR - removed + return new int[1] = { 1 }; // { dg-error "" } removed } diff --git a/gcc/testsuite/g++.old-deja/g++.ext/arrnew2.C b/gcc/testsuite/g++.old-deja/g++.ext/arrnew2.C index e572081..8406383 100644 --- a/gcc/testsuite/g++.old-deja/g++.ext/arrnew2.C +++ b/gcc/testsuite/g++.old-deja/g++.ext/arrnew2.C @@ -1,4 +1,4 @@ -// Build don't link: -// Special g++ Options: +// { dg-do assemble } +// { dg-options "" } -int *foo = new int[1](0); // gets bogus error - +int *foo = new int[1](0); // { dg-bogus "" } diff --git a/gcc/testsuite/g++.old-deja/g++.ext/asmspec1.C b/gcc/testsuite/g++.old-deja/g++.ext/asmspec1.C index d86d30a..146f3ac 100644 --- a/gcc/testsuite/g++.old-deja/g++.ext/asmspec1.C +++ b/gcc/testsuite/g++.old-deja/g++.ext/asmspec1.C @@ -1,5 +1,4 @@ -// Build don't link: -// Skip if not target: i?86-*-* +// { dg-do assemble { target i?86-*-* } } // Origin: Anthony Green <green@cygnus.com> void foo () diff --git a/gcc/testsuite/g++.old-deja/g++.ext/attrib1.C b/gcc/testsuite/g++.old-deja/g++.ext/attrib1.C index dd14628..3947e90 100644 --- a/gcc/testsuite/g++.old-deja/g++.ext/attrib1.C +++ b/gcc/testsuite/g++.old-deja/g++.ext/attrib1.C @@ -1,7 +1,6 @@ +// { dg-do assemble { target i?86-*-* } } // Test for using prefix attributes in a parameter decl. // Contributed by Jason Merrill <jason@cygnus.com> -// Skip if not target: i?86-*-* -// Build don't link: #define _stdcall __attribute__ ((__stdcall__)) diff --git a/gcc/testsuite/g++.old-deja/g++.ext/attrib2.C b/gcc/testsuite/g++.old-deja/g++.ext/attrib2.C index 8c32d43..0979e16 100644 --- a/gcc/testsuite/g++.old-deja/g++.ext/attrib2.C +++ b/gcc/testsuite/g++.old-deja/g++.ext/attrib2.C @@ -1,6 +1,6 @@ +// { dg-do run { target i?86-*-* } } // Test that stdcall doesn't prevent us from using op delete. // Contributed by Jason Merrill <jason@cygnus.com> -// Skip if not target: i?86-*-* struct A { void operator delete (void *) __attribute__ ((stdcall)); diff --git a/gcc/testsuite/g++.old-deja/g++.ext/attrib3.C b/gcc/testsuite/g++.old-deja/g++.ext/attrib3.C index 18b1653..aff745e 100644 --- a/gcc/testsuite/g++.old-deja/g++.ext/attrib3.C +++ b/gcc/testsuite/g++.old-deja/g++.ext/attrib3.C @@ -1,6 +1,6 @@ +// { dg-do run { target i?86-*-* } } // Test for proper handling of attributes in template instantiation. // Contributed by Jason Merrill <jason@cygnus.com> -// Skip if not target: i?86-*-* template <class T> struct A { diff --git a/gcc/testsuite/g++.old-deja/g++.ext/attrib4.C b/gcc/testsuite/g++.old-deja/g++.ext/attrib4.C index 5200eac..708147b 100644 --- a/gcc/testsuite/g++.old-deja/g++.ext/attrib4.C +++ b/gcc/testsuite/g++.old-deja/g++.ext/attrib4.C @@ -1,8 +1,8 @@ +// { dg-do assemble } +// { dg-options "-Wformat" } // Test that attributes are really applied to function declarations under // various conditions. // Contributed by Jason Merrill (jason@cygnus.com) -// Special g++ Options: -Wformat -// Build don't link: #define PF __attribute__ ((format (printf, 1, 2))) @@ -17,8 +17,8 @@ void PF k (char *, ...) { } void A::test () { - f ("%f", 42); // WARNING - - g ("%f", 42); // WARNING - - h ("%f", 42); // WARNING - - k ("%f", 42); // WARNING - + f ("%f", 42); // { dg-warning "" } + g ("%f", 42); // { dg-warning "" } + h ("%f", 42); // { dg-warning "" } + k ("%f", 42); // { dg-warning "" } } diff --git a/gcc/testsuite/g++.old-deja/g++.ext/attrib5.C b/gcc/testsuite/g++.old-deja/g++.ext/attrib5.C index 76fea46..8a7480e 100644 --- a/gcc/testsuite/g++.old-deja/g++.ext/attrib5.C +++ b/gcc/testsuite/g++.old-deja/g++.ext/attrib5.C @@ -1,5 +1,5 @@ +// { dg-do run { xfail alpha*-dec-osf* *-*-hms i?86-pc-cygwin *-*-coff } } // Test that attributes weak and alias coexist. -// excess errors test - XFAIL alpha*-dec-osf* *-*-hms i?86-pc-cygwin *-*-coff extern "C" { void f () __attribute__((weak, alias ("_f"))); diff --git a/gcc/testsuite/g++.old-deja/g++.ext/attrib6.C b/gcc/testsuite/g++.old-deja/g++.ext/attrib6.C index 6b2184f..5c12f0a 100644 --- a/gcc/testsuite/g++.old-deja/g++.ext/attrib6.C +++ b/gcc/testsuite/g++.old-deja/g++.ext/attrib6.C @@ -1,6 +1,6 @@ +// { dg-do assemble } // Test that postfix attributes only apply to a single declared object. // (decl_attributes used to chain them onto the end of the prefix attributes, // which caused them to apply to other declarations as well.) // Origin: Joseph Myers <jsm28@cam.ac.uk>. -// Build don't link: void __attribute__((__noreturn__)) foo (const char *, ...) __attribute__((__format__(__printf__, 1, 2))), bar (void); diff --git a/gcc/testsuite/g++.old-deja/g++.ext/bound1.C b/gcc/testsuite/g++.old-deja/g++.ext/bound1.C index fb7bd10..5812f4a 100644 --- a/gcc/testsuite/g++.old-deja/g++.ext/bound1.C +++ b/gcc/testsuite/g++.old-deja/g++.ext/bound1.C @@ -1,6 +1,6 @@ +// { dg-do assemble } +// { dg-options "-Wno-pmf-conversions" } // Testcase for cast of bound pointer to member function. -// Special g++ Options: -Wno-pmf-conversions -// Build don't link: struct A { int f (); diff --git a/gcc/testsuite/g++.old-deja/g++.ext/constructor.C b/gcc/testsuite/g++.old-deja/g++.ext/constructor.C index cdf9f1d..a7995bb 100644 --- a/gcc/testsuite/g++.old-deja/g++.ext/constructor.C +++ b/gcc/testsuite/g++.old-deja/g++.ext/constructor.C @@ -1,5 +1,6 @@ +// { dg-do run } +// { dg-options "" } // Testcase for constructor expressions (GNU extension) -// Special g++ Options: struct Any { int *type; diff --git a/gcc/testsuite/g++.old-deja/g++.ext/default.C b/gcc/testsuite/g++.old-deja/g++.ext/default.C index 30c4510..9f4395e 100644 --- a/gcc/testsuite/g++.old-deja/g++.ext/default.C +++ b/gcc/testsuite/g++.old-deja/g++.ext/default.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // PRMS Id: 5353 // This may be an extension, but it's a very common one... @@ -6,7 +7,7 @@ extern "C" int printf (const char *, ...); class A { public: static A*func (int = 3); - static A*(*ptr)(int = 4); // ERROR - .* + static A*(*ptr)(int = 4); // { dg-error "" } .* }; A*(*A::ptr)(int) = &A::func; @@ -15,7 +16,7 @@ int main() { A foo; - A::ptr(); // ERROR - .* + A::ptr(); // { dg-error "" } .* A::ptr(47); } diff --git a/gcc/testsuite/g++.old-deja/g++.ext/delvoid.C b/gcc/testsuite/g++.old-deja/g++.ext/delvoid.C index acf2f9e..60f114b 100644 --- a/gcc/testsuite/g++.old-deja/g++.ext/delvoid.C +++ b/gcc/testsuite/g++.old-deja/g++.ext/delvoid.C @@ -1,5 +1,6 @@ +// { dg-do run } +// { dg-options "-w" } // Jason Merrill <jason@redhat.com> -// Special g++ Options: -w // Test for deleting a void pointer, which the standard says is undefined, // but which is used by several free C++ programs. diff --git a/gcc/testsuite/g++.old-deja/g++.ext/jump1.C b/gcc/testsuite/g++.old-deja/g++.ext/jump1.C index 5e3dc26..d5dcebc 100644 --- a/gcc/testsuite/g++.old-deja/g++.ext/jump1.C +++ b/gcc/testsuite/g++.old-deja/g++.ext/jump1.C @@ -1,6 +1,7 @@ +// { dg-do run } +// { dg-options "-fpermissive -w" } // Test that we can jump over the declaration of a non-POD object. // Contributed by Jason Merrill <jason@cygnus.com> -// Special g++ Options: -fpermissive -w struct A { }; union U { diff --git a/gcc/testsuite/g++.old-deja/g++.ext/label1.C b/gcc/testsuite/g++.old-deja/g++.ext/label1.C index e7327b4..8bf82ce 100644 --- a/gcc/testsuite/g++.old-deja/g++.ext/label1.C +++ b/gcc/testsuite/g++.old-deja/g++.ext/label1.C @@ -1,5 +1,6 @@ +// { dg-do run } +// { dg-options "" } // Origin: Mark Mitchell <mark@codesourcery.com> -// Special g++ Options: int main () { diff --git a/gcc/testsuite/g++.old-deja/g++.ext/label2.C b/gcc/testsuite/g++.old-deja/g++.ext/label2.C index 891b89b..1ba67d0 100644 --- a/gcc/testsuite/g++.old-deja/g++.ext/label2.C +++ b/gcc/testsuite/g++.old-deja/g++.ext/label2.C @@ -1,5 +1,6 @@ +// { dg-do run } +// { dg-options "" } // Origin: Mark Mitchell <mark@codesourcery.com> -// Special g++ Options: template <class T> int f () diff --git a/gcc/testsuite/g++.old-deja/g++.ext/memconst.C b/gcc/testsuite/g++.old-deja/g++.ext/memconst.C index 568f267..7dd2df7 100644 --- a/gcc/testsuite/g++.old-deja/g++.ext/memconst.C +++ b/gcc/testsuite/g++.old-deja/g++.ext/memconst.C @@ -1,8 +1,8 @@ +// { dg-do assemble } +// { dg-options "" } // From: Ove.Ewerlid@syscon.uu.se (Ove Ewerlid) // Subject: ss-940630:cc1plus: internal error // Date: Sat, 2 Jul 1994 05:07:20 +0200 -// Special g++ Options: -// Build don't link: class qwerty { public: @@ -12,7 +12,7 @@ public: class foo { private: - static const unsigned char * const dummy_key = (unsigned char*)"ThisIs a dummy!"; // ERROR - + static const unsigned char * const dummy_key = (unsigned char*)"ThisIs a dummy!"; // { dg-error "" } public: void bar (); @@ -21,5 +21,5 @@ public: void foo::bar () { - qwerty QWERTY ((unsigned short*)dummy_key); // ERROR - + qwerty QWERTY ((unsigned short*)dummy_key); // { dg-error "" } } diff --git a/gcc/testsuite/g++.old-deja/g++.ext/namedret1.C b/gcc/testsuite/g++.old-deja/g++.ext/namedret1.C index ad1e36f..29955fb 100644 --- a/gcc/testsuite/g++.old-deja/g++.ext/namedret1.C +++ b/gcc/testsuite/g++.old-deja/g++.ext/namedret1.C @@ -1,6 +1,7 @@ -// Special g++ Options: -Wno-deprecated +// { dg-do assemble } +// { dg-options "-Wno-deprecated" } -int f(int x) return y(x) { } // ERROR - +int f(int x) return y(x) { } // { dg-error "" } extern "C" void abort (); diff --git a/gcc/testsuite/g++.old-deja/g++.ext/namedret2.C b/gcc/testsuite/g++.old-deja/g++.ext/namedret2.C index 277a996..339fc11 100644 --- a/gcc/testsuite/g++.old-deja/g++.ext/namedret2.C +++ b/gcc/testsuite/g++.old-deja/g++.ext/namedret2.C @@ -1,11 +1,11 @@ -// Skip if not target: alpha*-*-* -// Special g++ Options: -Wno-deprecated +// { dg-do assemble { target alpha*-*-* } } +// { dg-options "-Wno-deprecated" } // This test verifies that return type promotion is working correctly. // The Alpha ABI specifies that 32-bit return values have bit 31 propagated, // i.e. the value is sign-extended even if the unpromoted type is unsigned. -unsigned int f(unsigned int x) return y(x) { } // ERROR - +unsigned int f(unsigned int x) return y(x) { } // { dg-error "" } extern "C" void abort (); diff --git a/gcc/testsuite/g++.old-deja/g++.ext/namedret3.C b/gcc/testsuite/g++.old-deja/g++.ext/namedret3.C index 7ea6613..7a0e0d5 100644 --- a/gcc/testsuite/g++.old-deja/g++.ext/namedret3.C +++ b/gcc/testsuite/g++.old-deja/g++.ext/namedret3.C @@ -1,4 +1,5 @@ -// Special g++ Options: -Wno-deprecated +// { dg-do assemble } +// { dg-options "-Wno-deprecated" } extern "C" void abort(); @@ -8,9 +9,9 @@ int f2(int *x) return 2; } -int f1() return x // ERROR - +int f1() return x // { dg-error "" } { - f2(&x); // ERROR - + f2(&x); // { dg-error "" } } void g() diff --git a/gcc/testsuite/g++.old-deja/g++.ext/noweak1.C b/gcc/testsuite/g++.old-deja/g++.ext/noweak1.C index bd7d65c..7d73cba 100644 --- a/gcc/testsuite/g++.old-deja/g++.ext/noweak1.C +++ b/gcc/testsuite/g++.old-deja/g++.ext/noweak1.C @@ -1,5 +1,6 @@ +// { dg-do run } +// { dg-options "-fno-weak" } // Test that -fno-weak doesn't break explicit instantiation of static data. -// Special g++ Options: -fno-weak template <class T> struct A { diff --git a/gcc/testsuite/g++.old-deja/g++.ext/null1.C b/gcc/testsuite/g++.old-deja/g++.ext/null1.C index ca1efff..6bbfe7e 100644 --- a/gcc/testsuite/g++.old-deja/g++.ext/null1.C +++ b/gcc/testsuite/g++.old-deja/g++.ext/null1.C @@ -1,3 +1,4 @@ +// { dg-do run } // Test for overloading with g++ NULL. void f (int *) { } diff --git a/gcc/testsuite/g++.old-deja/g++.ext/overload1.C b/gcc/testsuite/g++.old-deja/g++.ext/overload1.C index b1e96b5..e729163 100644 --- a/gcc/testsuite/g++.old-deja/g++.ext/overload1.C +++ b/gcc/testsuite/g++.old-deja/g++.ext/overload1.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -fpermissive +// { dg-do assemble } +// { dg-options "-fpermissive" } // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 28 Feb 2001 <nathan@codesourcery.com> @@ -11,10 +11,10 @@ struct X { X (int); }; -void Foo (int, float, bool); // WARNING - candidate -void Foo (float, int, X); // WARNING - candidate +void Foo (int, float, bool); // { dg-warning "" } candidate +void Foo (float, int, X); // { dg-warning "" } candidate void Baz () { - Foo (1, 1, 0); // WARNING - least worse + Foo (1, 1, 0); // { dg-warning "" } least worse } diff --git a/gcc/testsuite/g++.old-deja/g++.ext/pretty.C b/gcc/testsuite/g++.old-deja/g++.ext/pretty.C index 715837d..7a0029b 100644 --- a/gcc/testsuite/g++.old-deja/g++.ext/pretty.C +++ b/gcc/testsuite/g++.old-deja/g++.ext/pretty.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // Test for PRETTY_FUNCTION -// Build don't link: class SV; diff --git a/gcc/testsuite/g++.old-deja/g++.ext/pretty2.C b/gcc/testsuite/g++.old-deja/g++.ext/pretty2.C index c0c953a..834ffa5 100644 --- a/gcc/testsuite/g++.old-deja/g++.ext/pretty2.C +++ b/gcc/testsuite/g++.old-deja/g++.ext/pretty2.C @@ -1,3 +1,4 @@ +// { dg-do run } // Copyright (C) 1999, 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 21 Nov 1999 <nathan@acm.org> diff --git a/gcc/testsuite/g++.old-deja/g++.ext/pretty3.C b/gcc/testsuite/g++.old-deja/g++.ext/pretty3.C index 9d49f63..d8ae3c8 100644 --- a/gcc/testsuite/g++.old-deja/g++.ext/pretty3.C +++ b/gcc/testsuite/g++.old-deja/g++.ext/pretty3.C @@ -1,3 +1,4 @@ +// { dg-do run } // Copyright (C) 1999 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 21 Nov 1999 <nathan@acm.org> diff --git a/gcc/testsuite/g++.old-deja/g++.ext/pretty4.C b/gcc/testsuite/g++.old-deja/g++.ext/pretty4.C index fd6b0e0..9017d56 100644 --- a/gcc/testsuite/g++.old-deja/g++.ext/pretty4.C +++ b/gcc/testsuite/g++.old-deja/g++.ext/pretty4.C @@ -1,3 +1,4 @@ +// { dg-do run } // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 3 Mar 2000 <nathan@codesourcery.com> diff --git a/gcc/testsuite/g++.old-deja/g++.ext/restrict1.C b/gcc/testsuite/g++.old-deja/g++.ext/restrict1.C index a389db9..0904eb6 100644 --- a/gcc/testsuite/g++.old-deja/g++.ext/restrict1.C +++ b/gcc/testsuite/g++.old-deja/g++.ext/restrict1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 1999 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 14 Nov 1999 <nathan@acm.org> diff --git a/gcc/testsuite/g++.old-deja/g++.ext/return1.C b/gcc/testsuite/g++.old-deja/g++.ext/return1.C index 53d0c6f..f6bbc4d 100644 --- a/gcc/testsuite/g++.old-deja/g++.ext/return1.C +++ b/gcc/testsuite/g++.old-deja/g++.ext/return1.C @@ -1,15 +1,16 @@ +// { dg-do assemble } +// { dg-options "-Wno-deprecated" } // Test that the named return value extension works when passed as a reference. // Origin: Jason Merrill <jason@redhat.com> -// Special g++ Options: -Wno-deprecated void f (int &i) { i = 42; } -int g () return r // ERROR - named return value +int g () return r // { dg-error "" } named return value { - f (r); // ERROR - undeclared + f (r); // { dg-error "" } undeclared } int main () diff --git a/gcc/testsuite/g++.old-deja/g++.ext/stmtexpr1.C b/gcc/testsuite/g++.old-deja/g++.ext/stmtexpr1.C index f28ac8e..a746fc3 100644 --- a/gcc/testsuite/g++.old-deja/g++.ext/stmtexpr1.C +++ b/gcc/testsuite/g++.old-deja/g++.ext/stmtexpr1.C @@ -1,6 +1,6 @@ -// Build don't link: +// { dg-do assemble } +// { dg-options "" } // Origin: Mark Mitchell <mark@codesourcery.com> -// Special g++ Options: void f () { diff --git a/gcc/testsuite/g++.old-deja/g++.ext/syshdr1.C b/gcc/testsuite/g++.old-deja/g++.ext/syshdr1.C index 69d0c7a..09e64bf 100644 --- a/gcc/testsuite/g++.old-deja/g++.ext/syshdr1.C +++ b/gcc/testsuite/g++.old-deja/g++.ext/syshdr1.C @@ -1,8 +1,8 @@ +// { dg-do assemble } +// { dg-options "" } // Test that we don't complain about trying to define bool or wchar_t in a // system header. -// Special g++ Options: -// Build don't link: # 1 "syshdr1.C" # 1 "syshdr1.h" 1 3 diff --git a/gcc/testsuite/g++.old-deja/g++.ext/typename1.C b/gcc/testsuite/g++.old-deja/g++.ext/typename1.C index 2e489ab..2efeba9 100644 --- a/gcc/testsuite/g++.old-deja/g++.ext/typename1.C +++ b/gcc/testsuite/g++.old-deja/g++.ext/typename1.C @@ -1,3 +1,4 @@ +// { dg-do run } // Bug: g++ forgets about the instantiation of class1 when looking up // class11_value, and tries to look things up in class1<class2>. diff --git a/gcc/testsuite/g++.old-deja/g++.ext/typeof1.C b/gcc/testsuite/g++.old-deja/g++.ext/typeof1.C index a9c03b3..8921504 100644 --- a/gcc/testsuite/g++.old-deja/g++.ext/typeof1.C +++ b/gcc/testsuite/g++.old-deja/g++.ext/typeof1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } struct inttest { int elem[1]; diff --git a/gcc/testsuite/g++.old-deja/g++.ext/typeof2.C b/gcc/testsuite/g++.old-deja/g++.ext/typeof2.C index 139048c..2cc0d1c 100644 --- a/gcc/testsuite/g++.old-deja/g++.ext/typeof2.C +++ b/gcc/testsuite/g++.old-deja/g++.ext/typeof2.C @@ -1,8 +1,8 @@ -// Build don't link: +// { dg-do assemble } // Origin: Mark Mitchell <mark@codesourcery.com> struct S { - int i; // ERROR - non-static data member - __typeof( S::i ) f (); // ERROR - referenced here + int i; // { dg-error "" } non-static data member + __typeof( S::i ) f (); // { dg-error "" } referenced here }; diff --git a/gcc/testsuite/g++.old-deja/g++.gb/scope01.C b/gcc/testsuite/g++.old-deja/g++.gb/scope01.C index e22dd39..eb2b951 100644 --- a/gcc/testsuite/g++.old-deja/g++.gb/scope01.C +++ b/gcc/testsuite/g++.old-deja/g++.gb/scope01.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed gb scope struct c { typedef int t; }; struct d { typedef char t; }; diff --git a/gcc/testsuite/g++.old-deja/g++.gb/scope02.C b/gcc/testsuite/g++.old-deja/g++.gb/scope02.C index 678b73e..fbcd3a3 100644 --- a/gcc/testsuite/g++.old-deja/g++.gb/scope02.C +++ b/gcc/testsuite/g++.old-deja/g++.gb/scope02.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed gb scope struct c { typedef int t; diff --git a/gcc/testsuite/g++.old-deja/g++.gb/scope03.C b/gcc/testsuite/g++.old-deja/g++.gb/scope03.C index 09fe16a..701ff5c 100644 --- a/gcc/testsuite/g++.old-deja/g++.gb/scope03.C +++ b/gcc/testsuite/g++.old-deja/g++.gb/scope03.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed gb scope struct c { class t { }; diff --git a/gcc/testsuite/g++.old-deja/g++.gb/scope04.C b/gcc/testsuite/g++.old-deja/g++.gb/scope04.C index f63775b..29e0dff 100644 --- a/gcc/testsuite/g++.old-deja/g++.gb/scope04.C +++ b/gcc/testsuite/g++.old-deja/g++.gb/scope04.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed gb scope struct a { struct c { diff --git a/gcc/testsuite/g++.old-deja/g++.gb/scope05.C b/gcc/testsuite/g++.old-deja/g++.gb/scope05.C index 60f0b02..4c1fd0e 100644 --- a/gcc/testsuite/g++.old-deja/g++.gb/scope05.C +++ b/gcc/testsuite/g++.old-deja/g++.gb/scope05.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed gb scope struct C { void foo (int); diff --git a/gcc/testsuite/g++.old-deja/g++.gb/scope06.C b/gcc/testsuite/g++.old-deja/g++.gb/scope06.C index 46c9d07..39ab089 100644 --- a/gcc/testsuite/g++.old-deja/g++.gb/scope06.C +++ b/gcc/testsuite/g++.old-deja/g++.gb/scope06.C @@ -1,11 +1,11 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed gb scope struct C { struct D { int x; void foo (); }; - const int Ok = 0; // ERROR - initialization forbidden + const int Ok = 0; // { dg-error "" } initialization forbidden }; void C::D::foo () diff --git a/gcc/testsuite/g++.old-deja/g++.gb/scope07.C b/gcc/testsuite/g++.old-deja/g++.gb/scope07.C index 051bbb5..a0de269 100644 --- a/gcc/testsuite/g++.old-deja/g++.gb/scope07.C +++ b/gcc/testsuite/g++.old-deja/g++.gb/scope07.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed gb scope struct D { friend class A; diff --git a/gcc/testsuite/g++.old-deja/g++.gb/scope08.C b/gcc/testsuite/g++.old-deja/g++.gb/scope08.C index 2451965..4f7c1d3 100644 --- a/gcc/testsuite/g++.old-deja/g++.gb/scope08.C +++ b/gcc/testsuite/g++.old-deja/g++.gb/scope08.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed gb scope template <class X> class C { public: diff --git a/gcc/testsuite/g++.old-deja/g++.gb/scope09.C b/gcc/testsuite/g++.old-deja/g++.gb/scope09.C index cc17afc..8f7d539 100644 --- a/gcc/testsuite/g++.old-deja/g++.gb/scope09.C +++ b/gcc/testsuite/g++.old-deja/g++.gb/scope09.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed gb scope class enclose { int e; diff --git a/gcc/testsuite/g++.old-deja/g++.gb/scope10.C b/gcc/testsuite/g++.old-deja/g++.gb/scope10.C index 32caa60..b7fbabc 100644 --- a/gcc/testsuite/g++.old-deja/g++.gb/scope10.C +++ b/gcc/testsuite/g++.old-deja/g++.gb/scope10.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed gb scope void Foo (void) { diff --git a/gcc/testsuite/g++.old-deja/g++.gb/scope11.C b/gcc/testsuite/g++.old-deja/g++.gb/scope11.C index 19229df..45f540f 100644 --- a/gcc/testsuite/g++.old-deja/g++.gb/scope11.C +++ b/gcc/testsuite/g++.old-deja/g++.gb/scope11.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed gb scope template<class T, int N> class fixed_array { public: diff --git a/gcc/testsuite/g++.old-deja/g++.gb/scope12.C b/gcc/testsuite/g++.old-deja/g++.gb/scope12.C index 52916b9..664e791 100644 --- a/gcc/testsuite/g++.old-deja/g++.gb/scope12.C +++ b/gcc/testsuite/g++.old-deja/g++.gb/scope12.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed gb scope template<class T, int N> class FixedArray_t { public: diff --git a/gcc/testsuite/g++.old-deja/g++.gb/scope13.C b/gcc/testsuite/g++.old-deja/g++.gb/scope13.C index 9ca5ba8..5c625b9 100644 --- a/gcc/testsuite/g++.old-deja/g++.gb/scope13.C +++ b/gcc/testsuite/g++.old-deja/g++.gb/scope13.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed gb scope class X { public: diff --git a/gcc/testsuite/g++.old-deja/g++.jason/2371.C b/gcc/testsuite/g++.old-deja/g++.jason/2371.C index f2ec91c..c4263d6 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/2371.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/2371.C @@ -1,6 +1,7 @@ +// { dg-do run } +// { dg-options "" } # 1 "SetLS.cc" // GROUPS passed templates nested-classes -// Special g++ Options: // // The SetLS template test // diff --git a/gcc/testsuite/g++.old-deja/g++.jason/3523.C b/gcc/testsuite/g++.old-deja/g++.jason/3523.C index f47bd7b..a0ddc9c 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/3523.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/3523.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed assignment class ccUnwind { diff --git a/gcc/testsuite/g++.old-deja/g++.jason/access1.C b/gcc/testsuite/g++.old-deja/g++.jason/access1.C index fff77f2..9d71041 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/access1.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/access1.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // Bug: access declarations are broken. -// Build don't link: class A { public: @@ -13,5 +13,5 @@ public: void foo() { B b; - b.foo (); // gets bogus error - + b.foo (); // { dg-bogus "" } } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/access10.C b/gcc/testsuite/g++.old-deja/g++.jason/access10.C index 6db610c..a8a2bb9 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/access10.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/access10.C @@ -1,7 +1,7 @@ +// { dg-do assemble } // PRMS Id: 4839 // Bug: The initializer of a static member of a class has the same acess // rights as a member function. g++ doesn't realize that. -// Build don't link: class X { diff --git a/gcc/testsuite/g++.old-deja/g++.jason/access11.C b/gcc/testsuite/g++.old-deja/g++.jason/access11.C index 31a89b2..dd30e26 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/access11.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/access11.C @@ -1,6 +1,6 @@ +// { dg-do assemble } // PRMS Id: 4900 // Bug: g++ doesn't apply access control uniformly to type conversion operators -// Build don't link: struct A { protected: diff --git a/gcc/testsuite/g++.old-deja/g++.jason/access12.C b/gcc/testsuite/g++.old-deja/g++.jason/access12.C index 71e3361..a230069 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/access12.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/access12.C @@ -1,6 +1,6 @@ +// { dg-do assemble } // PRMS Id: 4694 // Bug: g++ doesn't realize that A::i refers to a member of `this' in B(). -// Build don't link: class A { protected: diff --git a/gcc/testsuite/g++.old-deja/g++.jason/access13.C b/gcc/testsuite/g++.old-deja/g++.jason/access13.C index c12dd81..a891aea 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/access13.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/access13.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // PRMS Id: 4955 -// Build don't link: struct A { protected: @@ -9,7 +9,7 @@ struct A { struct B: public A { void g () { - this->A::i = 1; // gets bogus error - access control failure - this->A::f(); // gets bogus error - access control failure + this->A::i = 1; // { dg-bogus "" } access control failure + this->A::f(); // { dg-bogus "" } access control failure } }; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/access14.C b/gcc/testsuite/g++.old-deja/g++.jason/access14.C index f181906..baebfe4 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/access14.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/access14.C @@ -1,10 +1,10 @@ -// Build don't link: +// { dg-do assemble } template <class T> struct A { T t; }; template <class T> class B: private T { public: - T::t; // gets bogus error - doesn't recognize access decl + T::t; // { dg-bogus "" } doesn't recognize access decl }; template class B<A<int> >; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/access15.C b/gcc/testsuite/g++.old-deja/g++.jason/access15.C index 1149a94..d7a30f9 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/access15.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/access15.C @@ -1,6 +1,6 @@ +// { dg-do assemble } // Bug: g++ complains about Z being a private base when trying to // initialize B::foo. -// Build don't link: struct Z { Z(); @@ -15,4 +15,4 @@ struct B : public A B(const B&); }; -B::B() : foo(1) { } // gets bogus error +B::B() : foo(1) { } // { dg-bogus "" } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/access16.C b/gcc/testsuite/g++.old-deja/g++.jason/access16.C index b8d43f3..4eb499b 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/access16.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/access16.C @@ -1,17 +1,17 @@ +// { dg-do assemble } // Bug: g++ uses the same binfo for the a subobject of c and the a subobject // of b, so basetype_paths get bashed improperly. -// Build don't link: class a { protected: - virtual void foo() { } // gets bogus error + virtual void foo() { } // { dg-bogus "" } }; class b : public virtual a {}; class c : public b { public: - void bar() { b::foo(); } // gets bogus error + void bar() { b::foo(); } // { dg-bogus "" } }; int main() { diff --git a/gcc/testsuite/g++.old-deja/g++.jason/access17.C b/gcc/testsuite/g++.old-deja/g++.jason/access17.C index 8f41b5f..f7a7acb 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/access17.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/access17.C @@ -1,10 +1,10 @@ +// { dg-do assemble } // Make sure definitions of static members have the right access. -// Build don't link: struct A { protected: - int i; // ERROR - private - int f (); // ERROR - + int i; // { dg-error "" } private + int f (); // { dg-error "" } }; struct B: public A { @@ -12,7 +12,7 @@ struct B: public A { static int (A::*fp)(); }; -int A::* B::p = &A::i; // ERROR - +int A::* B::p = &A::i; // { dg-error "" } int (A::* B::fp)() = &A::f; // ERROR - struct C { @@ -20,5 +20,5 @@ struct C { static int (A::*fp)(); }; -int A::* C::p = &A::i; // ERROR - -int (A::* C::fp)() = &A::f; // ERROR - +int A::* C::p = &A::i; // { dg-error "" } +int (A::* C::fp)() = &A::f; // { dg-error "" } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/access18.C b/gcc/testsuite/g++.old-deja/g++.jason/access18.C index 11b7e10..900058c 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/access18.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/access18.C @@ -1,19 +1,20 @@ +// { dg-do assemble } +// { dg-options "-w" } // PRMS Id: 5073 // Bug: g++ doesn't catch access violations in base initializers. -// Special g++ Options: -w int r = 0; class A { private: - A() { r = 1; } // ERROR - - ~A() {} // ERROR - + A() { r = 1; } // { dg-error "" } + ~A() {} // { dg-error "" } }; class B : public A { public: - B(): A() {} // ERROR - - B(const B&) {} // ERROR - - ~B() { } // ERROR - private dtor + B(): A() {} // { dg-error "" } + B(const B&) {} // { dg-error "" } + ~B() { } // { dg-error "" } private dtor }; main() diff --git a/gcc/testsuite/g++.old-deja/g++.jason/access2.C b/gcc/testsuite/g++.old-deja/g++.jason/access2.C index cacfbe1..ee5c0ea 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/access2.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/access2.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // Bug: g++ doesn't deal with friends also being derived classes. -// Build don't link: class A { int i; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/access20.C b/gcc/testsuite/g++.old-deja/g++.jason/access20.C index 96093dc..71ca137 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/access20.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/access20.C @@ -1,6 +1,6 @@ +// { dg-do assemble } // PRMS Id: 6662 // Bug: we crash trying to check the access on anglesSinesCosines. -// Build don't link: #define Double double diff --git a/gcc/testsuite/g++.old-deja/g++.jason/access21.C b/gcc/testsuite/g++.old-deja/g++.jason/access21.C index 340ed61..7d876fc 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/access21.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/access21.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // PRMS Id: 6877 -// Build don't link: typedef __SIZE_TYPE__ size_t; class aa { @@ -14,7 +14,7 @@ private: class bb { public: aa caa; -}; // gets bogus error - calling private delete +}; // { dg-bogus "" } calling private delete void f(){ diff --git a/gcc/testsuite/g++.old-deja/g++.jason/access22.C b/gcc/testsuite/g++.old-deja/g++.jason/access22.C index 225ef6c..efd09e5 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/access22.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/access22.C @@ -1,17 +1,18 @@ +// { dg-do assemble } // PRMS Id: 8518 // Bug: Call to foo is not checked for accessibility class A { private: - static void foo() {} // ERROR - + static void foo() {} // { dg-error "" } public: void goo() {} }; struct B : public A { - void func() { foo(); } // ERROR - + void func() { foo(); } // { dg-error "" } }; int main() diff --git a/gcc/testsuite/g++.old-deja/g++.jason/access23.C b/gcc/testsuite/g++.old-deja/g++.jason/access23.C index 99e0b45..ff2c8e8 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/access23.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/access23.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // PRMS Id: 9127 // Bug: members of anonymous unions are not access-controlled. @@ -16,24 +17,24 @@ public: int PUB_A; protected: union { - long B; // ERROR - protected - void *pY; // ERROR - protected + long B; // { dg-error "" } protected + void *pY; // { dg-error "" } protected } ; union Y { long B; void *pY; - } PRT; // ERROR - protected - int PRT_A; // ERROR - protected + } PRT; // { dg-error "" } protected + int PRT_A; // { dg-error "" } protected private: union { - long C; // ERROR - private - void *pZ; // ERROR - private + long C; // { dg-error "" } private + void *pZ; // { dg-error "" } private }; union Z { long C; void *pZ; - } PRV; // ERROR - private - int PRV_A; // ERROR - private + } PRV; // { dg-error "" } private + int PRV_A; // { dg-error "" } private }; struct Bar : public Foo { @@ -49,11 +50,11 @@ public: PRT_A = 0; PRT.B = 0; printf("%x\n",Foo::PRT.pY); - PRV_A = 0; // ERROR - - Foo::C = 0; // ERROR - - printf("%x\n",pZ); // ERROR - - Foo::PRV.C = 0; // ERROR - - printf("%x\n",PRV.pZ); // ERROR - + PRV_A = 0; // { dg-error "" } + Foo::C = 0; // { dg-error "" } + printf("%x\n",pZ); // { dg-error "" } + Foo::PRV.C = 0; // { dg-error "" } + printf("%x\n",PRV.pZ); // { dg-error "" } } }; @@ -64,16 +65,16 @@ int main() a.PUB_A = 0; a.A = 0; printf("%x\n",a.pX); - a.PRT_A = 0; // ERROR - - a.B = 0; // ERROR - - printf("%x\n",a.pY); // ERROR - - a.PRV_A = 0; // ERROR - - a.C = 0; // ERROR - - printf("%x\n",a.pZ); // ERROR - + a.PRT_A = 0; // { dg-error "" } + a.B = 0; // { dg-error "" } + printf("%x\n",a.pY); // { dg-error "" } + a.PRV_A = 0; // { dg-error "" } + a.C = 0; // { dg-error "" } + printf("%x\n",a.pZ); // { dg-error "" } a.PUB.A = 0; printf("%x\n",a.PUB.pX); - a.PRT.B = 0; // ERROR - - printf("%x\n",a.PRT.pY); // ERROR - - a.PRV.C = 0; // ERROR - - printf("%x\n",a.PRV.pZ); // ERROR - + a.PRT.B = 0; // { dg-error "" } + printf("%x\n",a.PRT.pY); // { dg-error "" } + a.PRV.C = 0; // { dg-error "" } + printf("%x\n",a.PRV.pZ); // { dg-error "" } } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/access24.C b/gcc/testsuite/g++.old-deja/g++.jason/access24.C index 7c42359..e633766 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/access24.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/access24.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // Bug: forward reference to friend doesn't work in template. -// Build don't link: template <class T> class A { static int i; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/access3.C b/gcc/testsuite/g++.old-deja/g++.jason/access3.C index fae6c93..c4e1b18 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/access3.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/access3.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // Simple testcase for access control. -// Build don't link: class A { protected: diff --git a/gcc/testsuite/g++.old-deja/g++.jason/access4.C b/gcc/testsuite/g++.old-deja/g++.jason/access4.C index 51f5fb1..fd4eb37 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/access4.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/access4.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // Simple testcase for access control. -// Build don't link: class A { protected: diff --git a/gcc/testsuite/g++.old-deja/g++.jason/access5.C b/gcc/testsuite/g++.old-deja/g++.jason/access5.C index 5eec43d..03e7d7a 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/access5.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/access5.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // Simple testcase for access control. -// Build don't link: class A { protected: diff --git a/gcc/testsuite/g++.old-deja/g++.jason/access6.C b/gcc/testsuite/g++.old-deja/g++.jason/access6.C index 24676d4..f75a44d 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/access6.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/access6.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // Simple testcase for access control. -// Build don't link: class A { public: diff --git a/gcc/testsuite/g++.old-deja/g++.jason/access7.C b/gcc/testsuite/g++.old-deja/g++.jason/access7.C index a1e908f..edb4bc9 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/access7.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/access7.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // Simple testcase for access control. -// Build don't link: class A { protected: @@ -9,5 +9,5 @@ class A { class B: public A {}; class C: public A {}; class D: public C, public B { - void g () { A::f(); } // gets bogus error - wrongly ambiguous static member call + void g () { A::f(); } // { dg-bogus "" } wrongly ambiguous static member call }; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/access8.C b/gcc/testsuite/g++.old-deja/g++.jason/access8.C index 71a1f02..0297c10 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/access8.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/access8.C @@ -1,9 +1,9 @@ +// { dg-do assemble } // From: smidt@dd.chalmers.se (Peter Smidt) // Date: 25 Jan 1994 23:41:33 -0500 // Bug: g++ forgets access decls after the definition. -// Build don't link: -class inh { // ERROR - inaccessible +class inh { // { dg-error "" } inaccessible int a; protected: void myf(int); @@ -25,6 +25,6 @@ void inh::myf(int i) { } void top_t::myf(int i) { - inh::myf(i); // ERROR - cannot convert to inh + inh::myf(i); // { dg-error "" } cannot convert to inh mel::myf(i); } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/access9.C b/gcc/testsuite/g++.old-deja/g++.jason/access9.C index f9c2797..6cc1440 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/access9.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/access9.C @@ -1,9 +1,9 @@ +// { dg-do assemble } // Bug: g++ doesn't allow const objects to be constructed. -// Build don't link: struct B { B(); }; const B foo() { - return B(); // gets bogus error - constructing const + return B(); // { dg-bogus "" } constructing const } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/aggregate.C b/gcc/testsuite/g++.old-deja/g++.jason/aggregate.C index 8128d8d..f739e56 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/aggregate.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/aggregate.C @@ -1,3 +1,4 @@ +// { dg-do run } struct A { int i; }; int main() diff --git a/gcc/testsuite/g++.old-deja/g++.jason/ambig1.C b/gcc/testsuite/g++.old-deja/g++.jason/ambig1.C index 4551dc7..9be10eb 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/ambig1.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/ambig1.C @@ -1,6 +1,7 @@ +// { dg-do assemble } +// { dg-options "-pedantic-errors" } // Testcase for ambiguity between functional cast and abstract declarator. // This ambiguity accounts for 6 of the r/r conflicts. -// Special g++ Options: -pedantic-errors -int i = sizeof (int ()); // ERROR - sizeof applied to fn type +int i = sizeof (int ()); // { dg-error "" } sizeof applied to fn type int j = sizeof (int () + 1); diff --git a/gcc/testsuite/g++.old-deja/g++.jason/ambig2.C b/gcc/testsuite/g++.old-deja/g++.jason/ambig2.C index c6da752..1a6f67f 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/ambig2.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/ambig2.C @@ -1,11 +1,11 @@ +// { dg-do assemble } +// { dg-options "-Wno-pointer-arith" } // Testcase for ambiguity between cast and parmlist. // This ambiguity accounts for 1 of the r/r conflicts. // Do not compile with -pedantic so that the compiler will accept taking // the sizeof a function type. -// Special g++ Options: -Wno-pointer-arith -// Build don't link: void f(){ (void)sizeof(int((int)1.2)); - (void)sizeof(int((int))); // gets bogus error - + (void)sizeof(int((int))); // { dg-bogus "" } } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/ambig3.C b/gcc/testsuite/g++.old-deja/g++.jason/ambig3.C index 867a179..08cf2b7 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/ambig3.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/ambig3.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // Testcase for ambiguity between function and variable declaration (8.2). -// Build don't link: struct A { A (int, int); @@ -9,8 +9,8 @@ struct A { void f () { int i[2], j; - A a (int (i[1]), j); // gets bogus error - late parsing + A a (int (i[1]), j); // { dg-bogus "" } late parsing A b (int (i[1]), int j); // function - a.k = 0; // gets bogus error - late parsing + a.k = 0; // { dg-bogus "" } late parsing b (i, j); } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/anon.C b/gcc/testsuite/g++.old-deja/g++.jason/anon.C index 63d17a8..e970359 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/anon.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/anon.C @@ -1,3 +1,4 @@ +// { dg-do run } // Bug: g++ has trouble copying anonymous structs. typedef struct { int i; } foo; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/anon2.C b/gcc/testsuite/g++.old-deja/g++.jason/anon2.C index 55d6898..2aba556 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/anon2.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/anon2.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // g++ should not complain about anonymous bitfields. -// Build don't link: struct A { diff --git a/gcc/testsuite/g++.old-deja/g++.jason/anon3.C b/gcc/testsuite/g++.old-deja/g++.jason/anon3.C index 96353fc..d2964f5 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/anon3.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/anon3.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // Bug: g++ dies. -// Build don't link: class cl { public: @@ -8,7 +8,7 @@ public: private: union { float vf; - struct ff { // ERROR - nested class in anonymous union + struct ff { // { dg-error "" } nested class in anonymous union void *ptr; char *name; int sz; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/anon4.C b/gcc/testsuite/g++.old-deja/g++.jason/anon4.C index de0b40e..588bf26 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/anon4.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/anon4.C @@ -1,7 +1,7 @@ +// { dg-do assemble } +// { dg-options "-O" } // PRMS Id: 5371 // Bug: g++ screws up the alignment of buff and dies. -// Build don't link: -// Special g++ Options: -O main() { diff --git a/gcc/testsuite/g++.old-deja/g++.jason/binding.C b/gcc/testsuite/g++.old-deja/g++.jason/binding.C index cc6f25c..1f297b7 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/binding.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/binding.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // Bug: g++ only looks in the current temporary binding level for a name. struct T { ~T(); }; @@ -5,7 +6,7 @@ struct T { ~T(); }; int main() { foo: - T t; // ERROR - redeclared + T t; // { dg-error "" } redeclared bar: - T t; // ERROR - redeclaration + T t; // { dg-error "" } redeclaration } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/binding2.C b/gcc/testsuite/g++.old-deja/g++.jason/binding2.C index e56a054..5a73281 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/binding2.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/binding2.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // Bug: g++ screws up binding levels in a switch statement with cleanups. -// Build don't link: struct A { ~A() { } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/binding3.C b/gcc/testsuite/g++.old-deja/g++.jason/binding3.C index 3cd358f..5ed4bd1 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/binding3.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/binding3.C @@ -1,6 +1,6 @@ +// { dg-do assemble } // Bug: g++ fails to clear out the IDENTIFIER_CLASS_VALUEs of various names // after a class definition. -// Build don't link: struct A { typedef double T; @@ -16,5 +16,5 @@ public: }; struct C : public A { - T f (); // gets bogus error + T f (); // { dg-bogus "" } }; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/bool.C b/gcc/testsuite/g++.old-deja/g++.jason/bool.C index 30eb23f..5e897bc 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/bool.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/bool.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // Testcase for uses of bool. -// Build don't link: int i,j,k; @@ -22,7 +22,7 @@ void g () { a || true; b || true; - c || true; // gets bogus error + c || true; // { dg-bogus "" } d || true; e || true; } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/bool2.C b/gcc/testsuite/g++.old-deja/g++.jason/bool2.C index 559b7d0..e77bd84 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/bool2.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/bool2.C @@ -1,3 +1,4 @@ +// { dg-do run } // Make sure that bool bitfields promote to int properly. struct F { diff --git a/gcc/testsuite/g++.old-deja/g++.jason/bool3.C b/gcc/testsuite/g++.old-deja/g++.jason/bool3.C index d8e9514..4e31003 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/bool3.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/bool3.C @@ -1,13 +1,13 @@ +// { dg-do assemble } // From: panisset@cae.ca (Jean-Francois Panisset) // Subject: Problem with constant expressions for bitfields // Date: Mon, 6 Jun 94 14:00:01 EDT // Bug: g++ doesn't treat boolean true and false as constant values. -// Build don't link: enum E { e1,e2,e3,e4,e5 }; struct X { - unsigned int bits : ((e5 > 4) ? 8 : 4); // gets bogus error - constant expression + unsigned int bits : ((e5 > 4) ? 8 : 4); // { dg-bogus "" } constant expression }; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/bool4.C b/gcc/testsuite/g++.old-deja/g++.jason/bool4.C index 8c4695d..03b670c 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/bool4.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/bool4.C @@ -1,3 +1,4 @@ +// { dg-do run } // Test for allowing conversion to bool. struct A { }; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/bool5.C b/gcc/testsuite/g++.old-deja/g++.jason/bool5.C index 8f8e37d..1d2f5b6 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/bool5.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/bool5.C @@ -1,3 +1,4 @@ +// { dg-do run } int main () { bool b = false; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/bool6.C b/gcc/testsuite/g++.old-deja/g++.jason/bool6.C index 493e25f..30d0469 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/bool6.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/bool6.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // Bug: The conversion from bool to int gets stripped. -// Build don't link: bool b; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/bool7.C b/gcc/testsuite/g++.old-deja/g++.jason/bool7.C index 1ecb68d..dd1a6f2 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/bool7.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/bool7.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } struct A { diff --git a/gcc/testsuite/g++.old-deja/g++.jason/builtin.C b/gcc/testsuite/g++.old-deja/g++.jason/builtin.C index 0e0cc48..e310165 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/builtin.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/builtin.C @@ -1,6 +1,6 @@ +// { dg-do assemble } +// { dg-options "-w" } // Bug: g++ overloads strlen instead of bashing the builtin version. -// Special g++ Options: -w -// Build don't link: extern "C" void strlen (const char *); diff --git a/gcc/testsuite/g++.old-deja/g++.jason/builtin2.C b/gcc/testsuite/g++.old-deja/g++.jason/builtin2.C index e48e189..16e4f4a 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/builtin2.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/builtin2.C @@ -1,8 +1,8 @@ -// Build don't link: +// { dg-do assemble } static inline void strlen (const char *) { } void f () { - strlen("Hi"); // gets bogus error - wrongful overload + strlen("Hi"); // { dg-bogus "" } wrongful overload } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/byval.C b/gcc/testsuite/g++.old-deja/g++.jason/byval.C index bd17797..e09c6ea 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/byval.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/byval.C @@ -1,3 +1,4 @@ +// { dg-do run } // Bug: a is destroyed in both foo() and main() int count; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/byval2.C b/gcc/testsuite/g++.old-deja/g++.jason/byval2.C index 6202581..942e714 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/byval2.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/byval2.C @@ -1,7 +1,7 @@ +// { dg-do assemble } // From: panisset@cae.ca (Jean-Francois Panisset) // Subject: 2.6.0 pre-rel, internal error, regression, mips-sgi-irix4 // Date: Thu, 14 Jul 94 23:34:21 EDT -// Build don't link: class Char { diff --git a/gcc/testsuite/g++.old-deja/g++.jason/byval3.C b/gcc/testsuite/g++.old-deja/g++.jason/byval3.C index 7c2a798..f56fc12 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/byval3.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/byval3.C @@ -1,6 +1,6 @@ +// { dg-do assemble } // Test to make sure that value return of classes with cleanups works; it // has been broken at various times on PCC_STATIC_STRUCT_RETURN targets. -// Build don't link: struct A {}; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/c-inline.C b/gcc/testsuite/g++.old-deja/g++.jason/c-inline.C index 7e90c4e..c16fbde 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/c-inline.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/c-inline.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // Bug: the compiler gets hopelessly confused. -// Build don't link: #line 1 "c-inline.h" #pragma interface diff --git a/gcc/testsuite/g++.old-deja/g++.jason/cast1.C b/gcc/testsuite/g++.old-deja/g++.jason/cast1.C index 4e987ea..2bc16f3 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/cast1.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/cast1.C @@ -1,8 +1,8 @@ +// { dg-do assemble } // Bug: g++ fails to grok functional casts in all situations. -// Build don't link: class A { public: typedef int B; - static B foo() { return B(1); } // gets bogus error - + static B foo() { return B(1); } // { dg-bogus "" } }; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/cast2.C b/gcc/testsuite/g++.old-deja/g++.jason/cast2.C index 02495b3..bd0fe79 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/cast2.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/cast2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // The compiler tried to build up a double with a NOP_EXPR from // integer_zero_node, which fails. diff --git a/gcc/testsuite/g++.old-deja/g++.jason/cast3.C b/gcc/testsuite/g++.old-deja/g++.jason/cast3.C index 141efd5..fa34742 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/cast3.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/cast3.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // PRMS Id: 7088 -// Build don't link: struct string { diff --git a/gcc/testsuite/g++.old-deja/g++.jason/cleanup.C b/gcc/testsuite/g++.old-deja/g++.jason/cleanup.C index d9addde..adf8246 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/cleanup.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/cleanup.C @@ -1,3 +1,4 @@ +// { dg-do run } // Bug: continue over object decl calls destructor but not constructor. int c = 0; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/cleanup2.C b/gcc/testsuite/g++.old-deja/g++.jason/cleanup2.C index fdae1b7..2590bcb 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/cleanup2.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/cleanup2.C @@ -1,6 +1,6 @@ +// { dg-do assemble } // PRMS Id: 6303 // Bug: compiler crashes processing the cleanup for arrayOfClass. -// Build don't link: class Class { public: diff --git a/gcc/testsuite/g++.old-deja/g++.jason/complete1.C b/gcc/testsuite/g++.old-deja/g++.jason/complete1.C index 0f140e1..d854ffd 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/complete1.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/complete1.C @@ -1,6 +1,6 @@ +// { dg-do assemble } // PRMS Id: 4695 // Bug: g++ wrongly requires A to be complete here. -// Build don't link: struct A; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/cond.C b/gcc/testsuite/g++.old-deja/g++.jason/cond.C index 3cfc6db..0242088 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/cond.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/cond.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed rtti // Negative testcase for decls in conditions. @@ -6,39 +6,39 @@ int main() { float i; - if (int i = 1) // ERROR - , XFAIL *-*-* + if (int i = 1) // { dg-error "" "" { xfail *-*-* } } , { - char i; // ERROR - , XFAIL *-*-* + char i; // { dg-error "" "" { xfail *-*-* } } , char j; } else { - short i; // ERROR - , XFAIL *-*-* + short i; // { dg-error "" "" { xfail *-*-* } } , char j; } - while (int i = 0) // ERROR - XFAIL *-*-* + while (int i = 0) // { dg-error "" "" { xfail *-*-* } } { - int i; // ERROR - XFAIL *-*-* + int i; // { dg-error "" "" { xfail *-*-* } } } - for (; int i = 0; ) // ERROR - XFAIL *-*-* + for (; int i = 0; ) // { dg-error "" "" { xfail *-*-* } } { - int i; // ERROR - XFAIL *-*-* + int i; // { dg-error "" "" { xfail *-*-* } } } - switch (int i = 0) // ERROR - XFAIL *-*-* + switch (int i = 0) // { dg-error "" "" { xfail *-*-* } } { default: - int i; // ERROR - XFAIL *-*-* + int i; // { dg-error "" "" { xfail *-*-* } } } - if (struct A { operator int () { return 1; } } *foo = new A) // ERROR - + if (struct A { operator int () { return 1; } } *foo = new A) // { dg-error "" } ; - A bar; // ERROR - + A bar; // { dg-error "" } - if (enum A { one, two, three } foo = one) // ERROR - + if (enum A { one, two, three } foo = one) // { dg-error "" } ; struct B { operator int () { return 2; } }; @@ -46,10 +46,10 @@ int main() if (struct B * foo = new B) ; - if (int f () = 1) // ERROR - + if (int f () = 1) // { dg-error "" } ; - if (int a[2] = {1, 2}) // ERROR - + if (int a[2] = {1, 2}) // { dg-error "" } ; } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/cond2.C b/gcc/testsuite/g++.old-deja/g++.jason/cond2.C index 9a8e045..d1ff6a9 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/cond2.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/cond2.C @@ -1,3 +1,4 @@ +// { dg-do run } // Positive testcase for decls in conditions. extern "C" int printf(const char *, ...); diff --git a/gcc/testsuite/g++.old-deja/g++.jason/condexp.C b/gcc/testsuite/g++.old-deja/g++.jason/condexp.C index edfd12e..be33365 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/condexp.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/condexp.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // PRMS id: 5629 -// Build don't link: struct String { const char *x; }; class Pathname: public String { }; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/const.C b/gcc/testsuite/g++.old-deja/g++.jason/const.C index 2faf8e5..7c497ee 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/const.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/const.C @@ -1,3 +1,4 @@ +// { dg-do run } // Bug: a ends up in the text segment, so trying to initialize it causes // a seg fault. diff --git a/gcc/testsuite/g++.old-deja/g++.jason/const2.C b/gcc/testsuite/g++.old-deja/g++.jason/const2.C index 7dd956b..b6aa6d4 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/const2.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/const2.C @@ -1,3 +1,4 @@ +// { dg-do run } // Example of static member constants extern "C" int printf (const char *, ...); diff --git a/gcc/testsuite/g++.old-deja/g++.jason/const3.C b/gcc/testsuite/g++.old-deja/g++.jason/const3.C index 3ff8f0c..813b398 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/const3.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/const3.C @@ -1,3 +1,4 @@ +// { dg-do run } // Bug: bar isn't emitted, which causes havoc. extern int i; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/const4.C b/gcc/testsuite/g++.old-deja/g++.jason/const4.C index b8b8efa..d29c46b 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/const4.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/const4.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // PRMS Id: 8927 // Bug: complex inheritance interferes with const checking @@ -20,5 +21,5 @@ public: void Child::DoX() const { - A = 10; // ERROR - assignment to const + A = 10; // { dg-error "" } assignment to const } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/context.C b/gcc/testsuite/g++.old-deja/g++.jason/context.C index a9a8363..a4d30bf 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/context.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/context.C @@ -1,6 +1,6 @@ +// { dg-do assemble } // PRMS Id: 3988 // Bug: DECL_CONTEXT of A::B gets clobbered in pushdecl when defining A::foo(). -// Build don't link: #pragma implementation "context.h" #line 1 "context.h" diff --git a/gcc/testsuite/g++.old-deja/g++.jason/conversion.C b/gcc/testsuite/g++.old-deja/g++.jason/conversion.C index 80436f3..4c4b961 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/conversion.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/conversion.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // Bug: g++ doesn't find the conversion path from DPtr& to B*. -// Build don't link: class B {}; class D : public B {}; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/conversion10.C b/gcc/testsuite/g++.old-deja/g++.jason/conversion10.C index 97bb707..8cbba41 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/conversion10.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/conversion10.C @@ -1,6 +1,6 @@ +// { dg-do assemble } // PRMS Id: 9019 // Bug: g++ doesn't find conversion to const char *. -// Build don't link: struct String { String (); diff --git a/gcc/testsuite/g++.old-deja/g++.jason/conversion11.C b/gcc/testsuite/g++.old-deja/g++.jason/conversion11.C index c0c6ca4..368dcbc 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/conversion11.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/conversion11.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // PRMS Id: 8805 // Bug: The two-level conversion is not found when calling a global fn. @@ -13,14 +14,14 @@ public: class Something { public: - void DoSomething(Ding A); // ERROR - referred to + void DoSomething(Ding A); // { dg-error "" } referred to }; void DoSomething(Ding A); void foo(Something* pX) { - DoSomething(1); // ERROR - - pX->DoSomething(1); // ERROR - - (*pX).DoSomething(1); // ERROR - + DoSomething(1); // { dg-error "" } + pX->DoSomething(1); // { dg-error "" } + (*pX).DoSomething(1); // { dg-error "" } } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/conversion2.C b/gcc/testsuite/g++.old-deja/g++.jason/conversion2.C index db773d6..ebc2bd1 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/conversion2.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/conversion2.C @@ -1,6 +1,7 @@ +// { dg-do assemble } // PRMS Id: 3069 -void f(int&); // ERROR - referenced by error below +void f(int&); // { dg-error "" } referenced by error below void g(const int& i) { - f(i); // ERROR - discarding const + f(i); // { dg-error "" } discarding const } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/conversion3.C b/gcc/testsuite/g++.old-deja/g++.jason/conversion3.C index 0d66c1e..6dbd475 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/conversion3.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/conversion3.C @@ -1,7 +1,8 @@ +// { dg-do assemble } void qsort (void *, int, int, int (*)(const void *, const void *)); int f (char *, char *); void g () { typedef int (*pf)(void *, void *); - qsort(0, 0, 0, pf(f)); // ERROR - adding const to function parms + qsort(0, 0, 0, pf(f)); // { dg-error "" } adding const to function parms } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/conversion4.C b/gcc/testsuite/g++.old-deja/g++.jason/conversion4.C index 7caca19..68973a5 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/conversion4.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/conversion4.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } struct A { A (int); }; @@ -10,5 +10,5 @@ void g() { B b; f ((A) b); - f (A (b)); // gets bogus error - functional cast treated differently from C style + f (A (b)); // { dg-bogus "" } functional cast treated differently from C style } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/conversion5.C b/gcc/testsuite/g++.old-deja/g++.jason/conversion5.C index 303860b..e409fae 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/conversion5.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/conversion5.C @@ -1,12 +1,12 @@ -// Build don't link: +// { dg-do assemble } struct A { }; struct B: public A { A a; - operator A () { return a; } // WARNING - never used implicitly + operator A () { return a; } // { dg-warning "" } never used implicitly }; void f (const A&); void g() { B b; - (A) b; // gets bogus error - trying both constructor and type conversion operator + (A) b; // { dg-bogus "" } trying both constructor and type conversion operator } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/conversion6.C b/gcc/testsuite/g++.old-deja/g++.jason/conversion6.C index a8477e3..5f5a51a 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/conversion6.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/conversion6.C @@ -1,3 +1,4 @@ +// { dg-do run } // PRMS Id: g++/6034 extern "C" int printf (const char *, ...); diff --git a/gcc/testsuite/g++.old-deja/g++.jason/conversion7.C b/gcc/testsuite/g++.old-deja/g++.jason/conversion7.C index 01812f5..925433e 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/conversion7.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/conversion7.C @@ -1,3 +1,4 @@ +// { dg-do run } // Bug: g++ tries to look inside (B*)0 for a virtual base pointer. struct A diff --git a/gcc/testsuite/g++.old-deja/g++.jason/conversion8.C b/gcc/testsuite/g++.old-deja/g++.jason/conversion8.C index 0c3d378..c23b0de 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/conversion8.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/conversion8.C @@ -1,3 +1,4 @@ +// { dg-do run } // PRMS id: 8279 int main () diff --git a/gcc/testsuite/g++.old-deja/g++.jason/conversion9.C b/gcc/testsuite/g++.old-deja/g++.jason/conversion9.C index e0d3715..aeda028 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/conversion9.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/conversion9.C @@ -1,3 +1,4 @@ +// { dg-do run } // PRMS Id: 8475 class SomeClass { diff --git a/gcc/testsuite/g++.old-deja/g++.jason/crash1.C b/gcc/testsuite/g++.old-deja/g++.jason/crash1.C index 2982734..078f349 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/crash1.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/crash1.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // Bug: g++ dies on this input. -// Build don't link: class Sample { diff --git a/gcc/testsuite/g++.old-deja/g++.jason/crash10.C b/gcc/testsuite/g++.old-deja/g++.jason/crash10.C index b966944..cd9b7b0 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/crash10.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/crash10.C @@ -1,7 +1,8 @@ +// { dg-do assemble } // PRMS Id: 5155 struct A { enum foo { bar }; }; -typedef A::foo A::foo; // ERROR - causes compiler segfault +typedef A::foo A::foo; // { dg-error "" } causes compiler segfault diff --git a/gcc/testsuite/g++.old-deja/g++.jason/crash11.C b/gcc/testsuite/g++.old-deja/g++.jason/crash11.C index 51d1629..e88eb78 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/crash11.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/crash11.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // Bug: g++ crashes on this input. -// Build don't link: struct A { const char *p; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/crash12.C b/gcc/testsuite/g++.old-deja/g++.jason/crash12.C index 46d6322..c3906a8 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/crash12.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/crash12.C @@ -1,10 +1,10 @@ +// { dg-do assemble } // Bug: g++ dies instead of flagging this invalid. -// Build don't link: inline float max(float x, float y) { return (x>y)?x:y; } float b(float x, float y, float z) { - float f = (y<x)?x:(max<y)?z:y; // ERROR - + float f = (y<x)?x:(max<y)?z:y; // { dg-error "" } return f; } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/crash3.C b/gcc/testsuite/g++.old-deja/g++.jason/crash3.C index bf63291..4a3d097 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/crash3.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/crash3.C @@ -1,13 +1,13 @@ +// { dg-do assemble } // Bug: g++ tries to generate initialization semantics for a Node from an int, // and fails. -// Build don't link: struct Node -{ // ERROR - +{ // { dg-error "" } Node* child[2]; }; void bug(int i) { - Node* q = new Node(i); // ERROR - + Node* q = new Node(i); // { dg-error "" } } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/crash4.C b/gcc/testsuite/g++.old-deja/g++.jason/crash4.C index bf6a15c..70f054b 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/crash4.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/crash4.C @@ -1,6 +1,6 @@ +// { dg-do assemble } // PRMS Id: 4346 // Bug: g++ dies on redefinition of cc_Array::repInvariant. -// Build don't link: class ccObjectInfo { @@ -17,7 +17,7 @@ public: template <class T> const ccObjectInfo& cc_Array<T>::repInvariant(int) const -{ return *this /* *this is required here */; } // ERROR - redefined +{ return *this /* *this is required here */; } // { dg-error "" } redefined template <class T> class ccArray :public ccObjectInfo @@ -33,6 +33,6 @@ class ccObjArray : public ccArray<T> template <class T> const ccObjectInfo& cc_Array<T>::repInvariant(int) const -{ return 0; } // ERROR - causes compiler segfault +{ return 0; } // { dg-error "" } causes compiler segfault typedef ccObjArray< double> ccROIRuns; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/crash5.C b/gcc/testsuite/g++.old-deja/g++.jason/crash5.C index b67376f..ae9e0e5 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/crash5.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/crash5.C @@ -1,4 +1,4 @@ +// { dg-do assemble } // Bug: g++ doesn't deal well with abstract declarators used inappropriately. -// Build don't link: -void (*)(); // ERROR - +void (*)(); // { dg-error "" } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/crash6.C b/gcc/testsuite/g++.old-deja/g++.jason/crash6.C index 8e0a9c8..274f338 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/crash6.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/crash6.C @@ -1,9 +1,9 @@ +// { dg-do assemble } // Bug: g++ dies on the below. -// Build don't link: class A { }; void f () { A a; - a.~a(); // ERROR - causes segfault + a.~a(); // { dg-error "" } causes segfault } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/crash7.C b/gcc/testsuite/g++.old-deja/g++.jason/crash7.C index e7dd8f7..95c7c2f 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/crash7.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/crash7.C @@ -1,5 +1,6 @@ +// { dg-do assemble } // Bug: g++ can't deal. -typedef unsigned size_t; // ERROR - previous declaration -typedef unsigned long size_t; // ERROR - redefining size_t +typedef unsigned size_t; // { dg-error "" } previous declaration +typedef unsigned long size_t; // { dg-error "" } redefining size_t void f (size_t); // causes compiler segfault - diff --git a/gcc/testsuite/g++.old-deja/g++.jason/crash8.C b/gcc/testsuite/g++.old-deja/g++.jason/crash8.C index cadda2f..061652d 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/crash8.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/crash8.C @@ -1,6 +1,7 @@ +// { dg-do assemble } struct A { A(); - A(A); // ERROR - copy ctor must take reference + A(A); // { dg-error "" } copy ctor must take reference }; int main() { diff --git a/gcc/testsuite/g++.old-deja/g++.jason/crash9.C b/gcc/testsuite/g++.old-deja/g++.jason/crash9.C index 6cacb11..292d354 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/crash9.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/crash9.C @@ -1,6 +1,6 @@ +// { dg-do assemble } // PRMS Id: 5085 // Bug: TYPE_POINTER_TO wasn't set. -// Build don't link: class A { A(const A &); diff --git a/gcc/testsuite/g++.old-deja/g++.jason/ctor1.C b/gcc/testsuite/g++.old-deja/g++.jason/ctor1.C index ba897f1..7390719 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/ctor1.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/ctor1.C @@ -1,3 +1,4 @@ +// { dg-do run } // PRMS Id: 5584 extern "C" diff --git a/gcc/testsuite/g++.old-deja/g++.jason/ctor2.C b/gcc/testsuite/g++.old-deja/g++.jason/ctor2.C index bf37c11..e396dc0 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/ctor2.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/ctor2.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // Bug: the reference to c in the initializer list doesn't get fixed up. -// Build don't link: struct AP { AP(unsigned char); diff --git a/gcc/testsuite/g++.old-deja/g++.jason/dcast1.C b/gcc/testsuite/g++.old-deja/g++.jason/dcast1.C index f4d93c3..9336cba 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/dcast1.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/dcast1.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // PRMS Id: 7162 -// Build don't link: struct B { int i; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/dcast2.C b/gcc/testsuite/g++.old-deja/g++.jason/dcast2.C index e42c71d..6274083 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/dcast2.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/dcast2.C @@ -1,3 +1,4 @@ +// { dg-do run } struct A { virtual void f() { } }; struct B { virtual void g() { } }; struct C : public A, public B { }; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/dcast3.C b/gcc/testsuite/g++.old-deja/g++.jason/dcast3.C index a67a1dd..a617918 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/dcast3.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/dcast3.C @@ -1,3 +1,4 @@ +// { dg-do run } // Testcase for tricky dynamic cast situations. struct A { diff --git a/gcc/testsuite/g++.old-deja/g++.jason/default1.C b/gcc/testsuite/g++.old-deja/g++.jason/default1.C index 0372d91..afbac13 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/default1.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/default1.C @@ -1,10 +1,10 @@ +// { dg-do assemble } // PRMS Id: 5204 // Bug: g++ bashes the type of add_sym with the type of add, so calling it // with one parameter generates an error. -// Build don't link: int add(int const &symbol, - const unsigned char flags=(void*)0); // ERROR - invalid default arg + const unsigned char flags=(void*)0); // { dg-error "" } invalid default arg int add_sym(int const &symbol, const unsigned char flags=0); diff --git a/gcc/testsuite/g++.old-deja/g++.jason/default2.C b/gcc/testsuite/g++.old-deja/g++.jason/default2.C index f50ee2f..079ffab 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/default2.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/default2.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // PRMS Id: 5921 -// Build don't link: // Bug: default arguments containing constructor calls persist incorrectly. class foo diff --git a/gcc/testsuite/g++.old-deja/g++.jason/default3.C b/gcc/testsuite/g++.old-deja/g++.jason/default3.C index 05af3b6..3e4951c 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/default3.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/default3.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // Bug: type_list_equal aborts when it sees lang-specific tree nodes. -// Build don't link: struct A { }; void f (A a = A()); diff --git a/gcc/testsuite/g++.old-deja/g++.jason/defctor.C b/gcc/testsuite/g++.old-deja/g++.jason/defctor.C index 68cf25c..76efaa1 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/defctor.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/defctor.C @@ -1,3 +1,4 @@ +// { dg-do run } // Bug: g++ doesn't generate default constructor. class A { diff --git a/gcc/testsuite/g++.old-deja/g++.jason/delete1.C b/gcc/testsuite/g++.old-deja/g++.jason/delete1.C index a176652..b170b2d 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/delete1.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/delete1.C @@ -1,5 +1,6 @@ +// { dg-do assemble } #include <stddef.h> struct A { - virtual void operator delete (void *); // ERROR - virtual delete - virtual void * operator new (size_t); // ERROR - virtual new + virtual void operator delete (void *); // { dg-error "" } virtual delete + virtual void * operator new (size_t); // { dg-error "" } virtual new }; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/delete2.C b/gcc/testsuite/g++.old-deja/g++.jason/delete2.C index 7748e2b..c6230ee 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/delete2.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/delete2.C @@ -1,6 +1,6 @@ +// { dg-do assemble } // PRMS Id: 5003 // Bug: g++ complains about calling the destructor for a const object. -// Build don't link: struct A { public: @@ -12,5 +12,5 @@ const A foo (); void bar() { A n; - n = foo(); // gets bogus error - deleting const + n = foo(); // { dg-bogus "" } deleting const } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/delete3.C b/gcc/testsuite/g++.old-deja/g++.jason/delete3.C index 8bffb9a..bde62d9 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/delete3.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/delete3.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // PRMS Id: 6093 class A { @@ -5,7 +6,7 @@ public: A(); ~A(); protected: - void operator delete(void *); // ERROR - protected + void operator delete(void *); // { dg-error "" } protected }; A::~A() @@ -14,5 +15,5 @@ A::~A() void foo(A *p) { - delete p; // ERROR - in this context + delete p; // { dg-error "" } in this context } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/destruct.C b/gcc/testsuite/g++.old-deja/g++.jason/destruct.C index 6c9c296..b0f2dfe 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/destruct.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/destruct.C @@ -1,6 +1,6 @@ +// { dg-do assemble } // Exhaustive test for destructors of simple types. // PRMS Id: 2744, 3308 -// Build don't link: template <class T> class A { T q; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/destruct2.C b/gcc/testsuite/g++.old-deja/g++.jason/destruct2.C index 09b6bdd..a28860f 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/destruct2.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/destruct2.C @@ -1,6 +1,6 @@ +// { dg-do assemble } // PRMS Id: 4342 // Bug: g++ does not massage things enough to allow calling ~X(). -// Build don't link: struct X { @@ -11,10 +11,10 @@ struct Y : public X {}; struct Z : public Y, public X -{}; // WARNING - +{}; // { dg-warning "" } void foo () { Z* f = new Z; - delete f; // gets bogus error - + delete f; // { dg-bogus "" } } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/destruct3.C b/gcc/testsuite/g++.old-deja/g++.jason/destruct3.C index d4bbf9a..3dc287c 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/destruct3.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/destruct3.C @@ -1,7 +1,7 @@ -// Special g++ Options: -w +// { dg-do assemble } +// { dg-options "-w" } // PRMS Id: 4342 (second testcase) // Bug: g++ still can't deal with ambiguous inheritance in destructor calls. -// Build don't link: struct ccUnwind { diff --git a/gcc/testsuite/g++.old-deja/g++.jason/destruct4.C b/gcc/testsuite/g++.old-deja/g++.jason/destruct4.C index 3ce7d76..4d4800b 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/destruct4.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/destruct4.C @@ -1,6 +1,6 @@ +// { dg-do assemble } // PRMS Id: 4342 // Bug: g++ fails to massage ambiguity in calling virtual destructor. -// Build don't link: class A { public: virtual ~A();}; class B: public A { }; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/dot.C b/gcc/testsuite/g++.old-deja/g++.jason/dot.C index 3870eea..41b8d81 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/dot.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/dot.C @@ -1,6 +1,6 @@ +// { dg-do assemble } // PRMS Id: 4143 // Bug: Pointer is silently dereferenced in method call. -// Build don't link: extern "C" int printf (const char *, ...); @@ -16,5 +16,5 @@ int main() { Test *p = new Test('x'); - p.Print(); // ERROR - + p.Print(); // { dg-error "" } } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/dtor.C b/gcc/testsuite/g++.old-deja/g++.jason/dtor.C index db76e17..2dc5f8c 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/dtor.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/dtor.C @@ -1,3 +1,4 @@ +// { dg-do assemble } struct A { ~A(); }; @@ -9,5 +10,5 @@ struct B { int main() { A a; - a.~B(); // ERROR - wrong name + a.~B(); // { dg-error "" } wrong name } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/dtor2.C b/gcc/testsuite/g++.old-deja/g++.jason/dtor2.C index c088e3f..fa1e0a9 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/dtor2.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/dtor2.C @@ -1,3 +1,4 @@ +// { dg-do run } // PRMS Id: 5163 // Bug: g++ doesn't accept the explicit destructor call syntax for templates. @@ -6,5 +7,5 @@ A<int> a; int main() { - a.~A(); // gets bogus error + a.~A(); // { dg-bogus "" } } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/dtor3.C b/gcc/testsuite/g++.old-deja/g++.jason/dtor3.C index 5b17bcc..8eb887e 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/dtor3.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/dtor3.C @@ -1,6 +1,6 @@ +// { dg-do assemble } // PRMS Id: 5341 // Bug: g++ complains about the explicit destructor notation. -// Build don't link: #include <stddef.h> diff --git a/gcc/testsuite/g++.old-deja/g++.jason/dtor4.C b/gcc/testsuite/g++.old-deja/g++.jason/dtor4.C index dfdc3aa..25ef1cfe 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/dtor4.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/dtor4.C @@ -1,6 +1,6 @@ +// { dg-do assemble } // PRMS Id: 5420 // Bug: g++ gets mixed up calling destructors for references. -// Build don't link: template<class X> class Z { diff --git a/gcc/testsuite/g++.old-deja/g++.jason/dtor5.C b/gcc/testsuite/g++.old-deja/g++.jason/dtor5.C index 4f4016c..3cf1d1c 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/dtor5.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/dtor5.C @@ -1,3 +1,4 @@ +// { dg-do run } // PRMS Id: 5286 // Bug: g++ forgets side-effects of object in call to nonexistent destructor. diff --git a/gcc/testsuite/g++.old-deja/g++.jason/enum.C b/gcc/testsuite/g++.old-deja/g++.jason/enum.C index 6dd24e6..81b4574 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/enum.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/enum.C @@ -1,6 +1,6 @@ +// { dg-do assemble } // PRMS Id: 4337 // Bug: Enums are not looked up to arbitrary depth. -// Build don't link: struct W { enum A { B }; @@ -15,5 +15,5 @@ struct Y : public X struct S { X::A a1; - Y::A a2; // gets bogus error - + Y::A a2; // { dg-bogus "" } }; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/enum2.C b/gcc/testsuite/g++.old-deja/g++.jason/enum2.C index 8fb7538..2991af6 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/enum2.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/enum2.C @@ -1,8 +1,8 @@ -// Build don't link: +// { dg-do assemble } enum tristate { no = -1, maybe, yes }; void foobar () { - tristate var = no; // gets bogus error + tristate var = no; // { dg-bogus "" } } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/enum3.C b/gcc/testsuite/g++.old-deja/g++.jason/enum3.C index 9e25570..04e8f28 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/enum3.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/enum3.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -Wall +// { dg-do assemble } +// { dg-options "-Wall" } enum tristate { no = -1, maybe, yes }; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/enum4.C b/gcc/testsuite/g++.old-deja/g++.jason/enum4.C index ab8b69f..b8b1209 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/enum4.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/enum4.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -Wall +// { dg-do assemble } +// { dg-options "-Wall" } enum tristate { no = -1, maybe, yes }; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/enum5.C b/gcc/testsuite/g++.old-deja/g++.jason/enum5.C index bbaa674..a05d4d3 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/enum5.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/enum5.C @@ -1,3 +1,4 @@ +// { dg-do run } enum { a = 1 }; int main(void) diff --git a/gcc/testsuite/g++.old-deja/g++.jason/enum6.C b/gcc/testsuite/g++.old-deja/g++.jason/enum6.C index 4097e2d..586b4ce 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/enum6.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/enum6.C @@ -1,4 +1,5 @@ -// Special g++ Options: -fshort-enums +// { dg-do run } +// { dg-options "-fshort-enums" } #include <limits.h> diff --git a/gcc/testsuite/g++.old-deja/g++.jason/enum7.C b/gcc/testsuite/g++.old-deja/g++.jason/enum7.C index 0f68304..38720ef 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/enum7.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/enum7.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // Yet Another testcase for signed/unsigned enums. -// Build don't link: enum A { AA = 0, AB = 1}; enum B { BA = -1, BB = 1}; @@ -10,6 +10,6 @@ void set(long a); void foo() { - set(AA); // gets bogus error - why is this ambiguous + set(AA); // { dg-bogus "" } why is this ambiguous set(BA); // when this is not amibguous } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/enum8.C b/gcc/testsuite/g++.old-deja/g++.jason/enum8.C index 0a3220f..9d0d94b 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/enum8.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/enum8.C @@ -1,3 +1,4 @@ +// { dg-do run } // Bug: the switch fails on the Alpha because folding ef - 1 fails. enum foo { one=1, thirty=30 }; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/explicit.C b/gcc/testsuite/g++.old-deja/g++.jason/explicit.C index 9fcecfd..e227792 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/explicit.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/explicit.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // Testcase for explicit instantiation of templates. -// Build don't link: template <class T> class A { diff --git a/gcc/testsuite/g++.old-deja/g++.jason/expr1.C b/gcc/testsuite/g++.old-deja/g++.jason/expr1.C index 89d719f..701e5a2 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/expr1.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/expr1.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // Bug: g++ doesn't figure out what to do. -// Build don't link: struct A { operator char *(); @@ -7,6 +7,6 @@ struct A { char foo(A a) { - char c = a[0]; // gets bogus error + char c = a[0]; // { dg-bogus "" } return c; } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/friend.C b/gcc/testsuite/g++.old-deja/g++.jason/friend.C index 4c517cb..e2cf7fe 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/friend.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/friend.C @@ -1,3 +1,4 @@ +// { dg-do run } // Bug: g++ doesn't keep track of the lexical context of friends properly. extern "C" void exit(int); diff --git a/gcc/testsuite/g++.old-deja/g++.jason/friend2.C b/gcc/testsuite/g++.old-deja/g++.jason/friend2.C index 02ccb5c..7264bd3 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/friend2.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/friend2.C @@ -1,7 +1,7 @@ +// { dg-do assemble } // PRMS Id: 5189 // Bug: g++ fails to collapse the several declarations of freefoo, so it isn't // recognized as a friend. -// Build don't link: extern "C" void freefoo(void); diff --git a/gcc/testsuite/g++.old-deja/g++.jason/groff1.C b/gcc/testsuite/g++.old-deja/g++.jason/groff1.C index 7ce697b..6363179 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/groff1.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/groff1.C @@ -1,3 +1,4 @@ +// { dg-do run } // PRMS Id: 3744 // Bug: unswitching a COND_EXPR initializer fails to set SIDE_EFFECTS on the // result, so expand_expr ignores it. diff --git a/gcc/testsuite/g++.old-deja/g++.jason/hmc1.C b/gcc/testsuite/g++.old-deja/g++.jason/hmc1.C index fec9487..52f3a4a 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/hmc1.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/hmc1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed templates default-arguments template <class I> class Class { diff --git a/gcc/testsuite/g++.old-deja/g++.jason/incomplete1.C b/gcc/testsuite/g++.old-deja/g++.jason/incomplete1.C index 8b738d9..e43ca71 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/incomplete1.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/incomplete1.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // The reference parameter to fred isn't dereferenced properly. -// Build don't link: class Gump {}; Gump operator & (const Gump x){return x;} diff --git a/gcc/testsuite/g++.old-deja/g++.jason/incomplete2.C b/gcc/testsuite/g++.old-deja/g++.jason/incomplete2.C index 6642321..f102220 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/incomplete2.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/incomplete2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } struct A { int foo(A a) { return a.bar(); } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/init.C b/gcc/testsuite/g++.old-deja/g++.jason/init.C index 032d172..6bb60d5 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/init.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/init.C @@ -1,6 +1,6 @@ +// { dg-do assemble } // Bug: g++ uses an empty initializer list for its own devious purpose // internally, and gets confused if it shows up in the input. -// Build don't link: struct A { int i; }; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/init2.C b/gcc/testsuite/g++.old-deja/g++.jason/init2.C index c85adc3..d1507af 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/init2.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/init2.C @@ -1,3 +1,4 @@ +// { dg-do run } // PRMS Id: 5126 extern int i, j; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/init3.C b/gcc/testsuite/g++.old-deja/g++.jason/init3.C index 03f1dbf..38e0e61 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/init3.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/init3.C @@ -1,3 +1,4 @@ +// { dg-do run } // PRMS Id: 5652 // Bug: strings does not get initialized. diff --git a/gcc/testsuite/g++.old-deja/g++.jason/init4.C b/gcc/testsuite/g++.old-deja/g++.jason/init4.C index aa9417c..2a937d5 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/init4.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/init4.C @@ -1,3 +1,4 @@ +// { dg-do assemble } struct A { int i; }; -A a = {{{1}}}; // ERROR - causes abort +A a = {{{1}}}; // { dg-error "" } causes abort diff --git a/gcc/testsuite/g++.old-deja/g++.jason/inline.C b/gcc/testsuite/g++.old-deja/g++.jason/inline.C index d6cb9e9..d614d541 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/inline.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/inline.C @@ -1,3 +1,4 @@ +// { dg-do run } // PRMS Id: 4341 // Bug: Instantiating a template in the middle of processing the functions // from another template screws up lineno/input_filename. diff --git a/gcc/testsuite/g++.old-deja/g++.jason/inline2.C b/gcc/testsuite/g++.old-deja/g++.jason/inline2.C index 7dea476..b6198be 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/inline2.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/inline2.C @@ -1,7 +1,7 @@ +// { dg-do assemble } +// { dg-options "-O" } // Bug: the lang-specific bits of the decl for g aren't being copied when // inlining. -// Special g++ Options: -O -// Build don't link: inline void f () { void g (); diff --git a/gcc/testsuite/g++.old-deja/g++.jason/inline3.C b/gcc/testsuite/g++.old-deja/g++.jason/inline3.C index c9f88dc..a314b20 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/inline3.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/inline3.C @@ -1,5 +1,6 @@ +// { dg-do run } +// { dg-options "-O2" } // Testcase for order of destruction. -// Special g++ Options: -O2 extern "C" int printf (const char *, ...); int c; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/jump.C b/gcc/testsuite/g++.old-deja/g++.jason/jump.C index e59de36..d720a92 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/jump.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/jump.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // PRMS Id: 6036 extern int a; @@ -5,8 +6,8 @@ extern int a; int main() { switch (a) { case 1: - int v2 = 3; // ERROR - referenced below - case 2: // ERROR - jumping past initializer + int v2 = 3; // { dg-error "" } referenced below + case 2: // { dg-error "" } jumping past initializer if (v2 == 7) ; } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/lex1.C b/gcc/testsuite/g++.old-deja/g++.jason/lex1.C index 174ec77..f183da1 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/lex1.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/lex1.C @@ -1,3 +1,4 @@ +// { dg-do run } int main() { char c = '\351'; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/lineno.C b/gcc/testsuite/g++.old-deja/g++.jason/lineno.C index 6878f75..bd5a393 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/lineno.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/lineno.C @@ -1,6 +1,6 @@ +// { dg-do assemble } // Bug; g++ binds a function definition to the line number of a later decl. -// Build don't link: -void foo () { } // ERROR - redeclared -void foo (); // gets bogus error - invalid binding -void foo () { } // ERROR - redeclared +void foo () { } // { dg-error "" } redeclared +void foo (); // { dg-bogus "" } invalid binding +void foo () { } // { dg-error "" } redeclared diff --git a/gcc/testsuite/g++.old-deja/g++.jason/lineno2.C b/gcc/testsuite/g++.old-deja/g++.jason/lineno2.C index 6c27803..7f33176 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/lineno2.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/lineno2.C @@ -1,6 +1,6 @@ -// Build don't link: +// { dg-do assemble } +// { dg-options "" } // GROUPS passed error-reporting -// Special g++ Options: // Bug: # line directive gets ignored immediately after text. template <class T> class A { @@ -10,5 +10,5 @@ public: main() { - undef1(); // ERROR - , LINE 204 + undef1(); // { dg-error "" "" { target *-*-* } 204 } } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/lineno3.C b/gcc/testsuite/g++.old-deja/g++.jason/lineno3.C index f268863..cf39f1c 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/lineno3.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/lineno3.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: +// { dg-do assemble } +// { dg-options "" } // GROUPS passed error-reporting // potential bug: # line directive does not get reproduced in template // expansion @@ -7,7 +7,7 @@ template <class T> class A { public: # 200 "lineno3.C" - int foo () { undef1(); } // ERROR - , LINE 200 + int foo () { undef1(); } // { dg-error "" "" { target *-*-* } 200 } }; template class A<int>; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/lineno4.C b/gcc/testsuite/g++.old-deja/g++.jason/lineno4.C index a570edf..272c050 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/lineno4.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/lineno4.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: +// { dg-do assemble } +// { dg-options "" } // GROUPS passed error-reporting // Bug: # line directive in template definition interferes with growing obstack template <class T> class A @@ -7,7 +7,7 @@ template <class T> class A public: # 200 "lineno4.C" - int foo () { undef1(); } // ERROR - , LINE 200 + int foo () { undef1(); } // { dg-error "" "" { target *-*-* } 200 } }; template class A<int>; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/lineno5.C b/gcc/testsuite/g++.old-deja/g++.jason/lineno5.C index 95ff218..f723a22 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/lineno5.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/lineno5.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed error-reporting // Bug: incomplete instantiation messes with lineno template <class T> class A; @@ -6,5 +6,5 @@ template <class T> class A; int main() { A<int> *p; - undef1();// ERROR - + undef1();// { dg-error "" } } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/local.C b/gcc/testsuite/g++.old-deja/g++.jason/local.C index 6159db0..21fa9f5 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/local.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/local.C @@ -1,20 +1,21 @@ +// { dg-do assemble } // General testcase for local classes. int x; void f () { static int s; - int x; // ERROR - referenced below + int x; // { dg-error "" } referenced below extern int q(); struct local { - int g() { return x; } // ERROR - automatic variable - int h() { return s; } // gets bogus error - local class + int g() { return x; } // { dg-error "" } automatic variable + int h() { return s; } // { dg-bogus "" } local class int k() { return ::x; } // OK int l() { return q(); } // OK int m(); // OK - not defined - static int foo; // ERROR - static data member of local class + static int foo; // { dg-error "" } static data member of local class }; } -local* p = 0; // ERROR - no such type in scope +local* p = 0; // { dg-error "" } no such type in scope diff --git a/gcc/testsuite/g++.old-deja/g++.jason/lookup.C b/gcc/testsuite/g++.old-deja/g++.jason/lookup.C index c6c44c3..fe80083 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/lookup.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/lookup.C @@ -1,7 +1,7 @@ +// { dg-do assemble } // PRMS Id: 4357 // Bug: g++ forgets to clear out push/popclass cache stuff when instantiating // templates. -// Build don't link: template <class T> class ccHandle { }; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/lookup2.C b/gcc/testsuite/g++.old-deja/g++.jason/lookup2.C index e44b1dc..a5cbccc 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/lookup2.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/lookup2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } struct A { struct B { @@ -9,5 +9,5 @@ void f (A::B); void g () { A::B b; - f (b); // gets bogus error - can't find nested constructor + f (b); // { dg-bogus "" } can't find nested constructor } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/lookup3.C b/gcc/testsuite/g++.old-deja/g++.jason/lookup3.C index 7be731e..ecef534 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/lookup3.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/lookup3.C @@ -1,7 +1,7 @@ +// { dg-do assemble } // [class.ambig]: A single function, object, type, or enumerator may be // reached through more than one path through the DAG of base classes. This // is not an ambiguity. -// Build don't link: struct A { typedef long T; @@ -11,5 +11,5 @@ struct B : public A { }; struct C : public A { }; struct D : public C , public B { - void f (T&); // gets bogus error - ambiguous lookup + void f (T&); // { dg-bogus "" } ambiguous lookup }; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/loverload.C b/gcc/testsuite/g++.old-deja/g++.jason/loverload.C index 2d1a9b3..3bffa38 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/loverload.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/loverload.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // Bug: g++ can't deal with multi-language overloading. -// Build don't link: extern void foo (int, int); extern "C" void foo (int); diff --git a/gcc/testsuite/g++.old-deja/g++.jason/loverload3.C b/gcc/testsuite/g++.old-deja/g++.jason/loverload3.C index c9cc3bf..7a765a6 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/loverload3.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/loverload3.C @@ -1,6 +1,6 @@ +// { dg-do assemble } // PRMS Id: 2010 // Bug: g++ doesn't deal with overloads involving C-language fns properly. -// Build don't link: extern "C" double pow (double, double); inline double pow (double d, int e) { return pow (d, (double) e); } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/loverload4.C b/gcc/testsuite/g++.old-deja/g++.jason/loverload4.C index c689bf5..bdac76f 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/loverload4.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/loverload4.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // Bug: g++ dies on this input. -// Build don't link: inline char abs (char x) { return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/lvalue.C b/gcc/testsuite/g++.old-deja/g++.jason/lvalue.C index c85e6fe..643641e 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/lvalue.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/lvalue.C @@ -1,6 +1,6 @@ +// { dg-do assemble } // Bug: Scoped method calls don't propagate the constness of `this'. // PRMS Id: 4181 (second testcase) -// Build don't link: class D; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/lvalue2.C b/gcc/testsuite/g++.old-deja/g++.jason/lvalue2.C index 2fba73c..35097f2 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/lvalue2.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/lvalue2.C @@ -1,20 +1,20 @@ +// { dg-do assemble } // PRMS Id: 4892 // Bug: COND_EXPRs, MODIFY_EXPRs and COMPOUND_EXPRs aren't properly recognized // as lvalues. -// Build don't link: extern int foo; int& f (int& a, int& b) { - return (foo ? a : b); // gets bogus error - + return (foo ? a : b); // { dg-bogus "" } } int& g (int& a) { - return (a = 0); // gets bogus error - + return (a = 0); // { dg-bogus "" } } int& h (int& a, int& b) { - return (a = 1, b); // gets bogus error - + return (a = 1, b); // { dg-bogus "" } } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/lvalue3.C b/gcc/testsuite/g++.old-deja/g++.jason/lvalue3.C index a3edaac..c7f0803 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/lvalue3.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/lvalue3.C @@ -1,6 +1,6 @@ +// { dg-do assemble } // Bug: C++ semantics for assignment don't match the backend semantics for // MODIFY_EXPR. -// Build don't link: void foo (int j) diff --git a/gcc/testsuite/g++.old-deja/g++.jason/lvalue4.C b/gcc/testsuite/g++.old-deja/g++.jason/lvalue4.C index 79a02d8..0a2ab22 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/lvalue4.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/lvalue4.C @@ -1,3 +1,4 @@ +// { dg-do run } int main() { int i = 2; int *pi = &(++i); diff --git a/gcc/testsuite/g++.old-deja/g++.jason/mangle1.C b/gcc/testsuite/g++.old-deja/g++.jason/mangle1.C index 59b83b9..bcb1c87 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/mangle1.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/mangle1.C @@ -1,7 +1,7 @@ +// { dg-do assemble } // Bug: numeric_outputed_need_bar is not cleared properly, adding random '_'s // to mangled names. -// Build don't link: template <int seed_length> class rand1 diff --git a/gcc/testsuite/g++.old-deja/g++.jason/mangle2.C b/gcc/testsuite/g++.old-deja/g++.jason/mangle2.C index b1876b7..c7957a2 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/mangle2.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/mangle2.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // I guess this was broken once. -// Build don't link: template <class C, int D> class X { }; typedef X<int, 0> T; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/mangle3.C b/gcc/testsuite/g++.old-deja/g++.jason/mangle3.C index 667264a..408a237 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/mangle3.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/mangle3.C @@ -1,3 +1,4 @@ +// { dg-do run } // PRMS Id: 7563 // Bug: declaration at function scope causes mismangling. diff --git a/gcc/testsuite/g++.old-deja/g++.jason/member.C b/gcc/testsuite/g++.old-deja/g++.jason/member.C index 3518811..1abbdec 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/member.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/member.C @@ -1,35 +1,35 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed member-pointers error-reporting struct Y { struct X { int A; - int Y::X::* foo () { undef1(1); return &Y::X::A; }// ERROR - foo().* + int Y::X::* foo () { undef1(1); return &Y::X::A; }// { dg-error "" } foo().* int bar () { return A; } }; }; int Y::X::* foo () { - undef2(1);// ERROR - foo().* + undef2(1);// { dg-error "" } foo().* return &Y::X::A; } int Y::X::* (* foo2 ())() { - undef3(1);// ERROR - foo().* + undef3(1);// { dg-error "" } foo().* return foo; } int (Y::X::* bar2 ()) () { - undef4(1);// ERROR - foo\(\).* - return Y::X::bar;// ERROR - foo\(\).* + undef4(1);// { dg-error "" } foo\(\).* + return Y::X::bar;// { dg-error "" } foo\(\).* } int Y::X::* (Y::X::* foo3 ())() { - undef5(1);// ERROR - foo().* - return Y::X::foo;// ERROR - foo().* + undef5(1);// { dg-error "" } foo().* + return Y::X::foo;// { dg-error "" } foo().* } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/method.C b/gcc/testsuite/g++.old-deja/g++.jason/method.C index e9496b8..2de7b0c 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/method.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/method.C @@ -1,6 +1,6 @@ +// { dg-do assemble } // Bug: pointer to pointer is treated as plain pointer. // PRMS Id: 1767 -// Build don't link: class Foo { public: @@ -8,5 +8,5 @@ public: }; void func(Foo ** ppFoo) { - ppFoo->method(); // ERROR - + ppFoo->method(); // { dg-error "" } } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/mi.C b/gcc/testsuite/g++.old-deja/g++.jason/mi.C index de805dd..40b6992 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/mi.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/mi.C @@ -1,3 +1,4 @@ +// { dg-do run } int status; struct A { virtual void foo () { status = 1; } }; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/mutable1.C b/gcc/testsuite/g++.old-deja/g++.jason/mutable1.C index 5311a87..b6c146a 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/mutable1.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/mutable1.C @@ -1,3 +1,4 @@ +// { dg-do run } struct X { X () { } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/nested1.C b/gcc/testsuite/g++.old-deja/g++.jason/nested1.C index 4405f3d..90c6ecb 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/nested1.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/nested1.C @@ -1,12 +1,12 @@ +// { dg-do assemble } // Bug: g++ can't deal with function-local classes that talk about themselves. -// Build don't link: void foo() { class Wrapper { public: void F (void * Wrapperptr) { - Wrapper * wrapptr = ( Wrapper *) Wrapperptr; // gets bogus error + Wrapper * wrapptr = ( Wrapper *) Wrapperptr; // { dg-bogus "" } } }; } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/nested2.C b/gcc/testsuite/g++.old-deja/g++.jason/nested2.C index 24020a2..af2d92b 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/nested2.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/nested2.C @@ -1,6 +1,6 @@ +// { dg-do assemble } // PRMS Id: 3764 (c/h) // Bug: g++ gets into an infinite loop trying to find the top-level context -// Build don't link: class Menu; class MenuItem; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/nested4.C b/gcc/testsuite/g++.old-deja/g++.jason/nested4.C index cd5a839..02bf354 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/nested4.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/nested4.C @@ -1,7 +1,7 @@ +// { dg-do assemble } // From: quipu@ulrik.uio.no // Subject: extern "C" nested class // Date: Fri, 13 Aug 1993 15:33:53 +0200 -// Build don't link: extern "C" { struct A { @@ -13,5 +13,5 @@ void foo () { A a; struct A::B *b; - b = a.x; // gets bogus error - type `B' is not a base type for type `B' + b = a.x; // { dg-bogus "" } type `B' is not a base type for type `B' } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/nested5.C b/gcc/testsuite/g++.old-deja/g++.jason/nested5.C index 1b0e35c..8d6a5cf 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/nested5.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/nested5.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } struct A { struct B { }; @@ -6,6 +6,6 @@ struct A { struct C : public A { struct D - : public B // gets bogus error - can't find B + : public B // { dg-bogus "" } can't find B { }; }; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/nested6.C b/gcc/testsuite/g++.old-deja/g++.jason/nested6.C index b98c643..2896078 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/nested6.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/nested6.C @@ -1,5 +1,5 @@ -// Build don't link: +// { dg-do assemble } union A { struct B { }; - A::B b; // gets bogus error + A::B b; // { dg-bogus "" } }; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/nested7.C b/gcc/testsuite/g++.old-deja/g++.jason/nested7.C index 43cce23..5dc16a9 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/nested7.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/nested7.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // Testcase for defining nested types separately. -// Build don't link: class remote { diff --git a/gcc/testsuite/g++.old-deja/g++.jason/nested8.C b/gcc/testsuite/g++.old-deja/g++.jason/nested8.C index ff2d659..6c283fa 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/nested8.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/nested8.C @@ -1,8 +1,8 @@ -// Build don't link: +// { dg-do assemble } struct A { }; struct B: public A { struct C { -friend struct B; // gets bogus error - base clause w/o members +friend struct B; // { dg-bogus "" } base clause w/o members }; }; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/net.C b/gcc/testsuite/g++.old-deja/g++.jason/net.C index be8b962..1f5987d 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/net.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/net.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // Bug: g++ doesn't instantiate function templates in instantiate_type. -// Build don't link: template <class T> void fn (T t) { } template <class T> struct A { diff --git a/gcc/testsuite/g++.old-deja/g++.jason/net2.C b/gcc/testsuite/g++.old-deja/g++.jason/net2.C index 8738ead..ffb52d2 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/net2.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/net2.C @@ -1,3 +1,4 @@ +// { dg-do run } // Test of various ?: problems. class D diff --git a/gcc/testsuite/g++.old-deja/g++.jason/new.C b/gcc/testsuite/g++.old-deja/g++.jason/new.C index ce86569..d5260ce 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/new.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/new.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // Bug: new doesn't make sure that the count is an integral value. #include <new> @@ -19,7 +20,7 @@ int main() float f = 3; int* b1 = new int[(int)f]; - int* b2 = new int[f]; // ERROR - new requires integral size + int* b2 = new int[f]; // { dg-error "" } new requires integral size return s; } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/new2.C b/gcc/testsuite/g++.old-deja/g++.jason/new2.C index 4f293d1..75d353d 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/new2.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/new2.C @@ -1,5 +1,6 @@ +// { dg-do run } +// { dg-options "-Wno-deprecated -fno-exceptions" } // PRMS Id: 6267 -// Special g++ Options: -Wno-deprecated -fno-exceptions struct A { int i; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/new3.C b/gcc/testsuite/g++.old-deja/g++.jason/new3.C index 39aff256..62e9b7d 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/new3.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/new3.C @@ -1,5 +1,6 @@ +// { dg-do run } +// { dg-options "-fcheck-new -pedantic" } // PRMS Id: 6037 -// Special g++ Options: -fcheck-new -pedantic extern "C" void * malloc (__SIZE_TYPE__); diff --git a/gcc/testsuite/g++.old-deja/g++.jason/new4.C b/gcc/testsuite/g++.old-deja/g++.jason/new4.C index ba8af27..770a2a2 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/new4.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/new4.C @@ -1,4 +1,5 @@ -// Special g++ Options: -fcheck-new +// { dg-do run } +// { dg-options "-fcheck-new" } struct A { A(): i(42) { } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/new5.C b/gcc/testsuite/g++.old-deja/g++.jason/new5.C index 87279fd..195df2d 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/new5.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/new5.C @@ -1,3 +1,4 @@ +// { dg-do run } int main () { const int *p = new const int (0); diff --git a/gcc/testsuite/g++.old-deja/g++.jason/offset1.C b/gcc/testsuite/g++.old-deja/g++.jason/offset1.C index d4fd38b..51137c1 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/offset1.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/offset1.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // PRMS Id: 5070 (testcase 1) -// Build don't link: struct foo { foo(int x = 0) {}; @@ -13,5 +13,5 @@ struct xx { int xx::IsOk(int X) { - return ((xx::a).IsAlive()); // gets bogus error + return ((xx::a).IsAlive()); // { dg-bogus "" } } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/offset2.C b/gcc/testsuite/g++.old-deja/g++.jason/offset2.C index 1ce6386..80e37ad 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/offset2.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/offset2.C @@ -1,3 +1,4 @@ +// { dg-do run } // PRMS Id: 5070 (testcase 2) int status = 1; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/offset3.C b/gcc/testsuite/g++.old-deja/g++.jason/offset3.C index d980ba1..c419b2e 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/offset3.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/offset3.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // PRMS Id: 5070 (bug 2) -// Build don't link: struct A { void f (); @@ -18,5 +18,5 @@ struct C: public B { }; void C::g() { - B::p->f(); // gets bogus error + B::p->f(); // { dg-bogus "" } } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/offset4.C b/gcc/testsuite/g++.old-deja/g++.jason/offset4.C index 2a50491..9325cc4 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/offset4.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/offset4.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // Bug: g++ complains about the use of A::p below. -// Build don't link: struct A { void *p; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/opeq.C b/gcc/testsuite/g++.old-deja/g++.jason/opeq.C index c071850..741b977 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/opeq.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/opeq.C @@ -1,3 +1,4 @@ +// { dg-do run } // PRMS Id: 4297 (related to 3525) // Bug: Generating default op= didn't set TYPE_HAS_ASSIGNMENT, so it wasn't // found. diff --git a/gcc/testsuite/g++.old-deja/g++.jason/opeq2.C b/gcc/testsuite/g++.old-deja/g++.jason/opeq2.C index 9e91ab3..2d448a2 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/opeq2.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/opeq2.C @@ -1,6 +1,6 @@ +// { dg-do assemble } // Bug: default operator= is not being generated properly. // PRMS Id: 3525 -// Build don't link: struct ccUnwind { @@ -22,5 +22,5 @@ struct ccEllipse : ccUnwind void foo () { ccEllipse e; - e = ccEllipseUnit(); // gets bogus error - assignment not defined + e = ccEllipseUnit(); // { dg-bogus "" } assignment not defined } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/opeq3.C b/gcc/testsuite/g++.old-deja/g++.jason/opeq3.C index 1152aa0..50b749e 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/opeq3.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/opeq3.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // Bug: g++ generates code for assignment in invalid situations. -// Build don't link: class X { int& a; @@ -11,5 +11,5 @@ void foo () { int one=1, two=2; X a(one), b(two); - a = b; // ERROR - no assignment semantics defined + a = b; // { dg-error "" } no assignment semantics defined } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/opeq4.C b/gcc/testsuite/g++.old-deja/g++.jason/opeq4.C index d993d83..37933f3 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/opeq4.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/opeq4.C @@ -1,6 +1,6 @@ +// { dg-do assemble } // PRMS Id: 4329 // Bug: default op= gives an warning about casting away volatile. -// Build don't link: struct foo { diff --git a/gcc/testsuite/g++.old-deja/g++.jason/opeq5.C b/gcc/testsuite/g++.old-deja/g++.jason/opeq5.C index 90996e9..a2590ef 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/opeq5.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/opeq5.C @@ -1,3 +1,4 @@ +// { dg-do run } // Testcase for tricky synthesized op= in complex inheritance situation. // This used to test whether the virtual base was copy-assigned only once. // That feature is not required by ISO C++, so the test now only checks diff --git a/gcc/testsuite/g++.old-deja/g++.jason/opeq6.C b/gcc/testsuite/g++.old-deja/g++.jason/opeq6.C index 62be499c..ead4797 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/opeq6.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/opeq6.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // Testcase for wrongful generation of operator =. -// Build don't link: class ivResource { public: diff --git a/gcc/testsuite/g++.old-deja/g++.jason/operator.C b/gcc/testsuite/g++.old-deja/g++.jason/operator.C index bd21e37..81c1e1d 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/operator.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/operator.C @@ -1,15 +1,15 @@ +// { dg-do assemble } +// { dg-options "" } // General test for operator overloading permissiveness. -// Build don't link: -// Special g++ Options: typedef __SIZE_TYPE__ size_t; struct A { - int operator?:(int a, int b); // WARNING - - static int operator()(int a); // ERROR - must be nonstatic - static int operator+(A,A); // ERROR - must be nonstatic - int operator+(int a, int b = 1); // ERROR - two errors on this line - int operator++(char); // ERROR - must take 'int' + int operator?:(int a, int b); // { dg-warning "" } + static int operator()(int a); // { dg-error "" } must be nonstatic + static int operator+(A,A); // { dg-error "" } must be nonstatic + int operator+(int a, int b = 1); // { dg-error "" } two errors on this line + int operator++(char); // { dg-error "" } must take 'int' void operator delete (void *); void operator delete (void *, unsigned long); }; @@ -23,9 +23,9 @@ struct B { B * operator->(); }; -int operator-(int a, int b); // ERROR - no class argument +int operator-(int a, int b); // { dg-error "" } no class argument -void * operator new (A a); // ERROR - invalid first argument -void operator delete (A a); // ERROR - ditto +void * operator new (A a); // { dg-error "" } invalid first argument +void operator delete (A a); // { dg-error "" } ditto -char * operator char * (int); // ERROR - return value, nonmember +char * operator char * (int); // { dg-error "" } return value, nonmember diff --git a/gcc/testsuite/g++.old-deja/g++.jason/operator2.C b/gcc/testsuite/g++.old-deja/g++.jason/operator2.C index 4776160..892ed3f 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/operator2.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/operator2.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // PRMS Id: 6018 -// Build don't link: class string { char *p; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/opover.C b/gcc/testsuite/g++.old-deja/g++.jason/opover.C index f4a3213..3ec833e 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/opover.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/opover.C @@ -1,6 +1,6 @@ +// { dg-do assemble } // Bug: g++ prefers a non-matching operator== over user-defined conversions // and a default operator==. -// Build don't link: struct A { operator int (); diff --git a/gcc/testsuite/g++.old-deja/g++.jason/optimize.C b/gcc/testsuite/g++.old-deja/g++.jason/optimize.C index 1f554e2..4676bef 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/optimize.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/optimize.C @@ -1,7 +1,7 @@ +// { dg-do assemble } +// { dg-options "-O -pedantic-errors" } // Bug: g++ claims that control can fall off the end of these functions. // PRMS Id: 4943 -// Special g++ Options: -O -pedantic-errors -// Build don't link: struct A { A(); @@ -14,13 +14,13 @@ int f () { A a[2]; return 1; -} // gets bogus error - jump_optimize +} // { dg-bogus "" } jump_optimize int g () { A a; return 1; -} // gets bogus error - jump_optimize +} // { dg-bogus "" } jump_optimize struct B { B(); @@ -39,4 +39,4 @@ int h () { B b; return 1; -} // gets bogus error - jump_optimize +} // { dg-bogus "" } jump_optimize diff --git a/gcc/testsuite/g++.old-deja/g++.jason/optimize2.C b/gcc/testsuite/g++.old-deja/g++.jason/optimize2.C index ade4531..58b3b12 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/optimize2.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/optimize2.C @@ -1,5 +1,6 @@ +// { dg-do run } +// { dg-options "-w" } // Used to crash on the alpha with optimization. -// Special g++ Options: -w extern "C" void abort (void); diff --git a/gcc/testsuite/g++.old-deja/g++.jason/overload.C b/gcc/testsuite/g++.old-deja/g++.jason/overload.C index bc41672..6a747ff 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/overload.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/overload.C @@ -1,8 +1,8 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed overloading enum bar {}; -void operator+ (int, int);// ERROR - .* +void operator+ (int, int);// { dg-error "" } .* void operator+ (bar&, int); template <class T> void operator+ (int b, T& t) { return b; } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/overload1.C b/gcc/testsuite/g++.old-deja/g++.jason/overload1.C index e29a7c1..36f9cac 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/overload1.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/overload1.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // Bug: g++ thinks there is a conversion from void * to B *. -// Build don't link: struct A { operator void* (); @@ -8,5 +8,5 @@ struct A { struct B: public A { }; void bar (A& a) { - B* bp = (B*)a; // ERROR - + B* bp = (B*)a; // { dg-error "" } } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/overload11.C b/gcc/testsuite/g++.old-deja/g++.jason/overload11.C index f5ed01e..3fe8719 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/overload11.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/overload11.C @@ -1,3 +1,4 @@ +// { dg-do run } // PRMS Id: 4697 // Bug: g++ calls the non-const method for a const object. diff --git a/gcc/testsuite/g++.old-deja/g++.jason/overload12.C b/gcc/testsuite/g++.old-deja/g++.jason/overload12.C index 61d3740..b6ff7e1 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/overload12.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/overload12.C @@ -1,3 +1,4 @@ +// { dg-do run } // PRMS Id: 4066 // Bug: g++ doesn't notice the const on reference returns. diff --git a/gcc/testsuite/g++.old-deja/g++.jason/overload13.C b/gcc/testsuite/g++.old-deja/g++.jason/overload13.C index 6b5ca0f..74205c1 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/overload13.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/overload13.C @@ -1,3 +1,4 @@ +// { dg-do run } // Bug: g++ screws up derived->base conversions when calling a global function // in the presence of matching members in the base. Whew. diff --git a/gcc/testsuite/g++.old-deja/g++.jason/overload14.C b/gcc/testsuite/g++.old-deja/g++.jason/overload14.C index 6a5d3dc..a4c6cff 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/overload14.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/overload14.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // Bug: g++ fails to recognize that the template matches the target type. -// Build don't link: template <class T> void foo (T *, int); diff --git a/gcc/testsuite/g++.old-deja/g++.jason/overload15.C b/gcc/testsuite/g++.old-deja/g++.jason/overload15.C index 779de72..fdd692b 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/overload15.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/overload15.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // Bug: g++ thinks that int->long is a promotion. -// Build don't link: long f (long, long); double f (double, double); diff --git a/gcc/testsuite/g++.old-deja/g++.jason/overload16.C b/gcc/testsuite/g++.old-deja/g++.jason/overload16.C index 34237bc..1353708 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/overload16.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/overload16.C @@ -1,6 +1,7 @@ -void f (int); // ERROR - -void f (long); // ERROR - +// { dg-do assemble } +void f (int); // { dg-error "" } +void f (long); // { dg-error "" } int main() { - f (1 & 0xffffff00UL); // ERROR - ambiguous + f (1 & 0xffffff00UL); // { dg-error "" } ambiguous } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/overload17.C b/gcc/testsuite/g++.old-deja/g++.jason/overload17.C index 6573848..df47ed4 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/overload17.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/overload17.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // Bug: g++ fails to prefer UDC's alone to UDC's plus standard conversions. -// Build don't link: struct B { }; struct D: public B { }; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/overload18.C b/gcc/testsuite/g++.old-deja/g++.jason/overload18.C index d4d9ec1..3fb9799 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/overload18.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/overload18.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // pushdecl gets confused by this. -// Build don't link: void f (); void f (int, int); diff --git a/gcc/testsuite/g++.old-deja/g++.jason/overload19.C b/gcc/testsuite/g++.old-deja/g++.jason/overload19.C index 99dcc91..73404fe 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/overload19.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/overload19.C @@ -1,3 +1,4 @@ +// { dg-do run } // PRMS Id: 4689 // Bug: g++ doesn't notice operators overloaded on enumeral types. diff --git a/gcc/testsuite/g++.old-deja/g++.jason/overload2.C b/gcc/testsuite/g++.old-deja/g++.jason/overload2.C index 5641942..631f953 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/overload2.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/overload2.C @@ -1,12 +1,12 @@ +// { dg-do assemble } // Bug: foo and bar are considered to be overloaded (i.e. their // IDENTIFIER_GLOBAL_VALUES are TREE_LISTs) even though they aren't, // so ?: thinks it can't resolve the names. -// Build don't link: void foo (); void bar (); void baz () { - void (*p)() = 1 ? foo : bar; // gets bogus error - wrongful overloading + void (*p)() = 1 ? foo : bar; // { dg-bogus "" } wrongful overloading } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/overload20.C b/gcc/testsuite/g++.old-deja/g++.jason/overload20.C index 998f6a7..f5db6a2 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/overload20.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/overload20.C @@ -1,11 +1,12 @@ +// { dg-do assemble } // Bug: this code causes an internal compiler error 4. void f (char *); void f (int); struct A { - void f (); // ERROR - candidate - void f (int); // ERROR - candidate + void f (); // { dg-error "" } candidate + void f (int); // { dg-error "" } candidate void g () { - void (*p)(char *) = f; // ERROR - no matching function in scope + void (*p)(char *) = f; // { dg-error "" } no matching function in scope } }; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/overload21.C b/gcc/testsuite/g++.old-deja/g++.jason/overload21.C index dc2f69e..52c3589 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/overload21.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/overload21.C @@ -1,12 +1,13 @@ +// { dg-do assemble } struct X { - void f (int = 4, char = 'r'); // ERROR - - void g (int = 4, char = 'r'); // ERROR - + void f (int = 4, char = 'r'); // { dg-error "" } + void g (int = 4, char = 'r'); // { dg-error "" } }; void X::f (int i = 4, char x = 'r') -{ } // ERROR - duplicate default args +{ } // { dg-error "" } duplicate default args void X::g (int i = 9, char x = 's') -{ } // ERROR - duplicate default args +{ } // { dg-error "" } duplicate default args diff --git a/gcc/testsuite/g++.old-deja/g++.jason/overload22.C b/gcc/testsuite/g++.old-deja/g++.jason/overload22.C index fd7276a..da0a8a6 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/overload22.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/overload22.C @@ -1,6 +1,6 @@ +// { dg-do assemble } // PRMS Id: 4574 // Bug: g++ prefers int to double for float& argument -// Build don't link: inline double abs (double x) { return x;} inline int abs (int i) { return i; } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/overload23.C b/gcc/testsuite/g++.old-deja/g++.jason/overload23.C index 21cda3a..fe605f0 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/overload23.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/overload23.C @@ -1,8 +1,8 @@ +// { dg-do assemble } // From: panisset@cae.ca (Jean-Francois Panisset) // Date: Mon, 6 Jun 94 13:39:25 EDT // Subject: Problem with operator overloading -// Build don't link: class ostream { public: @@ -23,5 +23,5 @@ int main() { X x; ostream os; - os << x; // gets bogus error - converting to float + os << x; // { dg-bogus "" } converting to float } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/overload24.C b/gcc/testsuite/g++.old-deja/g++.jason/overload24.C index 0a12b00..3aee9b3 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/overload24.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/overload24.C @@ -1,6 +1,6 @@ +// { dg-do assemble } // PRMS Id: 5124 // Bug: g++ promotes bar to int* too soon and the call to f fails. -// Build don't link: typedef int arr[1]; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/overload26.C b/gcc/testsuite/g++.old-deja/g++.jason/overload26.C index 0c15668..681473f 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/overload26.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/overload26.C @@ -1,6 +1,6 @@ +// { dg-do assemble } // Bug: g++ tries to build up a mangled name for its ideal match, which // fails for one call below. -// Build don't link: extern const char foo[]; extern const char baz[10]; @@ -13,7 +13,7 @@ struct A { void bing(const char *); int main () { - a->f(foo); // gets bogus error because foo's size unknown. + a->f(foo); // { dg-bogus "" } because foo's size unknown. a->f(baz); a->f(fred); bing(fred); diff --git a/gcc/testsuite/g++.old-deja/g++.jason/overload27.C b/gcc/testsuite/g++.old-deja/g++.jason/overload27.C index 123018d..4fd1175 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/overload27.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/overload27.C @@ -1,7 +1,8 @@ +// { dg-do run } void f(const int &) { } void f(const float &); int main() { - f(false); // gets bogus error + f(false); // { dg-bogus "" } } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/overload28.C b/gcc/testsuite/g++.old-deja/g++.jason/overload28.C index 265c523..a3dcb8d 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/overload28.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/overload28.C @@ -1,11 +1,12 @@ +// { dg-do assemble } // PRMS Id: 6056 struct Foo { - Foo() { } // ERROR - candidate - Foo(int i = 25) { } // ERROR - candidate + Foo() { } // { dg-error "" } candidate + Foo(int i = 25) { } // { dg-error "" } candidate }; int main() { - Foo* f1 = new Foo(); // ERROR - ambiguous + Foo* f1 = new Foo(); // { dg-error "" } ambiguous } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/overload29.C b/gcc/testsuite/g++.old-deja/g++.jason/overload29.C index ecd4359..abc4418 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/overload29.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/overload29.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // Bug: we get an error trying to build up our ideal candidate. -// Build don't link: class C { public: diff --git a/gcc/testsuite/g++.old-deja/g++.jason/overload3.C b/gcc/testsuite/g++.old-deja/g++.jason/overload3.C index 63b175e..3cca314 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/overload3.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/overload3.C @@ -1,7 +1,7 @@ +// { dg-do assemble } // Bug: bar is considered to be overloaded (i.e. its // IDENTIFIER_GLOBAL_VALUES are TREE_LISTs) even though it isn't, // so default_conversion thinks it can't resolve the name. -// Build don't link: void foo (); void bar (); diff --git a/gcc/testsuite/g++.old-deja/g++.jason/overload30.C b/gcc/testsuite/g++.old-deja/g++.jason/overload30.C index 24485c5..9f65080 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/overload30.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/overload30.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // PRMS Id: 6412 -// Build don't link: class Foo; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/overload31.C b/gcc/testsuite/g++.old-deja/g++.jason/overload31.C index e45d802..18dc213 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/overload31.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/overload31.C @@ -1,7 +1,7 @@ +// { dg-do assemble } // PRMS Id: 6568 // Bug: g++ complains about the ambiguous conversion to bool even though // we wouldn't end up using it anyway. -// Build don't link: class AString { diff --git a/gcc/testsuite/g++.old-deja/g++.jason/overload32.C b/gcc/testsuite/g++.old-deja/g++.jason/overload32.C index 6e207be..1a81ef6 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/overload32.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/overload32.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // PRMS Id: 7128 -// Build don't link: class B {}; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/overload33.C b/gcc/testsuite/g++.old-deja/g++.jason/overload33.C index 8b5bb4a..19b4a2e 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/overload33.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/overload33.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // PRMS ID: 7507 -// Build don't link: /* ------------------------------------------------------------ */ diff --git a/gcc/testsuite/g++.old-deja/g++.jason/overload34.C b/gcc/testsuite/g++.old-deja/g++.jason/overload34.C index 871c35a..13c3eed 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/overload34.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/overload34.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // PRMS ID: 8010 -// Build don't link: class X { int & flag; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/overload35.C b/gcc/testsuite/g++.old-deja/g++.jason/overload35.C index bb6e436..7c7db75 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/overload35.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/overload35.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // PRMS Id: 9647 -// Build don't link: class castBug { @@ -20,6 +20,6 @@ void test() { castBug b; castBug2 b2; - voidfn(b); // gets bogus error - voidfn(b2); // ERROR - discarding const + voidfn(b); // { dg-bogus "" } + voidfn(b2); // { dg-error "" } discarding const } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/overload36.C b/gcc/testsuite/g++.old-deja/g++.jason/overload36.C index f5e6fb6..324d766 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/overload36.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/overload36.C @@ -1,3 +1,4 @@ +// { dg-do run } // Test for subsequence checking in overload resolution. class foo { diff --git a/gcc/testsuite/g++.old-deja/g++.jason/overload4.C b/gcc/testsuite/g++.old-deja/g++.jason/overload4.C index 1da0ff0..6a30b43 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/overload4.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/overload4.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // Testcase for simple overloading resolution. -// Build don't link: void foo (int); void foo (int, int); diff --git a/gcc/testsuite/g++.old-deja/g++.jason/overload5.C b/gcc/testsuite/g++.old-deja/g++.jason/overload5.C index 8702bbb..9280c9d 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/overload5.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/overload5.C @@ -1,4 +1,5 @@ +// { dg-do assemble } // Testcase for simple overloading resolution. -int foo (); // ERROR - -void foo (); // ERROR - disallowed overload +int foo (); // { dg-error "" } +void foo (); // { dg-error "" } disallowed overload diff --git a/gcc/testsuite/g++.old-deja/g++.jason/overload6.C b/gcc/testsuite/g++.old-deja/g++.jason/overload6.C index 3ae9642..765c20d 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/overload6.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/overload6.C @@ -1,6 +1,6 @@ +// { dg-do assemble } // Bug: g++ thinks there is a default conversion from void* to B*. // There isn't. -// Build don't link: struct A { operator void* (); @@ -11,5 +11,5 @@ struct B { }; void foo (B* bp); void bar (A& a) { - foo (a); // ERROR - + foo (a); // { dg-error "" } } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/overload7.C b/gcc/testsuite/g++.old-deja/g++.jason/overload7.C index 3611505..2dc3b03 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/overload7.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/overload7.C @@ -1,6 +1,6 @@ +// { dg-do assemble } // Bug: g++ thinks there is a default conversion from A& to B*. // There isn't. -// Build don't link: struct A { operator A* (); @@ -11,5 +11,5 @@ struct B: public A { }; void foo (B* bp); void bar (A& a) { - foo (a); // ERROR - + foo (a); // { dg-error "" } } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/overload8.C b/gcc/testsuite/g++.old-deja/g++.jason/overload8.C index 9b605f8..3708b21 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/overload8.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/overload8.C @@ -1,7 +1,7 @@ +// { dg-do assemble } // Bug: g++ fails to catch the ambiguity below. -// Build don't link: struct A { operator int () { return 1; }; - operator int &() { return 1; }; // ERROR - + operator int &() { return 1; }; // { dg-error "" } }; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/overload9.C b/gcc/testsuite/g++.old-deja/g++.jason/overload9.C index 5b832fb..c6930a2 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/overload9.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/overload9.C @@ -1,6 +1,6 @@ +// { dg-do assemble } // PRMS Id: 4257 // Bug: g++ ignores non-member possibilities (ideal_candidate_ansi bug) -// Build don't link: class ostream { diff --git a/gcc/testsuite/g++.old-deja/g++.jason/parse1.C b/gcc/testsuite/g++.old-deja/g++.jason/parse1.C index a5ba83c..9d06b05 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/parse1.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/parse1.C @@ -1,8 +1,8 @@ +// { dg-do assemble } // Bug: g++ parses the declaration of r as a function declaration. -// Build don't link: void foo (int i) { int &r (i); - r = 1; // gets bogus error - + r = 1; // { dg-bogus "" } } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/parse10.C b/gcc/testsuite/g++.old-deja/g++.jason/parse10.C index b676336..751928a 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/parse10.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/parse10.C @@ -1,3 +1,4 @@ +// { dg-do run } // Testcase for precedence of ?: wrt = extern "C" int printf (const char *, ...); diff --git a/gcc/testsuite/g++.old-deja/g++.jason/parse11.C b/gcc/testsuite/g++.old-deja/g++.jason/parse11.C index 6c9c1fa..40864c1 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/parse11.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/parse11.C @@ -1,9 +1,9 @@ +// { dg-do assemble } // PRMS Id: 6825 -// Build don't link: class aClass { - ; // ERROR - missing declaration + ; // { dg-error "" } missing declaration private: - ; // ERROR - missing declaration + ; // { dg-error "" } missing declaration }; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/parse12.C b/gcc/testsuite/g++.old-deja/g++.jason/parse12.C index eb71775..8988ceb 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/parse12.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/parse12.C @@ -1,3 +1,4 @@ +// { dg-do run } // PRMS Id: 6821 struct A { @@ -6,7 +7,7 @@ struct A { struct B { A* p; - int f () { return (*p)(42); } // gets bogus error + int f () { return (*p)(42); } // { dg-bogus "" } }; int main () diff --git a/gcc/testsuite/g++.old-deja/g++.jason/parse13.C b/gcc/testsuite/g++.old-deja/g++.jason/parse13.C index 0ffef98..e438ee2 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/parse13.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/parse13.C @@ -1,8 +1,8 @@ -// Build don't link: +// { dg-do assemble } struct A { struct B {}; struct C; }; -struct A :: C : A :: B {}; // gets bogus error - parse error before `:' +struct A :: C : A :: B {}; // { dg-bogus "" } parse error before `:' diff --git a/gcc/testsuite/g++.old-deja/g++.jason/parse14.C b/gcc/testsuite/g++.old-deja/g++.jason/parse14.C index 20fcc47..34b5f84 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/parse14.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/parse14.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // Bug: g++ decides that A::foo is introducing a constructor declarator. -// Build don't link: struct A { typedef bool foo; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/parse2.C b/gcc/testsuite/g++.old-deja/g++.jason/parse2.C index 71be1f4..e33ffa6 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/parse2.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/parse2.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // Bug: g++ doesn't understand constructor syntax for pointers. -// Build don't link: void f () { char * p (0); diff --git a/gcc/testsuite/g++.old-deja/g++.jason/parse3.C b/gcc/testsuite/g++.old-deja/g++.jason/parse3.C index 16f99aa..bed74f4 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/parse3.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/parse3.C @@ -1,6 +1,6 @@ +// { dg-do assemble } // PRMS Id: 4484 (bug 2) // Bug: g++ does not grok abstract declarator syntax for method pointers. -// Build don't link: template <class T> class A { }; -void (A<int>::*p)() = (void (A<int>::*)())0; // gets bogus error - abstract declarator failure +void (A<int>::*p)() = (void (A<int>::*)())0; // { dg-bogus "" } abstract declarator failure diff --git a/gcc/testsuite/g++.old-deja/g++.jason/parse4.C b/gcc/testsuite/g++.old-deja/g++.jason/parse4.C index 95e0f44..1372222 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/parse4.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/parse4.C @@ -1,7 +1,7 @@ +// { dg-do assemble } // Bug: g++ doesn't handle superfluous parentheses when redeclaring a TYPENAME. -// Build don't link: typedef int foo; class A { - typedef int ((foo)); // gets bogus error - + typedef int ((foo)); // { dg-bogus "" } }; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/parse5.C b/gcc/testsuite/g++.old-deja/g++.jason/parse5.C index 519deb2..251db3d 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/parse5.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/parse5.C @@ -1,12 +1,12 @@ +// { dg-do assemble } // Bug: foo (bar) should be a declaration of a static data member, not a // function; it's getting caught by the rules for constructors. -// Build don't link: typedef int foo; typedef int bar; struct A { - static foo (bar); // gets bogus error + static foo (bar); // { dg-bogus "" } }; -int i = A::bar; // gets bogus error -int (*fp)(bar) = A::foo; // ERROR - +int i = A::bar; // { dg-bogus "" } +int (*fp)(bar) = A::foo; // { dg-error "" } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/parse6.C b/gcc/testsuite/g++.old-deja/g++.jason/parse6.C index 677dbe2..ba37f10 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/parse6.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/parse6.C @@ -1,9 +1,9 @@ +// { dg-do assemble } // PRMS id: 4653 // Bug: g++ tries to resolve declarator/expression ambiguities too soon. -// Build don't link: template<class T> struct A { }; void f () { - void (A<int>::*pmf) (); // gets bogus error - late binding + void (A<int>::*pmf) (); // { dg-bogus "" } late binding } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/parse7.C b/gcc/testsuite/g++.old-deja/g++.jason/parse7.C index bd9744c..40b2287 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/parse7.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/parse7.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // Bug: g++ tries to parse this as a constructor. -// Build don't link: typedef int foo; struct A { diff --git a/gcc/testsuite/g++.old-deja/g++.jason/parse8.C b/gcc/testsuite/g++.old-deja/g++.jason/parse8.C index 1ed9de7..a03dd18 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/parse8.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/parse8.C @@ -1,2 +1,2 @@ -// Build don't link: -void foo(const int* const); // gets bogus error +// { dg-do assemble } +void foo(const int* const); // { dg-bogus "" } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/parse9.C b/gcc/testsuite/g++.old-deja/g++.jason/parse9.C index da66fea..c0752f7 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/parse9.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/parse9.C @@ -1,3 +1,4 @@ +// { dg-do run } // PRMS Id: 5720 // Bug: the extra set of parens confuses the expr/declarator disambiguation. @@ -13,6 +14,6 @@ int main(int argc, char * argv[]) { int * i = &argc; - Fu((*i)).print(); // gets bogus error + Fu((*i)).print(); // { dg-bogus "" } Fu((*j)); } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/pmem.C b/gcc/testsuite/g++.old-deja/g++.jason/pmem.C index 76e8732..90c6122 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/pmem.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/pmem.C @@ -1,11 +1,11 @@ +// { dg-do assemble } // Bug: g++ parses the declaration of 'char A::* foo' below as a // declaration of 'char A'. -// Build don't link: class A { }; typedef int foo; void f () { char A::* foo; - foo = 0; // gets bogus error - parsing blunder + foo = 0; // { dg-bogus "" } parsing blunder } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/pmem2.C b/gcc/testsuite/g++.old-deja/g++.jason/pmem2.C index d34809c..ec1ff7f 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/pmem2.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/pmem2.C @@ -1,3 +1,4 @@ +// { dg-do run } template <class Called> class aCallback { diff --git a/gcc/testsuite/g++.old-deja/g++.jason/pmem3.C b/gcc/testsuite/g++.old-deja/g++.jason/pmem3.C index a780c23..1476266 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/pmem3.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/pmem3.C @@ -1,3 +1,4 @@ +// { dg-do run } // Test that comparison of pointers to members does not complain about // contravariance violation. diff --git a/gcc/testsuite/g++.old-deja/g++.jason/pmem4.C b/gcc/testsuite/g++.old-deja/g++.jason/pmem4.C index 3ce2bb9..b05c86d 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/pmem4.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/pmem4.C @@ -1,6 +1,7 @@ +// { dg-do assemble } struct X {}; -X& X::*PTM_1; // ERROR - pointer to reference member -void X::*PTM_2; // ERROR - pointer to void member +X& X::*PTM_1; // { dg-error "" } pointer to reference member +void X::*PTM_2; // { dg-error "" } pointer to void member struct A { static int& ir; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/pmf.C b/gcc/testsuite/g++.old-deja/g++.jason/pmf.C index 6773639..b601dd9 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/pmf.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/pmf.C @@ -1,6 +1,6 @@ +// { dg-do assemble } // PRMS Id: 4333 // Bug: g++ can't deal with casts to pointer to member function. -// Build don't link: class A { }; typedef void (A::* pmf)(); diff --git a/gcc/testsuite/g++.old-deja/g++.jason/pmf2.C b/gcc/testsuite/g++.old-deja/g++.jason/pmf2.C index 7ebb23b..30a3aab 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/pmf2.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/pmf2.C @@ -1,6 +1,6 @@ +// { dg-do assemble } // PRMS Id: 4484 (bug 3) // Bug: g++ does implicitly take the address of methods passed to fns. -// Build don't link: struct A { void f (); @@ -9,5 +9,5 @@ struct A { void g (void (A::*)()); void h () { - g (A::f); // ERROR - failed conversion to method pointer + g (A::f); // { dg-error "" } failed conversion to method pointer } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/pmf3.C b/gcc/testsuite/g++.old-deja/g++.jason/pmf3.C index 4d4d6ef..636ac5d 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/pmf3.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/pmf3.C @@ -1,7 +1,7 @@ +// { dg-do assemble } // From: enewton@uunet.uu.NET // Subject: g++ 2.5.8: cannot cast member function pointers // Date: 27 Jan 1994 01:22:56 -0500 -// Build don't link: struct A { void f(char); diff --git a/gcc/testsuite/g++.old-deja/g++.jason/pmf4.C b/gcc/testsuite/g++.old-deja/g++.jason/pmf4.C index a0af9f4..709532e 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/pmf4.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/pmf4.C @@ -1,9 +1,9 @@ +// { dg-do assemble } // PRMS Id: 4484 (bug 5) // Bug: g++ can't convert between pmf types. -// Build don't link: class A; typedef void (A::*pmf)(); typedef void (A::*pmfc)() const; -pmfc p = (pmfc)(pmf)0; // gets bogus error - pmf conversion +pmfc p = (pmfc)(pmf)0; // { dg-bogus "" } pmf conversion diff --git a/gcc/testsuite/g++.old-deja/g++.jason/pmf5.C b/gcc/testsuite/g++.old-deja/g++.jason/pmf5.C index c27bec1..a540524 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/pmf5.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/pmf5.C @@ -1,6 +1,6 @@ +// { dg-do assemble } +// { dg-options "" } // PRMS Id: 4985 -// Build don't link: -// Special g++ Options: struct Thing { int OverloadFn() const; @@ -15,4 +15,4 @@ struct ThingEntry { static ThingEntry KeyWordTable[] = { &Thing::FunctionA, Thing::OverloadFn, -}; // WARNING - implicit & +}; // { dg-warning "" } implicit & diff --git a/gcc/testsuite/g++.old-deja/g++.jason/pmf6.C b/gcc/testsuite/g++.old-deja/g++.jason/pmf6.C index 08e425b..13c0981 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/pmf6.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/pmf6.C @@ -1,7 +1,7 @@ +// { dg-do assemble } // PRMS Id: 5656 // Bug: g++ tries (which is a bug) and fails (which is a bug) to initialize // var at runtime. -// Build don't link: struct A { diff --git a/gcc/testsuite/g++.old-deja/g++.jason/pmf7.C b/gcc/testsuite/g++.old-deja/g++.jason/pmf7.C index 8ef92fb..7601333 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/pmf7.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/pmf7.C @@ -1,3 +1,4 @@ +// { dg-do run } // PRMS Id: 6486 // Make sure that no confused handling of COND_EXPRs and SAVE_EXPRs messes // with the number of calls to foo. diff --git a/gcc/testsuite/g++.old-deja/g++.jason/pmf8.C b/gcc/testsuite/g++.old-deja/g++.jason/pmf8.C index 7fccb31c..b877a81 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/pmf8.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/pmf8.C @@ -1,3 +1,4 @@ +// { dg-do run } // PRMS Id: 6905 class Parent { diff --git a/gcc/testsuite/g++.old-deja/g++.jason/pmf9.C b/gcc/testsuite/g++.old-deja/g++.jason/pmf9.C index 335cfcc..6d86498 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/pmf9.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/pmf9.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // PRMS id: g++/13340 -// Build don't link: class rectangle { diff --git a/gcc/testsuite/g++.old-deja/g++.jason/pmftemp.C b/gcc/testsuite/g++.old-deja/g++.jason/pmftemp.C index 87d2ed1..d54fc57 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/pmftemp.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/pmftemp.C @@ -1,16 +1,16 @@ +// { dg-do assemble } // PRMS Id: 4484 (bug 1) // Bug: g++ does not support templates involving method pointers. -// Build don't link: struct A { void f (); }; template <class T> void -f (void (T::*p)()) // gets bogus error - use of template parm as aggregate +f (void (T::*p)()) // { dg-bogus "" } use of template parm as aggregate { } void g () { - f (&A::f); // gets bogus error - templates and method pointers + f (&A::f); // { dg-bogus "" } templates and method pointers } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/precedence.C b/gcc/testsuite/g++.old-deja/g++.jason/precedence.C index af2dcde..a11abcd 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/precedence.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/precedence.C @@ -1,6 +1,6 @@ +// { dg-do assemble } // Bug: g++ groups ->* before casts. // PRMS Id: 4484 (bug 4) -// Build don't link: struct A { }; struct B : public A { void f (); }; @@ -10,5 +10,5 @@ void g () A* ap = new B; void (B::*p)() = &B::f; - ((B*)ap->*p)(); // gets bogus error - incorrect precedence + ((B*)ap->*p)(); // { dg-bogus "" } incorrect precedence } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/redecl1.C b/gcc/testsuite/g++.old-deja/g++.jason/redecl1.C index fecace3..0cc528a 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/redecl1.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/redecl1.C @@ -1,12 +1,13 @@ +// { dg-do assemble } class A { public: A (const A& ccref); - friend A const re (const A& v1); // ERROR - + friend A const re (const A& v1); // { dg-error "" } }; A // const re (const A& ref) -{ // ERROR - mismatched decls +{ // { dg-error "" } mismatched decls return A (ref); } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/ref1.C b/gcc/testsuite/g++.old-deja/g++.jason/ref1.C index 590ddf5..5099077 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/ref1.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/ref1.C @@ -1,8 +1,8 @@ +// { dg-do assemble } // Bug: g++ tries to call a constructor for a reference. Doh! -// Build don't link: class B; struct A { B & b; - A (B & x) : b (x) { } // gets bogus error - -}; // gets bogus error - + A (B & x) : b (x) { } // { dg-bogus "" } +}; // { dg-bogus "" } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/ref10.C b/gcc/testsuite/g++.old-deja/g++.jason/ref10.C index 876ca45..4fe6ffd 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/ref10.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/ref10.C @@ -1,3 +1,4 @@ +// { dg-do run } // Test that conversion from D* to B*& works properly. extern "C" int printf (const char *, ...); diff --git a/gcc/testsuite/g++.old-deja/g++.jason/ref11.C b/gcc/testsuite/g++.old-deja/g++.jason/ref11.C index b8c6f31..e8f8db2 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/ref11.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/ref11.C @@ -1,3 +1,4 @@ +// { dg-do run } int main(int argc, char ** argv) { int (&var_field_ref)[] = * (int (*)[]) new int [42]; @@ -5,11 +6,11 @@ int main(int argc, char ** argv) { int static_field[42]; - int *const &var_field_ptr_ref = var_field_ref; // gets bogus error + int *const &var_field_ptr_ref = var_field_ref; // { dg-bogus "" } int *const &fix_field_ptr_ref = fix_field_ref; int *const &static_field_ptr_ref = static_field; - int * var_field_ptr = var_field_ref; // gets bogus error + int * var_field_ptr = var_field_ref; // { dg-bogus "" } int * fix_field_ptr = fix_field_ref; int * static_field_ptr = static_field; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/ref12.C b/gcc/testsuite/g++.old-deja/g++.jason/ref12.C index 30e9633..31b3f3c 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/ref12.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/ref12.C @@ -1,3 +1,4 @@ +// { dg-do run } void f (char *const &) { } int main () { diff --git a/gcc/testsuite/g++.old-deja/g++.jason/ref2.C b/gcc/testsuite/g++.old-deja/g++.jason/ref2.C index fe97990..0fd7893 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/ref2.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/ref2.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // Bug: g++ can't deal with references to arrays. -// Build don't link: typedef float Matrix[4][4]; Matrix m; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/ref3.C b/gcc/testsuite/g++.old-deja/g++.jason/ref3.C index 2bdd023..b9923cb 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/ref3.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/ref3.C @@ -1,7 +1,7 @@ +// { dg-do assemble } // PRMS Id: ???? -// Build don't link: void f (const int& i) { - &(int&)i; // gets bogus error - references ARE lvalues + &(int&)i; // { dg-bogus "" } references ARE lvalues } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/ref4.C b/gcc/testsuite/g++.old-deja/g++.jason/ref4.C index 5c62d6a..53461d0 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/ref4.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/ref4.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } void f (); void (&fr)() = f; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/ref5.C b/gcc/testsuite/g++.old-deja/g++.jason/ref5.C index 0789522..3ab3442 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/ref5.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/ref5.C @@ -1,8 +1,8 @@ -// Build don't link: +// { dg-do assemble } int i; -int &const j = i; // ERROR - invalid const -int &const f(); // ERROR - invalid const +int &const j = i; // { dg-error "" } invalid const +int &const f(); // { dg-error "" } invalid const void g () { j = 1; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/ref6.C b/gcc/testsuite/g++.old-deja/g++.jason/ref6.C index afebb6b..17848af 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/ref6.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/ref6.C @@ -1,2 +1,3 @@ +// { dg-do assemble } const int &f(); -int &a = f(); // ERROR - +int &a = f(); // { dg-error "" } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/ref7.C b/gcc/testsuite/g++.old-deja/g++.jason/ref7.C index af64d6a..a7a7f8c 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/ref7.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/ref7.C @@ -1,3 +1,4 @@ +// { dg-do run } // Testcase for the lifetime of a temporary object which is used to // initialize a reference. diff --git a/gcc/testsuite/g++.old-deja/g++.jason/ref8.C b/gcc/testsuite/g++.old-deja/g++.jason/ref8.C index 10e335e..c134134 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/ref8.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/ref8.C @@ -1,3 +1,4 @@ +// { dg-do run } // PRMS Id: 5184 // Bug: cast to C& below does not adjust address diff --git a/gcc/testsuite/g++.old-deja/g++.jason/ref9.C b/gcc/testsuite/g++.old-deja/g++.jason/ref9.C index 099d342..db44262 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/ref9.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/ref9.C @@ -1,3 +1,4 @@ +// { dg-do run } // Bug: g++ re-evaluates the initializer for r before calling f(); since i has // changed to an invalid index, this breaks. diff --git a/gcc/testsuite/g++.old-deja/g++.jason/report.C b/gcc/testsuite/g++.old-deja/g++.jason/report.C index 73adee8..fad87fc 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/report.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/report.C @@ -1,6 +1,6 @@ -// Build don't link: +// { dg-do assemble } +// { dg-options "-Wreturn-type" } // GROUPS passed error-reporting -// Special g++ Options: -Wreturn-type // DR 295 allows qualification via typedef @@ -32,37 +32,37 @@ char ***spp = &sp; int foo (int a = (**bar) (s)) { - return doowop<foo>::bar; // ERROR - not a member + return doowop<foo>::bar; // { dg-error "" } not a member } int foo2 (int (*a)(int) = &foo) { - undef4 (1); // ERROR - implicit declaration + undef4 (1); // { dg-error "" } implicit declaration return 1; } class X{ - class Y{}; // ERROR - private + class Y{}; // { dg-error "" } private }; typedef int const * bart (); //The following is DR295 dependant -typedef bart const * const * bar2; // ERROR - constifying qualifiers -typedef bart volatile * const * bar2v; // ERROR - qualifiers +typedef bart const * const * bar2; // { dg-error "" } constifying qualifiers +typedef bart volatile * const * bar2v; // { dg-error "" } qualifiers bar2 baz (X::Y y) -{ // ERROR - in this context - X::Y f; // ERROR - in this context +{ // { dg-error "" } in this context + X::Y f; // { dg-error "" } in this context bar2 wa [5]; wa[0] = baz(f); - undef2 (1); // ERROR - implicit declaration + undef2 (1); // { dg-error "" } implicit declaration } int ninny () { struct A { - static int ninny2 () { return badoo<'\001'>::foo; } // ERROR - not a member + static int ninny2 () { return badoo<'\001'>::foo; } // { dg-error "" } not a member }; return A::ninny2(); @@ -70,5 +70,5 @@ int ninny () int darg (char X::*p) { - undef3 (1); // ERROR - implicit declaration + undef3 (1); // { dg-error "" } implicit declaration } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/return.C b/gcc/testsuite/g++.old-deja/g++.jason/return.C index c20d250..af9791c 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/return.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/return.C @@ -1,3 +1,4 @@ +// { dg-do run } // PRMS Id: 5331 // Bug: the return value of foo is constructed in a temporary and then // copied into the return slot. This is not necessary. diff --git a/gcc/testsuite/g++.old-deja/g++.jason/return2.C b/gcc/testsuite/g++.old-deja/g++.jason/return2.C index 29da5b2..132c079 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/return2.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/return2.C @@ -1,3 +1,4 @@ +// { dg-do run } // PRMS Id: 5368 // Bug: the X temporary in foo() is not destroyed. diff --git a/gcc/testsuite/g++.old-deja/g++.jason/return3.C b/gcc/testsuite/g++.old-deja/g++.jason/return3.C index ac52bc3..4e60e39 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/return3.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/return3.C @@ -1,3 +1,4 @@ +// { dg-do run } // PRMS id: 10912 struct A { diff --git a/gcc/testsuite/g++.old-deja/g++.jason/rfg1.C b/gcc/testsuite/g++.old-deja/g++.jason/rfg1.C index a9b581f..6ded343 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/rfg1.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/rfg1.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // Bug: g++ parses the declaration of i as a functional cast. -// Build don't link: void take_int (int arg) { } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/rfg10.C b/gcc/testsuite/g++.old-deja/g++.jason/rfg10.C index 8e7d2d1..e53baf6 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/rfg10.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/rfg10.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // Bug: g++ doesn't notice the overflow in the enum values. #include <limits.h> @@ -6,4 +7,4 @@ enum COLOR { red, green = ULONG_MAX, blue -}; // ERROR - enum overflow +}; // { dg-error "" } enum overflow diff --git a/gcc/testsuite/g++.old-deja/g++.jason/rfg11.C b/gcc/testsuite/g++.old-deja/g++.jason/rfg11.C index 2b3e4cc..3a3db66 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/rfg11.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/rfg11.C @@ -1 +1,2 @@ -typedef int int; /* ERROR - trying to redefine int */ +// { dg-do assemble } +typedef int int; /* { dg-error "" } trying to redefine int */ diff --git a/gcc/testsuite/g++.old-deja/g++.jason/rfg12.C b/gcc/testsuite/g++.old-deja/g++.jason/rfg12.C index e33404d..5548e0f 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/rfg12.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/rfg12.C @@ -1 +1,2 @@ -int array[3] = { 1, 2, 3, 4 }; /* ERROR - excess initializer elements */ +// { dg-do assemble } +int array[3] = { 1, 2, 3, 4 }; /* { dg-error "" } excess initializer elements */ diff --git a/gcc/testsuite/g++.old-deja/g++.jason/rfg13.C b/gcc/testsuite/g++.old-deja/g++.jason/rfg13.C index 77560b3..ae894d1 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/rfg13.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/rfg13.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // Bug: g++ does overloading on a function-by-function basis. void @@ -7,5 +8,5 @@ f () { extern void g (); } - fp = g; /* ERROR - no 'g' in scope */ + fp = g; /* { dg-error "" } no 'g' in scope */ } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/rfg14.C b/gcc/testsuite/g++.old-deja/g++.jason/rfg14.C index 8475ecd..85a346a 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/rfg14.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/rfg14.C @@ -1,3 +1,4 @@ +// { dg-do assemble } void *vp; int (*ap)[]; struct S *sp; @@ -7,9 +8,9 @@ int (*fp)(); void test () { - vp++; /* ERROR - incrementing void * */ - ap++; /* ERROR - incrementing ptr to incomplete type */ - sp++; /* ERROR - incrementing ptr to incomplete type */ - up++; /* ERROR - incrementing ptr to incomplete type */ - fp++; /* ERROR - incrementing ptr to function */ + vp++; /* { dg-error "" } incrementing void * */ + ap++; /* { dg-error "" } incrementing ptr to incomplete type */ + sp++; /* { dg-error "" } incrementing ptr to incomplete type */ + up++; /* { dg-error "" } incrementing ptr to incomplete type */ + fp++; /* { dg-error "" } incrementing ptr to function */ } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/rfg16.C b/gcc/testsuite/g++.old-deja/g++.jason/rfg16.C index 75d87a5..6a39ff4 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/rfg16.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/rfg16.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // Bug: g++ doesn't push parameter decls as they are parsed. -// Build don't link: -void (*ptr) (int foo, int array[sizeof(foo)]); // gets bogus error XFAIL *-*-* -void test2 (int bar, int array[sizeof(bar)]) { } // gets bogus error XFAIL *-*-* +void (*ptr) (int foo, int array[sizeof(foo)]); // { dg-bogus "" "" { xfail *-*-* } } +void test2 (int bar, int array[sizeof(bar)]) { } // { dg-bogus "" "" { xfail *-*-* } } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/rfg17.C b/gcc/testsuite/g++.old-deja/g++.jason/rfg17.C index 8291650..a138f9a 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/rfg17.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/rfg17.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // The default assignment operator for B uses array assignment, so we can't // just disallow it... @@ -11,5 +12,5 @@ void test () { b1 = b2; /* OK */ - a1 = a2; /* ERROR - array assignment */ + a1 = a2; /* { dg-error "" } array assignment */ } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/rfg18.C b/gcc/testsuite/g++.old-deja/g++.jason/rfg18.C index 53c3dd1..9c32b1f 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/rfg18.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/rfg18.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // Any expression may be explicitly converted to type void. -// Build don't link: struct S { int m[10]; } object; struct S f () { return object; } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/rfg2.C b/gcc/testsuite/g++.old-deja/g++.jason/rfg2.C index 9c30c36..44cb1cb 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/rfg2.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/rfg2.C @@ -1,6 +1,6 @@ +// { dg-do assemble } // Bug: g++ complains about a class definition containing a const member // but no constructor; it shouldn't complain at that point, since this is // valid use. -// Build don't link: struct S { const int member; } object = { 0 }; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/rfg20.C b/gcc/testsuite/g++.old-deja/g++.jason/rfg20.C index f41830a..3796294 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/rfg20.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/rfg20.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } typedef void func_type (); func_type *fp; @@ -6,5 +6,5 @@ void *vp; void example () { - vp != fp; // ERROR - no conversion from pfn to void* + vp != fp; // { dg-error "" } no conversion from pfn to void* } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/rfg21.C b/gcc/testsuite/g++.old-deja/g++.jason/rfg21.C index d6389be..cce28e8 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/rfg21.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/rfg21.C @@ -1 +1,2 @@ -char array0[4] = "abcde"; /* ERROR - initializer too long */ +// { dg-do assemble } +char array0[4] = "abcde"; /* { dg-error "" } initializer too long */ diff --git a/gcc/testsuite/g++.old-deja/g++.jason/rfg22.C b/gcc/testsuite/g++.old-deja/g++.jason/rfg22.C index 7be8ba0..7fee2ac 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/rfg22.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/rfg22.C @@ -1,4 +1,5 @@ -static void f (); // ERROR - used but not defined +// { dg-do assemble } +static void f (); // { dg-error "" } used but not defined void g () { diff --git a/gcc/testsuite/g++.old-deja/g++.jason/rfg23.C b/gcc/testsuite/g++.old-deja/g++.jason/rfg23.C index 73bcfc0..8bf9f7c 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/rfg23.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/rfg23.C @@ -1,2 +1,3 @@ - signed char *ptr2 = "hello"; /* ERROR - changing sign */ -unsigned char *ptr3 = "hello"; /* ERROR - changing sign */ +// { dg-do assemble } + signed char *ptr2 = "hello"; /* { dg-error "" } changing sign */ +unsigned char *ptr3 = "hello"; /* { dg-error "" } changing sign */ diff --git a/gcc/testsuite/g++.old-deja/g++.jason/rfg24.C b/gcc/testsuite/g++.old-deja/g++.jason/rfg24.C index e5987a1..1aa05c0 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/rfg24.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/rfg24.C @@ -1,8 +1,9 @@ +// { dg-do assemble } typedef int Int; Int Int_object_1; void test () { - ((Int) Int_object_1) = Int_object_1; /* ERROR - not an lvalue*/ + ((Int) Int_object_1) = Int_object_1; /* { dg-error "" } not an lvalue*/ } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/rfg25.C b/gcc/testsuite/g++.old-deja/g++.jason/rfg25.C index deb319d..713a691 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/rfg25.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/rfg25.C @@ -1 +1,2 @@ -struct { int :0; }; /* ERROR - anon struct not used to declare objects */ +// { dg-do assemble } +struct { int :0; }; /* { dg-error "" } anon struct not used to declare objects */ diff --git a/gcc/testsuite/g++.old-deja/g++.jason/rfg26.C b/gcc/testsuite/g++.old-deja/g++.jason/rfg26.C index 1ad204e..2b7e060 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/rfg26.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/rfg26.C @@ -1,3 +1,4 @@ +// { dg-do assemble } typedef void (FTYPE) (); FTYPE f; /* ok */ @@ -5,5 +6,5 @@ FTYPE f; /* ok */ void test_0 () { - (FTYPE) f; /* ERROR - casting to function type */ + (FTYPE) f; /* { dg-error "" } casting to function type */ } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/rfg27.C b/gcc/testsuite/g++.old-deja/g++.jason/rfg27.C index a6c09b5..dd20747 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/rfg27.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/rfg27.C @@ -1,7 +1,8 @@ +// { dg-do assemble } +// { dg-options "-pedantic-errors" } // Don't compile this one with -Wno-long-long... -// Special g++ Options: -pedantic-errors -short volatile short var_0_2; /* ERROR - duplicate short */ -long volatile long var_0_3; /* ERROR - duplicate long */ -signed volatile signed var_0_7; /* ERROR - duplicate signed */ -unsigned volatile unsigned var_0_8; /* ERROR - duplicate unsigned */ +short volatile short var_0_2; /* { dg-error "" } duplicate short */ +long volatile long var_0_3; /* { dg-error "" } duplicate long */ +signed volatile signed var_0_7; /* { dg-error "" } duplicate signed */ +unsigned volatile unsigned var_0_8; /* { dg-error "" } duplicate unsigned */ diff --git a/gcc/testsuite/g++.old-deja/g++.jason/rfg28.C b/gcc/testsuite/g++.old-deja/g++.jason/rfg28.C index 246c7e6..e910c24 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/rfg28.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/rfg28.C @@ -1,3 +1,4 @@ +// { dg-do assemble } /* From 01/25/94 working paper (7.1.3): If, in a decl-specifier-seq containing the decl-specifier typedef, @@ -5,5 +6,5 @@ qualifiers, the typedef declaration is ill-formed. */ -typedef foo; // ERROR - invalid typedef -typedef const bar; // ERROR - invalid typedef +typedef foo; // { dg-error "" } invalid typedef +typedef const bar; // { dg-error "" } invalid typedef diff --git a/gcc/testsuite/g++.old-deja/g++.jason/rfg3.C b/gcc/testsuite/g++.old-deja/g++.jason/rfg3.C index fc25451..93f7468 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/rfg3.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/rfg3.C @@ -1,6 +1,6 @@ +// { dg-do assemble } // Bug: g++ remembers the members of OUTER and complains about the second // definition. -// Build don't link: void test () diff --git a/gcc/testsuite/g++.old-deja/g++.jason/rfg4.C b/gcc/testsuite/g++.old-deja/g++.jason/rfg4.C index 2b88395..fbc3841 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/rfg4.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/rfg4.C @@ -1,6 +1,6 @@ +// { dg-do assemble } +// { dg-options "-ansi -pedantic-errors -w" } // Bug: f1 and f2 are treated as overloaded when they aren't. -// Build don't link: -// Special g++ Options: -ansi -pedantic-errors -w int i; void f1(double) { } @@ -9,5 +9,5 @@ void f2(double) { } void test () { - i ? f1 : f2; // gets bogus error - improper overloading + i ? f1 : f2; // { dg-bogus "" } improper overloading } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/rfg5.C b/gcc/testsuite/g++.old-deja/g++.jason/rfg5.C index 8d0cfb5..11ee9c0 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/rfg5.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/rfg5.C @@ -1,11 +1,11 @@ +// { dg-do assemble } +// { dg-options "-ansi -pedantic-errors -w" } // Bug: func is treated as an overloaded function when it isn't. -// Build don't link: -// Special g++ Options: -ansi -pedantic-errors -w int *func () { return 0; } void test () { - *func; // gets bogus error - improper overloading + *func; // { dg-bogus "" } improper overloading } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/rfg6.C b/gcc/testsuite/g++.old-deja/g++.jason/rfg6.C index 0f3c9c3..fa422d3 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/rfg6.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/rfg6.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } wchar_t *single = L"xyz" ; wchar_t *(array[]) = { L"xyz" }; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/rfg7.C b/gcc/testsuite/g++.old-deja/g++.jason/rfg7.C index 8f3835f..db19dee 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/rfg7.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/rfg7.C @@ -1,6 +1,6 @@ +// { dg-do assemble } // Bug: fixincludes and/or cpp mangle the definition of wchar_t so that this // doesn't work. -// Build don't link: #include <stdlib.h> -wchar_t array[] = L"xxx"; // gets bogus error - wchar_t +wchar_t array[] = L"xxx"; // { dg-bogus "" } wchar_t diff --git a/gcc/testsuite/g++.old-deja/g++.jason/rfg8.C b/gcc/testsuite/g++.old-deja/g++.jason/rfg8.C index 401d05d..39ef34c 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/rfg8.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/rfg8.C @@ -1,4 +1,4 @@ +// { dg-do assemble } // Bug: g++ is wrongfully pedantic about union initializers. -// Build don't link: union U { int mbr; } array[1] = { 0 }; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/rfg9.C b/gcc/testsuite/g++.old-deja/g++.jason/rfg9.C index abf6335..ec15d13 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/rfg9.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/rfg9.C @@ -1,3 +1,4 @@ +// { dg-do assemble } int cond; int i; int *ip; @@ -5,5 +6,5 @@ int *ip; void test () { - cond ? i : ip; /* ERROR - pointer/integer mismatch */ + cond ? i : ip; /* { dg-error "" } pointer/integer mismatch */ } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/rvalue1.C b/gcc/testsuite/g++.old-deja/g++.jason/rvalue1.C index 01cd497..c3afd36 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/rvalue1.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/rvalue1.C @@ -1,3 +1,4 @@ +// { dg-do run } // PRMS Id: 6000 // Bug: g++ gets confused trying to build up a reference to a cast. diff --git a/gcc/testsuite/g++.old-deja/g++.jason/rvalue2.C b/gcc/testsuite/g++.old-deja/g++.jason/rvalue2.C index 71f59bc..77189a5 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/rvalue2.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/rvalue2.C @@ -1,3 +1,4 @@ +// { dg-do run } // Test for undesired aliasing. struct A { diff --git a/gcc/testsuite/g++.old-deja/g++.jason/rvalue3.C b/gcc/testsuite/g++.old-deja/g++.jason/rvalue3.C index 4e18cfb..58cdad5 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/rvalue3.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/rvalue3.C @@ -1,5 +1,6 @@ +// { dg-do assemble } int main () { int i; - int &ir = (int&)(int)i; // ERROR - casting rvalue to reference type + int &ir = (int&)(int)i; // { dg-error "" } casting rvalue to reference type } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/scoping.C b/gcc/testsuite/g++.old-deja/g++.jason/scoping.C index 49715be..ef16730 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/scoping.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/scoping.C @@ -1,6 +1,6 @@ +// { dg-do assemble } // PRMS Id: 3977 // Bug: A member function is not hidden properly by a later use of its name. -// Build don't link: struct A { void index (); diff --git a/gcc/testsuite/g++.old-deja/g++.jason/scoping10.C b/gcc/testsuite/g++.old-deja/g++.jason/scoping10.C index 9119951..88411fa 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/scoping10.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/scoping10.C @@ -1,14 +1,15 @@ +// { dg-do assemble } // Test for scope-based hiding of functions. void f (char *); struct A { - void f (); // ERROR - referred to + void f (); // { dg-error "" } referred to }; struct B : public A { void g (char *); void h () { - extern void g (); // ERROR - - f("foo"); // ERROR - hidden - g("foo"); // ERROR - hidden + extern void g (); // { dg-error "" } + f("foo"); // { dg-error "" } hidden + g("foo"); // { dg-error "" } hidden } }; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/scoping11.C b/gcc/testsuite/g++.old-deja/g++.jason/scoping11.C index 870b9d5..9a3717d 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/scoping11.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/scoping11.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } void f (); void g () @@ -6,6 +6,6 @@ void g () int f; { void f (); - f (); // gets bogus error - trying to call integer + f (); // { dg-bogus "" } trying to call integer } } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/scoping12.C b/gcc/testsuite/g++.old-deja/g++.jason/scoping12.C index 96e4ab7..3a1060a 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/scoping12.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/scoping12.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } void f () { struct A { @@ -6,5 +6,5 @@ void f () }; } void h () { - g (); // ERROR - no g in scope + g (); // { dg-error "" } no g in scope } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/scoping13.C b/gcc/testsuite/g++.old-deja/g++.jason/scoping13.C index 2fd1707..fc90902 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/scoping13.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/scoping13.C @@ -1,10 +1,10 @@ -// Build don't link: +// { dg-do assemble } struct A { typedef int foo; }; struct B: public A { typedef int bar; struct C { - void g (B::bar); // gets bogus error - nested type failure + void g (B::bar); // { dg-bogus "" } nested type failure void f (B::foo); }; }; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/scoping14.C b/gcc/testsuite/g++.old-deja/g++.jason/scoping14.C index d8c1938..f53f72a 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/scoping14.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/scoping14.C @@ -1,6 +1,6 @@ +// { dg-do assemble } // [class.scope0]: The scope of a name declared in a class consists // ... also of all ... default arguments ... in that class .... -// Build don't link: struct A { void f (int A::* = &A::i); diff --git a/gcc/testsuite/g++.old-deja/g++.jason/scoping15.C b/gcc/testsuite/g++.old-deja/g++.jason/scoping15.C index bfebf24..5485b29 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/scoping15.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/scoping15.C @@ -1,6 +1,6 @@ +// { dg-do assemble } // Bug: g++ ignores the :: qualification and dies trying to treat an integer // variable as a list of functions. -// Build don't link: class DComplex { public: diff --git a/gcc/testsuite/g++.old-deja/g++.jason/scoping16.C b/gcc/testsuite/g++.old-deja/g++.jason/scoping16.C index d88501e..9b9d915 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/scoping16.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/scoping16.C @@ -1,4 +1,5 @@ +// { dg-do assemble } struct A { - int a(); // ERROR - - int a; // ERROR - + int a(); // { dg-error "" } + int a; // { dg-error "" } }; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/scoping17.C b/gcc/testsuite/g++.old-deja/g++.jason/scoping17.C index 26fb456..c51dbef 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/scoping17.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/scoping17.C @@ -1,3 +1,4 @@ +// { dg-do run } // Test that the integer hides the struct in block scope. int main () diff --git a/gcc/testsuite/g++.old-deja/g++.jason/scoping2.C b/gcc/testsuite/g++.old-deja/g++.jason/scoping2.C index 68c8c75..cf80da1 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/scoping2.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/scoping2.C @@ -1,6 +1,6 @@ +// { dg-do assemble } // Bug: A function is not hidden properly by a use of its name in an // inner scope. -// Build don't link: struct A { diff --git a/gcc/testsuite/g++.old-deja/g++.jason/scoping3.C b/gcc/testsuite/g++.old-deja/g++.jason/scoping3.C index 578de7a..31a75cf 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/scoping3.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/scoping3.C @@ -1,8 +1,8 @@ +// { dg-do assemble } // Bug: g++ does not grok nested types very well. -// Build don't link: class A { class B; friend class B; - class B { }; // gets bogus error - + class B { }; // { dg-bogus "" } }; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/scoping4.C b/gcc/testsuite/g++.old-deja/g++.jason/scoping4.C index 94a49bf..54f5b67 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/scoping4.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/scoping4.C @@ -1,6 +1,6 @@ +// { dg-do assemble } // PRMS Id: 4375 // Bug: g++ fails to keep track of nested typedefs properly. -// Build don't link: class A { public: @@ -18,8 +18,8 @@ public: B(Ptr a_ptr); }; -A::A(Ptr string) { // gets bogus error - - s = string; // gets bogus error - +A::A(Ptr string) { // { dg-bogus "" } + s = string; // { dg-bogus "" } } int main() { diff --git a/gcc/testsuite/g++.old-deja/g++.jason/scoping5.C b/gcc/testsuite/g++.old-deja/g++.jason/scoping5.C index 4572da7..8c4d7fd 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/scoping5.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/scoping5.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // Bug: g++ thinks that A defines operator delete, and tries to call it. -// Build don't link: struct A { ~A () { ::operator delete (0); } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/scoping6.C b/gcc/testsuite/g++.old-deja/g++.jason/scoping6.C index 161cc47..2f33010 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/scoping6.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/scoping6.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // Testcase for all uses of explicit global scope. -// Build don't link: int a, B; @@ -9,19 +9,19 @@ int operator+(A&, int); struct B { struct C { static int a; - static int f () { A a; return ::operator+ (a, ::a); } // gets bogus error + static int f () { A a; return ::operator+ (a, ::a); } // { dg-bogus "" } }; }; int B::C::a = 0; -struct D : public ::B::C { }; // gets bogus error +struct D : public ::B::C { }; // { dg-bogus "" } void f () { int B; ::B::C b; - B = ::B::C::a; // gets bogus error - B = ::B::C::f(); // gets bogus error + B = ::B::C::a; // { dg-bogus "" } + B = ::B::C::f(); // { dg-bogus "" } } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/scoping7.C b/gcc/testsuite/g++.old-deja/g++.jason/scoping7.C index 6ffa907..41859aa 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/scoping7.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/scoping7.C @@ -1,6 +1,6 @@ +// { dg-do assemble } // Bug: g++ doesn't flag name collisions between types and non-types as // errors. It shouldn't for class names, but it should for typedefs. -// Build don't link: -int bar; // ERROR - -typedef int bar; // ERROR - +int bar; // { dg-error "" } +typedef int bar; // { dg-error "" } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/scoping8.C b/gcc/testsuite/g++.old-deja/g++.jason/scoping8.C index de023d1c..bb31735 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/scoping8.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/scoping8.C @@ -1,7 +1,8 @@ +// { dg-do assemble } // Bug: g++ allows two different meanings of a name in the same scope. -typedef int foo; // ERROR - +typedef int foo; // { dg-error "" } struct A { A (foo); - int foo (); // ERROR - foo already used in scope + int foo (); // { dg-error "" } foo already used in scope }; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/scoping9.C b/gcc/testsuite/g++.old-deja/g++.jason/scoping9.C index 3d8a155..be99118 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/scoping9.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/scoping9.C @@ -1,6 +1,6 @@ +// { dg-do assemble } // Bug: g++ silently mangles the second 'B' to 'A::B', so the definition is // lost. -// Build don't link: struct A { enum B { }; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/shadow1.C b/gcc/testsuite/g++.old-deja/g++.jason/shadow1.C index f3f4d17..941f80c 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/shadow1.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/shadow1.C @@ -1,5 +1,5 @@ -// Special g++ Options: -Wshadow -// Build don't link: +// { dg-do assemble } +// { dg-options "-Wshadow" } class x { public: diff --git a/gcc/testsuite/g++.old-deja/g++.jason/soverload.C b/gcc/testsuite/g++.old-deja/g++.jason/soverload.C index 793e37f..b29e649 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/soverload.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/soverload.C @@ -1,10 +1,10 @@ +// { dg-do assemble } // Bug: dfs_pushdecls doesn't create an overload list for member functions, // like it claims to. -// Build don't link: struct A { static int foo (int); static int foo (int, int); - void bar () { foo (1, 2); } // gets bogus error - broken overloading + void bar () { foo (1, 2); } // { dg-bogus "" } broken overloading }; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/special.C b/gcc/testsuite/g++.old-deja/g++.jason/special.C index 41fae60..29565d5 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/special.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/special.C @@ -1,6 +1,7 @@ +// { dg-do assemble } // Make sure that forward declarations of specializations work... template <class T> class A { }; template <> class A<int>; -A<int> a; // ERROR - incomplete type +A<int> a; // { dg-error "" } incomplete type template <> class A<int> { }; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/static1.C b/gcc/testsuite/g++.old-deja/g++.jason/static1.C index 8c5bdff..2c6f6bd 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/static1.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/static1.C @@ -1,3 +1,4 @@ +// { dg-do run } // PRMS id: 6863 extern "C" int printf(const char *, ...); diff --git a/gcc/testsuite/g++.old-deja/g++.jason/synth.C b/gcc/testsuite/g++.old-deja/g++.jason/synth.C index 733243c..a57f23c 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/synth.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/synth.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // Bug: the synthesized copy constructor for A is not found. -// Build don't link: struct A { // A (const A& a): i(a.i) {} @@ -8,6 +8,6 @@ struct A { struct B { A a; - B (const B& b): a(b.a), j(b.j) { } // gets bogus error - + B (const B& b): a(b.a), j(b.j) { } // { dg-bogus "" } int j; }; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/synth10.C b/gcc/testsuite/g++.old-deja/g++.jason/synth10.C index 07a3725..f6181dc 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/synth10.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/synth10.C @@ -1,5 +1,5 @@ -// Special g++ Options: -O -// Build don't link: +// { dg-do assemble } +// { dg-options "-O" } // Bug: Synthesizing methods for the nested class screwed up current_class_decl // for the outer class. diff --git a/gcc/testsuite/g++.old-deja/g++.jason/synth2.C b/gcc/testsuite/g++.old-deja/g++.jason/synth2.C index 3094b8e..5e42091 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/synth2.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/synth2.C @@ -1,8 +1,8 @@ +// { dg-do assemble } // PRMS Id: 4623 // Bug: g++ tries and fails to synthesize a copy constructor for D. -// Build don't link: class A { }; class B: public virtual A { }; class C: public A { }; -class D: public B, public C { }; // gets bogus error - bad synthesis +class D: public B, public C { }; // { dg-bogus "" } bad synthesis diff --git a/gcc/testsuite/g++.old-deja/g++.jason/synth3.C b/gcc/testsuite/g++.old-deja/g++.jason/synth3.C index 26af8ae..ff304f9 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/synth3.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/synth3.C @@ -1,6 +1,6 @@ +// { dg-do assemble } // Testcase for wrongful generation of copy constructor. -// Build don't link: class A { }; class B: virtual private A { }; -class D: public B { }; // gets bogus error +class D: public B { }; // { dg-bogus "" } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/synth4.C b/gcc/testsuite/g++.old-deja/g++.jason/synth4.C index 89ecf2d..c35780c 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/synth4.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/synth4.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } struct X { X(); @@ -11,5 +11,5 @@ struct Y { void f() { Y *y1, *y2 ; - *y1 = *y2; // gets bogus error - failed to synthesize op= + *y1 = *y2; // { dg-bogus "" } failed to synthesize op= } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/synth5.C b/gcc/testsuite/g++.old-deja/g++.jason/synth5.C index 2905da7..f5e7380 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/synth5.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/synth5.C @@ -1,3 +1,4 @@ +// { dg-do run } // Bug: generated B::operator= tries to call A::operator= #pragma implementation diff --git a/gcc/testsuite/g++.old-deja/g++.jason/synth6.C b/gcc/testsuite/g++.old-deja/g++.jason/synth6.C index f3a95db..e25fbce 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/synth6.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/synth6.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // Bug: g++ tries to generate an op= for DbmItem and fails. -// Build don't link: class RefCount{ public: diff --git a/gcc/testsuite/g++.old-deja/g++.jason/synth7.C b/gcc/testsuite/g++.old-deja/g++.jason/synth7.C index 0595377..33beb91 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/synth7.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/synth7.C @@ -1,3 +1,4 @@ +// { dg-do run } // Testcase to make sure that synthesized methods are found when needed. struct B { ~B() { } }; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/synth8.C b/gcc/testsuite/g++.old-deja/g++.jason/synth8.C index f7e82a9..29abc2a 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/synth8.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/synth8.C @@ -1,6 +1,6 @@ +// { dg-do assemble } // Bug: the synthesized constructor for A tries to use the mem-initializer // list for the B constructor. -// Build don't link: struct A { diff --git a/gcc/testsuite/g++.old-deja/g++.jason/synth9.C b/gcc/testsuite/g++.old-deja/g++.jason/synth9.C index 6886feb..86b8ddf 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/synth9.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/synth9.C @@ -1,6 +1,6 @@ +// { dg-do assemble } // PRMS Id: 6837 // Bug: anonymous union confuses g++. -// Build don't link: struct my_key { my_key(const my_key&); diff --git a/gcc/testsuite/g++.old-deja/g++.jason/tempargs.C b/gcc/testsuite/g++.old-deja/g++.jason/tempargs.C index 749e02c..5ca92350 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/tempargs.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/tempargs.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed templates overloading template<class T> class Vector { }; template<class T> struct Sort { static void sort (Vector<typename T::foo> &); }; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/tempcons.C b/gcc/testsuite/g++.old-deja/g++.jason/tempcons.C index 77cc732..a9974db 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/tempcons.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/tempcons.C @@ -1,8 +1,8 @@ +// { dg-do assemble } // Bug: member initializers are allowed where they shouldn't be. -// Build don't link: template <class T> struct A { int i; - Blarg () : i(0) { } // ERROR - + Blarg () : i(0) { } // { dg-error "" } }; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/tempdest.C b/gcc/testsuite/g++.old-deja/g++.jason/tempdest.C index 04fae56..f1940a4 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/tempdest.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/tempdest.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed templates destructors // Example of PR 3308 workaround diff --git a/gcc/testsuite/g++.old-deja/g++.jason/tempinst1.C b/gcc/testsuite/g++.old-deja/g++.jason/tempinst1.C index b66c43c..966256f 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/tempinst1.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/tempinst1.C @@ -1,6 +1,6 @@ +// { dg-do link } +// { dg-options "-g" } // Bug: g++ fails to instantiate operator<<. -// Build don't run: -// Special g++ Options: -g struct ostream { ostream& operator<< (const char *) { return *this; }; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/template1.C b/gcc/testsuite/g++.old-deja/g++.jason/template1.C index f3aa571..359c8f1 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/template1.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/template1.C @@ -1,6 +1,6 @@ +// { dg-do assemble } // PRMS Id: 4688 // Bug: g++ can't deal with templates instantiated within extern "C". -// Build don't link: class Gnaf { public: diff --git a/gcc/testsuite/g++.old-deja/g++.jason/template10.C b/gcc/testsuite/g++.old-deja/g++.jason/template10.C index c63e1d0..196ea34 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/template10.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/template10.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // Bug: member operator shadows global template in tsubst. -// Build don't link: class ostream; @@ -27,5 +27,5 @@ public: void X::print(ostream& os) { smanip<double> smd; - os << smd; // gets bogus error + os << smd; // { dg-bogus "" } } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/template11.C b/gcc/testsuite/g++.old-deja/g++.jason/template11.C index fed322e..004361d 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/template11.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/template11.C @@ -1,3 +1,4 @@ +// { dg-do run } // Bug: initializers for static data members of templates don't get run. template <class T> struct A { diff --git a/gcc/testsuite/g++.old-deja/g++.jason/template12.C b/gcc/testsuite/g++.old-deja/g++.jason/template12.C index 93c19b6..d26dfbd 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/template12.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/template12.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // Testcase for 'this is a type' syntax. -// Build don't link: struct B { typedef int A; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/template14.C b/gcc/testsuite/g++.old-deja/g++.jason/template14.C index ecd99bc..4576ec3 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/template14.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/template14.C @@ -1,3 +1,4 @@ +// { dg-do run } // PRMS Id: 4745 // Bug: g++ gets the constructor and destructor confused because the default // parm prevents the two constructor types from satisfying ==. diff --git a/gcc/testsuite/g++.old-deja/g++.jason/template15.C b/gcc/testsuite/g++.old-deja/g++.jason/template15.C index 9779ca0..b153020 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/template15.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/template15.C @@ -1,3 +1,4 @@ +// { dg-do run } // PRMS Id: 2139 // Bug: g++ tries to instantiate the template with types on the function // obstack and fails. diff --git a/gcc/testsuite/g++.old-deja/g++.jason/template16.C b/gcc/testsuite/g++.old-deja/g++.jason/template16.C index 3241f98..09877a5 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/template16.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/template16.C @@ -1,3 +1,4 @@ +// { dg-do run } // PRMS Id: 1502 // Bug: g++ fails to resolve 'gnc' in the call to 'grid'. diff --git a/gcc/testsuite/g++.old-deja/g++.jason/template17.C b/gcc/testsuite/g++.old-deja/g++.jason/template17.C index 27e4d047..2bb36aa 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/template17.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/template17.C @@ -1,6 +1,6 @@ +// { dg-do assemble } // Caught by Booch Components. // Bug: g++ tries to instantiate nested enums. -// Build don't link: template <class T> struct A { diff --git a/gcc/testsuite/g++.old-deja/g++.jason/template18.C b/gcc/testsuite/g++.old-deja/g++.jason/template18.C index e57739b..bf293ed 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/template18.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/template18.C @@ -1,14 +1,10 @@ +// { dg-do link } +// { dg-options "-g -fno-inline -Wno-deprecated -fexternal-templates" } // GROUPS passed templates // Bug: g++ emits template instances when it shouldn't. -// Special g++ Options: -g -fno-inline -Wno-deprecated -fexternal-templates - -// We mark this XFAIL because we can't test for expected linker errors. -// If we get an XPASS for this testcase, that's a bug. - // Suppressed-instantiation tests like this are known to break on // Cygwin, because of the MULTIPLE_SYMBOL_SPACES stuff. This is OK. -// (OK) excess errors test - XFAIL *-*-* #pragma implementation "irrelevant_file" #line 1 "template18.h" @@ -18,5 +14,5 @@ template <class T> inline T min (T a, T b) { return a<b?a:b; } main() { - min (1, 1); // should produce an undefined symbol error. + min (1, 1); // { dg-error "" "" { target *-*-* } 0 } should produce an undefined symbol error. } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/template19.C b/gcc/testsuite/g++.old-deja/g++.jason/template19.C index 68ea9a9..0a57742 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/template19.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/template19.C @@ -1,3 +1,4 @@ +// { dg-do run } // Make sure type deduction isn't confused by top-level cv-quals. template <class T> T max (const T a, const T b) { return a>b?a:b; } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/template2.C b/gcc/testsuite/g++.old-deja/g++.jason/template2.C index d3950e9..07c54f8 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/template2.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/template2.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // Bug: instantiation of member templates breaks. -// Build don't link: template <class T> struct A { static void f (); diff --git a/gcc/testsuite/g++.old-deja/g++.jason/template20.C b/gcc/testsuite/g++.old-deja/g++.jason/template20.C index ee4daa0..2cbaffb 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/template20.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/template20.C @@ -1,3 +1,4 @@ +// { dg-do run } // Make sure type deduction works for both types of array parameters. template <class T> void f (T (&a)[2]) { } template <class T> void g (T a[2]) { } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/template21.C b/gcc/testsuite/g++.old-deja/g++.jason/template21.C index 817d1da..86b6131 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/template21.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/template21.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // Gosh, this works! -// Build don't link: template<class T> struct A diff --git a/gcc/testsuite/g++.old-deja/g++.jason/template22.C b/gcc/testsuite/g++.old-deja/g++.jason/template22.C index ce247e8..f6e81aa 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/template22.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/template22.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // Testcase for proper unification of code involving references. -// Build don't link: template<class T> struct A diff --git a/gcc/testsuite/g++.old-deja/g++.jason/template23.C b/gcc/testsuite/g++.old-deja/g++.jason/template23.C index 1d257a2..f2d9973 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/template23.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/template23.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // Testcase for instantiation with cv-qualified type -// Build don't link: template<class T> struct A diff --git a/gcc/testsuite/g++.old-deja/g++.jason/template24.C b/gcc/testsuite/g++.old-deja/g++.jason/template24.C index 3315d18..0efce9f 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/template24.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/template24.C @@ -1,3 +1,4 @@ +// { dg-do run } // Bug: g++ doesn't find the conversion from ostream_withassign to ostream. #include <iostream> diff --git a/gcc/testsuite/g++.old-deja/g++.jason/template25.C b/gcc/testsuite/g++.old-deja/g++.jason/template25.C index 970441226..5e876d9 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/template25.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/template25.C @@ -1,3 +1,4 @@ +// { dg-do run } // PRMS Id: 6393 // Bug: g++ is too lax in considering UPTs to be the same. diff --git a/gcc/testsuite/g++.old-deja/g++.jason/template26.C b/gcc/testsuite/g++.old-deja/g++.jason/template26.C index fcd598d..e7e3762 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/template26.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/template26.C @@ -1,3 +1,4 @@ +// { dg-do run } // PRMS Id: 6275 // Bug: unification fails for call to find_parameter_in_stack. diff --git a/gcc/testsuite/g++.old-deja/g++.jason/template27.C b/gcc/testsuite/g++.old-deja/g++.jason/template27.C index be90aca..e16ef7d 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/template27.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/template27.C @@ -1,3 +1,4 @@ +// { dg-do run } // PRMS Id: 6826 // Check that unnecessary templates are not instantiated. diff --git a/gcc/testsuite/g++.old-deja/g++.jason/template28.C b/gcc/testsuite/g++.old-deja/g++.jason/template28.C index c5501d9..7359fa1 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/template28.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/template28.C @@ -1,3 +1,4 @@ +// { dg-do run } // PRMS Id: 7179 template <class T> diff --git a/gcc/testsuite/g++.old-deja/g++.jason/template29.C b/gcc/testsuite/g++.old-deja/g++.jason/template29.C index d4212e2..d971ab6 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/template29.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/template29.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // PRMS Id: 9500 -// Build don't link: template <int S> class base diff --git a/gcc/testsuite/g++.old-deja/g++.jason/template3.C b/gcc/testsuite/g++.old-deja/g++.jason/template3.C index 1cd6553..c26d585 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/template3.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/template3.C @@ -1,3 +1,4 @@ +// { dg-do run } // PRMS Id: 4679 // Bug: g++ doesn't re-instantiate templates after definition is seen. @@ -10,5 +11,5 @@ template <class T> struct A { T t; }; int main() { if (a) - a->t = 1; // gets bogus error + a->t = 1; // { dg-bogus "" } } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/template30.C b/gcc/testsuite/g++.old-deja/g++.jason/template30.C index 98bad49..4eca03d 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/template30.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/template30.C @@ -1,13 +1,14 @@ +// { dg-do assemble } template <class T, class U> -int func(U, T); // ERROR - ref below +int func(U, T); // { dg-error "" } ref below template <class T, class U> int func(T, U) -{ // ERROR - ref below +{ // { dg-error "" } ref below return 2; } int main () { - func (0, 1); // ERROR - ambiguous + func (0, 1); // { dg-error "" } ambiguous } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/template31.C b/gcc/testsuite/g++.old-deja/g++.jason/template31.C index 6aa2936..2cab859 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/template31.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/template31.C @@ -1,3 +1,4 @@ +// { dg-do run } // PRMS Id: 8569 #include <iostream> diff --git a/gcc/testsuite/g++.old-deja/g++.jason/template32.C b/gcc/testsuite/g++.old-deja/g++.jason/template32.C index d510e93..3bbb6e8 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/template32.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/template32.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // Bug: Instantiating A<int> screws with class bindings for B -// Build don't link: template <class T> struct A { }; struct B { diff --git a/gcc/testsuite/g++.old-deja/g++.jason/template33.C b/gcc/testsuite/g++.old-deja/g++.jason/template33.C index 1ceb56b..846c63a 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/template33.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/template33.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // Test nested enums in templates. -// Build don't link: template <class T> class A diff --git a/gcc/testsuite/g++.old-deja/g++.jason/template34.C b/gcc/testsuite/g++.old-deja/g++.jason/template34.C index e601b1e..eaeb464 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/template34.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/template34.C @@ -1,3 +1,4 @@ +// { dg-do run } template<class T> class Set { public: diff --git a/gcc/testsuite/g++.old-deja/g++.jason/template35.C b/gcc/testsuite/g++.old-deja/g++.jason/template35.C index be3f808..d2c1a3c 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/template35.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/template35.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // Bug: instantiation of D() corrupts declaration of basis[]. -// Build don't link: struct B { }; template <int t> diff --git a/gcc/testsuite/g++.old-deja/g++.jason/template36.C b/gcc/testsuite/g++.old-deja/g++.jason/template36.C index 04d3160..a8a9d16 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/template36.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/template36.C @@ -1,3 +1,4 @@ +// { dg-do run } // Testcase for implicit 'typename' and resolution of 'typename's in the // current scope. diff --git a/gcc/testsuite/g++.old-deja/g++.jason/template37.C b/gcc/testsuite/g++.old-deja/g++.jason/template37.C index dd3ec29..23309a4 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/template37.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/template37.C @@ -1,6 +1,9 @@ +// { dg-do run } +// { dg-options "-Wno-deprecated -fexternal-templates" } +// { dg-warning "switch.*deprecated" "" { target *-*-* } 0 } + // PRMS Id: 9930 // Test of -fexternal-templates hackery in new template code -// Special g++ options: -Wno-deprecated -fexternal-templates #pragma implementation "foo.hh" #pragma interface "foo.hh" diff --git a/gcc/testsuite/g++.old-deja/g++.jason/template39.C b/gcc/testsuite/g++.old-deja/g++.jason/template39.C index dc76889..51eace3 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/template39.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/template39.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // PRMS Id: 10283 -// Build don't link: template <class T> struct B { static void (*p)(); diff --git a/gcc/testsuite/g++.old-deja/g++.jason/template4.C b/gcc/testsuite/g++.old-deja/g++.jason/template4.C index 7fcb45c..de7d331 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/template4.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/template4.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // Bug: g++ tries to instantiate ccList twice, and fails. -// Build don't link: template<class T> class ccHandle{ }; template <class T> class ccList; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/template40.C b/gcc/testsuite/g++.old-deja/g++.jason/template40.C index a880392..e56833c 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/template40.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/template40.C @@ -1,3 +1,4 @@ +// { dg-do run } // PRMS id: 11315 // Bug: g++ doesn't recognize the copy ctor for Array<long>. diff --git a/gcc/testsuite/g++.old-deja/g++.jason/template41.C b/gcc/testsuite/g++.old-deja/g++.jason/template41.C index 62d03b6..a2f667f 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/template41.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/template41.C @@ -1,3 +1,4 @@ +// { dg-do run } // PRMS Id: 11420 // Bug: Can't handle indirect virtual template base init. diff --git a/gcc/testsuite/g++.old-deja/g++.jason/template42.C b/gcc/testsuite/g++.old-deja/g++.jason/template42.C index 2bd6267..63122ce 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/template42.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/template42.C @@ -1,3 +1,4 @@ +// { dg-do run } // Testcase for not evaluating template default args if they are // never used. diff --git a/gcc/testsuite/g++.old-deja/g++.jason/template43.C b/gcc/testsuite/g++.old-deja/g++.jason/template43.C index d9b3f85..59641de 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/template43.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/template43.C @@ -1,3 +1,4 @@ +// { dg-do run } // Test matching of partial specializations. template <int* x, int* y> diff --git a/gcc/testsuite/g++.old-deja/g++.jason/template44.C b/gcc/testsuite/g++.old-deja/g++.jason/template44.C index 93b47bd..2aea33a 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/template44.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/template44.C @@ -1,3 +1,4 @@ +// { dg-do run } #include <stdlib.h> #include <string.h> diff --git a/gcc/testsuite/g++.old-deja/g++.jason/template5.C b/gcc/testsuite/g++.old-deja/g++.jason/template5.C index 3c1e4cd..8401eaf 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/template5.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/template5.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // Bug: g++ fails to compare integer constants properly. -// Build don't link: template <int X, int Y> struct Matrix { diff --git a/gcc/testsuite/g++.old-deja/g++.jason/template6.C b/gcc/testsuite/g++.old-deja/g++.jason/template6.C index c42426a..2aec05c 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/template6.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/template6.C @@ -1,3 +1,4 @@ +// { dg-do run } // PRMS Id: 4656 // Testcase for use of member pointers in template resolution @@ -14,7 +15,7 @@ int foo (T A<int>::*p) } int main() { - int A<int>::*pm = &A<int>::a; // gets bogus error - failed temp resolution + int A<int>::*pm = &A<int>::a; // { dg-bogus "" } failed temp resolution foo (pm); return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/template7.C b/gcc/testsuite/g++.old-deja/g++.jason/template7.C index 87d79a8..1b563e6 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/template7.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/template7.C @@ -1,9 +1,9 @@ +// { dg-do assemble } // PRMS Id: 4826 -// Build don't link: class A; template <class T> void f(const T&, const T&); void g (const A& a, A& b) { - f (a, b); // gets bogus error - failed unification + f (a, b); // { dg-bogus "" } failed unification } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/template8.C b/gcc/testsuite/g++.old-deja/g++.jason/template8.C index 586fb61..07c46ed 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/template8.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/template8.C @@ -1,10 +1,10 @@ +// { dg-do assemble } // PRMS Id: 4827 -// Build don't link: class A; template <class T> int f (const T&, const A *); int g (const int& a) { - return f (a, (A *)0); // gets bogus error - failed unification + return f (a, (A *)0); // { dg-bogus "" } failed unification } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/template9.C b/gcc/testsuite/g++.old-deja/g++.jason/template9.C index 80fd8c9..7a12ebf 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/template9.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/template9.C @@ -1,12 +1,12 @@ +// { dg-do assemble } // PRMS Id: 4864 // Bug: g++ can't deal with a guiding declaration which comes before the // template. -// Build don't link: void f (const int&, const int&); template <class T> void f (const T&, const T&) { } void g (int a) { - f (a,a); // gets bogus error - two identical candidates + f (a,a); // { dg-bogus "" } two identical candidates } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/temporary.C b/gcc/testsuite/g++.old-deja/g++.jason/temporary.C index 168bfe9..0975073 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/temporary.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/temporary.C @@ -1,3 +1,4 @@ +// { dg-do run } // From: bruno@isoft.com.ar (Bruno R. Depascale) // Subject: No destructor bug // Date: Mon, 14 Feb 1994 12:49:45 -0300 (Arg) diff --git a/gcc/testsuite/g++.old-deja/g++.jason/temporary2.C b/gcc/testsuite/g++.old-deja/g++.jason/temporary2.C index 36c8e8e..97185d4 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/temporary2.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/temporary2.C @@ -1,9 +1,10 @@ +// { dg-do assemble } class X // Indentation has been done so to see the similarities. { public: - X() {} // ERROR - referenced below - X(X& x) {x.i=7;} // ERROR - Both functions modify the - void bar(X& x) {x.i=7;} // ERROR - reference parameter x. + 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. int i; }; @@ -11,6 +12,6 @@ X foo() { X x; return x; } int main() { - X x(foo()); // ERROR - Compiler doesn't warn about temporary reference. - x.bar(foo()); // ERROR - The same mistake is warned about in this case. + 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. } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/temporary3.C b/gcc/testsuite/g++.old-deja/g++.jason/temporary3.C index 3ffeec7..7d96386 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/temporary3.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/temporary3.C @@ -1,3 +1,4 @@ +// { dg-do run } // Bug: the temporary returned from f is elided, causing a to be constructed // twice but only destroyed once. diff --git a/gcc/testsuite/g++.old-deja/g++.jason/temporary4.C b/gcc/testsuite/g++.old-deja/g++.jason/temporary4.C index bb7e56f..2c84612 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/temporary4.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/temporary4.C @@ -1,3 +1,4 @@ +// { dg-do run } // Bug: g++ initializes both B::i and B::j before destroying any temps. extern "C" int printf (const char *, ...); diff --git a/gcc/testsuite/g++.old-deja/g++.jason/temporary5.C b/gcc/testsuite/g++.old-deja/g++.jason/temporary5.C index 6a2469e..d233fa9 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/temporary5.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/temporary5.C @@ -1,3 +1,4 @@ +// { dg-do run } // PRMS Id: 6604 // Bug: Scoped constructor call is not properly recognized as a functional cast diff --git a/gcc/testsuite/g++.old-deja/g++.jason/temporary6.C b/gcc/testsuite/g++.old-deja/g++.jason/temporary6.C index ce6a92e..dc660e8 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/temporary6.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/temporary6.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // Bug: the temporary from the default parameter to f2 is reused. -// Build don't link: struct A {}; int f2 (int i, const A& ar = A()); diff --git a/gcc/testsuite/g++.old-deja/g++.jason/temporary7.C b/gcc/testsuite/g++.old-deja/g++.jason/temporary7.C index 8b91fe1..9a1b789 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/temporary7.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/temporary7.C @@ -1,3 +1,4 @@ +// { dg-do run } // PRMS ID: 7304 struct V { diff --git a/gcc/testsuite/g++.old-deja/g++.jason/temporary8.C b/gcc/testsuite/g++.old-deja/g++.jason/temporary8.C index bb0698e..c24256e 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/temporary8.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/temporary8.C @@ -1,3 +1,4 @@ +// { dg-do run } // Test for proper handling of temporaries in ?: exprs. extern "C" int printf (const char *, ...); diff --git a/gcc/testsuite/g++.old-deja/g++.jason/tempover.C b/gcc/testsuite/g++.old-deja/g++.jason/tempover.C index 0998f69..5f56e4e 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/tempover.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/tempover.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed templates overloading #define TEMPL template <class T> diff --git a/gcc/testsuite/g++.old-deja/g++.jason/tempparse.C b/gcc/testsuite/g++.old-deja/g++.jason/tempparse.C index 68f67ad..1756a0c 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/tempparse.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/tempparse.C @@ -1,9 +1,9 @@ +// { dg-do assemble } /* PRMS Id: 3631 Bug is: g++ mangles template class names in a way that it won't accept, and then tries to feed them to itself. */ -// Build don't link: template<class T> struct A { @@ -13,7 +13,7 @@ struct A { template<class T> struct B : A<T> { B(); -}; // gets bogus error - B<C<char>> +}; // { dg-bogus "" } B<C<char>> template<class T> struct C { diff --git a/gcc/testsuite/g++.old-deja/g++.jason/tempsub.C b/gcc/testsuite/g++.old-deja/g++.jason/tempsub.C index 4b69d88..2a68add 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/tempsub.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/tempsub.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // Distillation of crash1.C problem (PR 3633) -// Build don't link: template<class P> class A diff --git a/gcc/testsuite/g++.old-deja/g++.jason/this.C b/gcc/testsuite/g++.old-deja/g++.jason/this.C index 544db6c..17e8978 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/this.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/this.C @@ -1,6 +1,6 @@ +// { dg-do assemble } // PRMS Id: 5190 // Bug: g++ fails to build up a const reference to `this'. -// Build don't link: class X { diff --git a/gcc/testsuite/g++.old-deja/g++.jason/thunk1.C b/gcc/testsuite/g++.old-deja/g++.jason/thunk1.C index f2d073e..7de3c93 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/thunk1.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/thunk1.C @@ -1,3 +1,4 @@ +// { dg-do run } // Test that non-variadic function calls using thunks work right. struct A { diff --git a/gcc/testsuite/g++.old-deja/g++.jason/thunk2.C b/gcc/testsuite/g++.old-deja/g++.jason/thunk2.C index 5a3a232..a52ec2e 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/thunk2.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/thunk2.C @@ -1,7 +1,6 @@ +// { dg-do run { xfail m68k-motorola-sysv m88k-motorola-sysv3 } } +// { dg-options "-fPIC" } // Test that non-variadic function calls using thunks and PIC work right. -// Skip if not native -// Special g++ Options: -fPIC -// excess errors test - XFAIL m68k-motorola-sysv m88k-motorola-sysv3 struct A { void* p; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/thunk3.C b/gcc/testsuite/g++.old-deja/g++.jason/thunk3.C index 97776c4..9a4cffc 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/thunk3.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/thunk3.C @@ -1,8 +1,8 @@ +// { dg-do run { xfail mips*-*-* rs6000-*-* powerpc-*-eabi m68k-*-coff m68k-motorola-sysv m88k-motorola-sysv3 mn10300-*-* mn10200-*-* v850-*-* sh-*-* sh64-*-* h8*-*-* xtensa-*-* } } // Test that variadic function calls using thunks work right. // Note that this will break on any target that uses the generic thunk // support, because it doesn't support variadic functions. -// excess errors test - XFAIL mips*-*-* rs6000-*-* powerpc-*-eabi m68k-*-coff m68k-motorola-sysv m88k-motorola-sysv3 mn10300-*-* mn10200-*-* v850-*-* sh-*-* sh64-*-* h8*-*-* xtensa-*-* #include <stdarg.h> diff --git a/gcc/testsuite/g++.old-deja/g++.jason/tredecl.C b/gcc/testsuite/g++.old-deja/g++.jason/tredecl.C index 72cbae7..df80060 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/tredecl.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/tredecl.C @@ -1,10 +1,10 @@ +// { dg-do assemble } // Bug: Foo<Bar> *p semi-instantiates Foo<Bar> in local scope, so // when Foo<Bar> f tries to instantiate it later, it only finds the partial // instantiation from before. // // No PR; distilled from James Clark's SGML project. // -// Build don't link: class Bar { }; @@ -14,4 +14,4 @@ Foo<Bar> *p; template<class T> class Foo { }; -Foo<Bar> f; // gets bogus error - hosed binding levels +Foo<Bar> f; // { dg-bogus "" } hosed binding levels diff --git a/gcc/testsuite/g++.old-deja/g++.jason/tredecl2.C b/gcc/testsuite/g++.old-deja/g++.jason/tredecl2.C index faaf862..6d35478 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/tredecl2.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/tredecl2.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // No bug; making sure my fix for tredecl.C doesn't break other cases -// Build don't link: template<class T> struct Foo { Foo<T> * me() { return this; } }; Foo<int> i; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/tredecl3.C b/gcc/testsuite/g++.old-deja/g++.jason/tredecl3.C index bcc25ba..35c34d7 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/tredecl3.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/tredecl3.C @@ -1,6 +1,6 @@ +// { dg-do assemble } // PRMS Id: 4679 // Bug: redeclaration of templates erases the definition. -// Build don't link: template <class T> class Foo { public: void h(); }; template <class T> class Foo; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/tredecl4.C b/gcc/testsuite/g++.old-deja/g++.jason/tredecl4.C index 64ba4b8..c5bb92e 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/tredecl4.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/tredecl4.C @@ -1,5 +1,6 @@ +// { dg-do assemble } // It is illegal to use the name of a class template for anything else, // including another class template. -template <class T> class A { }; // ERROR - -template <class U, class V> class A { }; // ERROR - +template <class T> class A { }; // { dg-error "" } +template <class U, class V> class A { }; // { dg-error "" } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/trivial.C b/gcc/testsuite/g++.old-deja/g++.jason/trivial.C index f5a5355..13ef9dc 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/trivial.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/trivial.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // PRMS Id: 3665 -// Build don't link: //------------------------------------------------------------- // Referential declaration within class diff --git a/gcc/testsuite/g++.old-deja/g++.jason/typeck.C b/gcc/testsuite/g++.old-deja/g++.jason/typeck.C index cffbc87..fc5134c 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/typeck.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/typeck.C @@ -1,6 +1,6 @@ +// { dg-do assemble } // Bug: g++ fails to catch incompatibilities in the parameter lists when // assigning. -// Build don't link: typedef struct S *type_p; typedef struct S const *ctype_p; @@ -11,9 +11,9 @@ type_p callee (type_p arg) { return 0; } void foobar () { - static PF p = callee; // ERROR - + static PF p = callee; // { dg-error "" } - p = callee; // ERROR - + p = callee; // { dg-error "" } } -PF pp = callee; // ERROR - +PF pp = callee; // { dg-error "" } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/typedef.C b/gcc/testsuite/g++.old-deja/g++.jason/typedef.C index c681c82d..9cbba5b 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/typedef.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/typedef.C @@ -1,10 +1,10 @@ +// { dg-do assemble } // PRMS Id: 4687 // Bug: g++ misinterprets typedefs of function type in class scope. -// Build don't link: typedef int (*F1) (); struct A { typedef int F(); F *fp; - F1 g() { return fp; } // gets bogus error - typing + F1 g() { return fp; } // { dg-bogus "" } typing }; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/typedef2.C b/gcc/testsuite/g++.old-deja/g++.jason/typedef2.C index 44a32de..63c19bd 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/typedef2.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/typedef2.C @@ -1,3 +1,4 @@ +// { dg-do run } // PRMS Id: 5367 // Bug: the nested name of C::func gets hosed. diff --git a/gcc/testsuite/g++.old-deja/g++.jason/typedef3.C b/gcc/testsuite/g++.old-deja/g++.jason/typedef3.C index 5b96451..e918610 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/typedef3.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/typedef3.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // Test that inheriting from a type typedefed to itself works. -// Build don't link: typedef struct class1 { class1& operator=(const class1&); diff --git a/gcc/testsuite/g++.old-deja/g++.jason/typeid1.C b/gcc/testsuite/g++.old-deja/g++.jason/typeid1.C index 0f44cb7..83a0b09 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/typeid1.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/typeid1.C @@ -1,3 +1,4 @@ +// { dg-do run } #include <typeinfo> #include <iostream> diff --git a/gcc/testsuite/g++.old-deja/g++.jason/typeid2.C b/gcc/testsuite/g++.old-deja/g++.jason/typeid2.C index 64ecc5a..7914b67 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/typeid2.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/typeid2.C @@ -1,3 +1,4 @@ +// { dg-do run } // PRMS Id: 11596 #include <typeinfo> diff --git a/gcc/testsuite/g++.old-deja/g++.jason/union.C b/gcc/testsuite/g++.old-deja/g++.jason/union.C index b145390..21a0b6f 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/union.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/union.C @@ -1,11 +1,11 @@ +// { dg-do assemble } // Bug: g++ doesn't insert anon union members into class scope. // Breaks groff. -// Build don't link: struct A { union { int i; }; - void foo () { i = 1; } // gets bogus error - + void foo () { i = 1; } // { dg-bogus "" } }; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/vecdel.C b/gcc/testsuite/g++.old-deja/g++.jason/vecdel.C index 717e967..6c69909 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/vecdel.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/vecdel.C @@ -1,3 +1,4 @@ +// { dg-do run } __SIZE_TYPE__ newsize = 0; __SIZE_TYPE__ delsize = 0; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/virtual.C b/gcc/testsuite/g++.old-deja/g++.jason/virtual.C index 3fa952b..befa98a 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/virtual.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/virtual.C @@ -1,10 +1,10 @@ +// { dg-do assemble } // From: chw@bellcore.com (Charlie Woloszynski,MRE 2J-278,8295228,,27143) // Newsgroups: gnu.g++.bug // Subject: gcc-2.5.5 bug in multiple inheritance and pure virtual functions // Date: 25 Jan 1994 23:41:36 -0500 // Bug: g++ fails to notice definitions of abstract virtuals. -// Build don't link: class A { @@ -37,5 +37,5 @@ public: int main() { - D d; // gets bogus error + D d; // { dg-bogus "" } } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/virtual2.C b/gcc/testsuite/g++.old-deja/g++.jason/virtual2.C index ef42f8b..ffdd71c 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/virtual2.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/virtual2.C @@ -1,3 +1,4 @@ +// { dg-do run } struct A { virtual A* f () { return this; } }; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/warning1.C b/gcc/testsuite/g++.old-deja/g++.jason/warning1.C index 86a2160..6fa07ef 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/warning1.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/warning1.C @@ -1,7 +1,7 @@ +// { dg-do assemble } // Bug: g++ protests that foo was never defined. -// Build don't link: static void foo (); static void foo (); static void foo () { } -void bar () { foo(); } // gets bogus error - +void bar () { foo(); } // { dg-bogus "" } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/warning10.C b/gcc/testsuite/g++.old-deja/g++.jason/warning10.C index 04b923b..d9b8cb9 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/warning10.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/warning10.C @@ -1,6 +1,6 @@ +// { dg-do assemble } +// { dg-options "-W -Wall" } // Don't warn about these comparisons. -// Build don't link: -// Special g++ Options: -W -Wall struct A { unsigned int b : 14; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/warning2.C b/gcc/testsuite/g++.old-deja/g++.jason/warning2.C index b0d2d9e..6298587 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/warning2.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/warning2.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // g++ ought to warn about casting a base pointer to a derived reference. -// Build don't link: struct A { virtual void f () = 0; @@ -10,5 +10,5 @@ struct B: public A { void f () { } }; int main() { B* bp; - A& ar = (A&)bp; // WARNING - + A& ar = (A&)bp; // { dg-warning "" } } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/warning3.C b/gcc/testsuite/g++.old-deja/g++.jason/warning3.C index b63b9ca..ef4a6ee 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/warning3.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/warning3.C @@ -1,6 +1,6 @@ +// { dg-do assemble } +// { dg-options "-Wshadow" } // Bug: overloading of 'A' for template causes bogus shadowing warnings. -// Special g++ Options: -Wshadow -// Build don't link: template<class T> class A diff --git a/gcc/testsuite/g++.old-deja/g++.jason/warning4.C b/gcc/testsuite/g++.old-deja/g++.jason/warning4.C index a4eb4ac..9f50ff2 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/warning4.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/warning4.C @@ -1,7 +1,7 @@ +// { dg-do assemble } +// { dg-options "-Woverloaded-virtual" } // Bug: a virtual function with the same name in an unrelated class will // cause a bogus overloading warning. -// Special g++ Options: -Woverloaded-virtual -// Build don't link: struct A { virtual void foo (); diff --git a/gcc/testsuite/g++.old-deja/g++.jason/warning5.C b/gcc/testsuite/g++.old-deja/g++.jason/warning5.C index 239d867..006713c 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/warning5.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/warning5.C @@ -1,6 +1,7 @@ +// { dg-do run } +// { dg-options "-Wall" } // PRMS Id: 5135 // Bug: g++ complains that the result of the new expression is not used. -// Special g++ Options: -Wall extern "C" int printf (const char *, ...); inline void * operator new (__SIZE_TYPE__, void *p) { return p; } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/warning6.C b/gcc/testsuite/g++.old-deja/g++.jason/warning6.C index 920a469..08acb72 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/warning6.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/warning6.C @@ -1,5 +1,5 @@ -// Special g++ Options: -Wunused -// Build don't link: +// { dg-do assemble } +// { dg-options "-Wunused" } struct A { int i:8; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/warning7.C b/gcc/testsuite/g++.old-deja/g++.jason/warning7.C index 1fe03f8..06eec9b 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/warning7.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/warning7.C @@ -1,6 +1,6 @@ +// { dg-do assemble } +// { dg-options "-Wunused" } // PRMS Id: 5481 -// Special g++ Options: -Wunused -// Build don't link: struct A { }; static A a = A(); diff --git a/gcc/testsuite/g++.old-deja/g++.jason/warning8.C b/gcc/testsuite/g++.old-deja/g++.jason/warning8.C index d6ea821..b5ff3f3 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/warning8.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/warning8.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } struct A { A(); @@ -13,5 +13,5 @@ struct B { const B& f () { A a; - return a; // WARNING - returning reference to temporary + return a; // { dg-warning "" } returning reference to temporary } diff --git a/gcc/testsuite/g++.old-deja/g++.jason/warning9.C b/gcc/testsuite/g++.old-deja/g++.jason/warning9.C index d46ba37..9423ac1 100644 --- a/gcc/testsuite/g++.old-deja/g++.jason/warning9.C +++ b/gcc/testsuite/g++.old-deja/g++.jason/warning9.C @@ -1,13 +1,14 @@ -// Special g++ Options: -Wsynth +// { dg-do assemble } +// { dg-options "-Wsynth" } struct A { operator int (); - A& operator= (int); // WARNING - not used below + A& operator= (int); // { dg-warning "" } not used below }; main() { A a, b; - a = b; // WARNING - uses synthesized op= + a = b; // { dg-warning "" } uses synthesized op= } diff --git a/gcc/testsuite/g++.old-deja/g++.law/access1.C b/gcc/testsuite/g++.old-deja/g++.law/access1.C index 75b7ec3..a38793c 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/access1.C +++ b/gcc/testsuite/g++.old-deja/g++.law/access1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed access // access file // Message-Id: <9211281852.AA24557@cove.cis.ufl.edu> diff --git a/gcc/testsuite/g++.old-deja/g++.law/access2.C b/gcc/testsuite/g++.old-deja/g++.law/access2.C index 22f9184..2177748 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/access2.C +++ b/gcc/testsuite/g++.old-deja/g++.law/access2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed access // access file // Message-Id: <9306301534.AA05072@sparc1.cnm.us.es> @@ -10,11 +10,11 @@ template <class T> class Foo { private: friend class Bar; // To avoid warning. - Foo(const T &v) {}; // ERROR - private + Foo(const T &v) {}; // { dg-error "" } private }; int main() { - Foo<int>(1);// ERROR - + Foo<int>(1);// { dg-error "" } } diff --git a/gcc/testsuite/g++.old-deja/g++.law/access3.C b/gcc/testsuite/g++.old-deja/g++.law/access3.C index 7836fe5..3a6acb9 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/access3.C +++ b/gcc/testsuite/g++.old-deja/g++.law/access3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed access // unsorted.2 file // Date: Sat, 6 Jun 1992 18:23:03 -0400 @@ -7,10 +7,10 @@ // Subject: bug with access control to member functions class X { - void g (int); // ERROR - is private + void g (int); // { dg-error "" } is private public: void g (double); }; - class Y : public X { void f() { g (1); } };// ERROR - + class Y : public X { void f() { g (1); } };// { dg-error "" } diff --git a/gcc/testsuite/g++.old-deja/g++.law/access4.C b/gcc/testsuite/g++.old-deja/g++.law/access4.C index 17f0db8..174c441 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/access4.C +++ b/gcc/testsuite/g++.old-deja/g++.law/access4.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed access // (Message bugs/access:3) // From: jamshid@ses.com (Jamshid Afshar) @@ -6,9 +6,9 @@ // Subject: g++ 2.5.5 doesn't warn about inaccessible virtual base ctor // Message-ID: <9403030024.AA04534@ses.com> -class ForceLeafSterile { // ERROR - +class ForceLeafSterile { // { dg-error "" } friend class Sterile; - ForceLeafSterile() {} // ERROR - + ForceLeafSterile() {} // { dg-error "" } }; class Sterile : private virtual ForceLeafSterile { @@ -19,9 +19,9 @@ public: class Illegitimate : public Sterile { public: - Illegitimate() {} // ERROR - can't access virtual base deflt ctor + Illegitimate() {} // { dg-error "" } can't access virtual base deflt ctor Illegitimate(const char* /*blah*/) - : ForceLeafSterile() {} // ERROR - can't access default ctor + : ForceLeafSterile() {} // { dg-error "" } can't access default ctor Illegitimate(const Illegitimate&) - {} // ERROR - can't access default ctor + {} // { dg-error "" } can't access default ctor }; diff --git a/gcc/testsuite/g++.old-deja/g++.law/access5.C b/gcc/testsuite/g++.old-deja/g++.law/access5.C index 4c20da0..80f848c 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/access5.C +++ b/gcc/testsuite/g++.old-deja/g++.law/access5.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed access // access file // From: Jeffrey C. Gealow <jgealow@mtl.mit.edu> @@ -13,12 +13,12 @@ public: protected: class nested_protected { int x; }; private: - class nested_private { int x; }; // ERROR - private + class nested_private { int x; }; // { dg-error "" } private }; class derived : public enclose { nested_public obj1; // ok nested_protected obj2; // ok - nested_private obj3; // error// ERROR - in this context + nested_private obj3; // error// { dg-error "" } in this context }; diff --git a/gcc/testsuite/g++.old-deja/g++.law/arg1.C b/gcc/testsuite/g++.old-deja/g++.law/arg1.C index e017ea0..9da5e6e 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/arg1.C +++ b/gcc/testsuite/g++.old-deja/g++.law/arg1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed arg-matching // arg-matching file // Subject: argument matching depending on the def order @@ -9,14 +9,14 @@ // check the order of declarations class A { public: - void f(double* p) { std::cout << "A(double*)\n"; } // ERROR - candidate - void f(int* p) { std::cout << "A(int*)\n"; } // ERROR - candidate + void f(double* p) { std::cout << "A(double*)\n"; } // { dg-error "" } candidate + void f(int* p) { std::cout << "A(int*)\n"; } // { dg-error "" } candidate }; class B { public: - void f(int* p) { std::cout << "B(int*)\n"; } // ERROR - candidate - void f(double* p) { std::cout << "B(double*)\n"; } // ERROR - candidate + void f(int* p) { std::cout << "B(int*)\n"; } // { dg-error "" } candidate + void f(double* p) { std::cout << "B(double*)\n"; } // { dg-error "" } candidate }; int main() @@ -24,7 +24,7 @@ int main() A a; B b; - a.f(0);// ERROR - .* - b.f(0);// ERROR - .* + a.f(0);// { dg-error "" } .* + b.f(0);// { dg-error "" } .* } diff --git a/gcc/testsuite/g++.old-deja/g++.law/arg10.C b/gcc/testsuite/g++.old-deja/g++.law/arg10.C index 2c21ced..f8360be 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/arg10.C +++ b/gcc/testsuite/g++.old-deja/g++.law/arg10.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed arg-matching // arg-matching file // From: Terry Lee <terry@uivlsisd.csl.uiuc.edu> diff --git a/gcc/testsuite/g++.old-deja/g++.law/arg11.C b/gcc/testsuite/g++.old-deja/g++.law/arg11.C index 4f0868e..3772b07 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/arg11.C +++ b/gcc/testsuite/g++.old-deja/g++.law/arg11.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed arg-matching // From: gustavo@cpqd.br (Gustavo Chaves) // Date: Wed, 25 May 94 09:38:00 EST @@ -9,14 +9,14 @@ struct String { String(const char*); }; struct Ack { Ack(String); }; -struct S { void method(Ack); }; // ERROR - referenced below +struct S { void method(Ack); }; // { dg-error "" } referenced below void function(Ack); int foo(S *o) { // Neither call has a usable constructor for conversions of char[5] to Ack. - function("adsf");// ERROR - - o->method("adsf");// ERROR - + function("adsf");// { dg-error "" } + o->method("adsf");// { dg-error "" } return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.law/arg2.C b/gcc/testsuite/g++.old-deja/g++.law/arg2.C index 5dbf483..8c4e443 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/arg2.C +++ b/gcc/testsuite/g++.old-deja/g++.law/arg2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed arg-matching // arg-matching file // Message-Id: <199303032114.AA03574@kolvir.Boulder.ParcPlace.COM> diff --git a/gcc/testsuite/g++.old-deja/g++.law/arg3.C b/gcc/testsuite/g++.old-deja/g++.law/arg3.C index c984d3a..bbaf470 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/arg3.C +++ b/gcc/testsuite/g++.old-deja/g++.law/arg3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed arg-matching typedef void* Ptr; diff --git a/gcc/testsuite/g++.old-deja/g++.law/arg4.C b/gcc/testsuite/g++.old-deja/g++.law/arg4.C index 2d4479d..1cd9fd2 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/arg4.C +++ b/gcc/testsuite/g++.old-deja/g++.law/arg4.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed arg-matching // arg-matching file // Message-Id: <14t4tyk@rpi.edu> @@ -15,6 +15,6 @@ extern void *Wrong3(char *a, Amazing *b); extern void Wrong4(char *a, int *b); extern Amazing Wrong5(char *a, int *b); -FuncPtr p = &Wrong5;// ERROR - .* -FuncPtr func_ptr_array[] = { &Wrong1, &Wrong2, &Wrong3, &Wrong4, &Wrong5, 0 };// ERROR - .* +FuncPtr p = &Wrong5;// { dg-error "" } .* +FuncPtr func_ptr_array[] = { &Wrong1, &Wrong2, &Wrong3, &Wrong4, &Wrong5, 0 };// { dg-error "" } .* diff --git a/gcc/testsuite/g++.old-deja/g++.law/arg5.C b/gcc/testsuite/g++.old-deja/g++.law/arg5.C index 9c3c81c..665c5cd 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/arg5.C +++ b/gcc/testsuite/g++.old-deja/g++.law/arg5.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed arg-matching extern double pow(double,int*); diff --git a/gcc/testsuite/g++.old-deja/g++.law/arg6.C b/gcc/testsuite/g++.old-deja/g++.law/arg6.C index 2ad7732..c47c446 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/arg6.C +++ b/gcc/testsuite/g++.old-deja/g++.law/arg6.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed arg-matching // arg-matching file // Message-Id: <9305032310.AA03900@malachite.bbn.com> diff --git a/gcc/testsuite/g++.old-deja/g++.law/arg7.C b/gcc/testsuite/g++.old-deja/g++.law/arg7.C index 620be26..a3ccab9 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/arg7.C +++ b/gcc/testsuite/g++.old-deja/g++.law/arg7.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed arg-matching // arg-matching file // Message-Id: <9305041759.AA04913@malachite.bbn.com> diff --git a/gcc/testsuite/g++.old-deja/g++.law/arg8.C b/gcc/testsuite/g++.old-deja/g++.law/arg8.C index 5f7360d..1aba05f 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/arg8.C +++ b/gcc/testsuite/g++.old-deja/g++.law/arg8.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed arg-matching // arg-matching file // Message-Id: <9307081747.AA14030@tnt> diff --git a/gcc/testsuite/g++.old-deja/g++.law/arg9.C b/gcc/testsuite/g++.old-deja/g++.law/arg9.C index 6f5e4b8..ee352fa 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/arg9.C +++ b/gcc/testsuite/g++.old-deja/g++.law/arg9.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed arg-matching // arg-matching file // Message-Id: <199405132049.QAA06835@elan.cs.UMD.EDU> diff --git a/gcc/testsuite/g++.old-deja/g++.law/arm1.C b/gcc/testsuite/g++.old-deja/g++.law/arm1.C index 112c6d8..d741108 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/arm1.C +++ b/gcc/testsuite/g++.old-deja/g++.law/arm1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed ARM-compliance // arm file // Message-Id: <9211191128.AA14718@us-es.sel.de> diff --git a/gcc/testsuite/g++.old-deja/g++.law/arm10.C b/gcc/testsuite/g++.old-deja/g++.law/arm10.C index a57785e..b3ca567 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/arm10.C +++ b/gcc/testsuite/g++.old-deja/g++.law/arm10.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed ARM-compliance // arm file // Message-Id: <1oab2hINN7m@gap.caltech.edu> diff --git a/gcc/testsuite/g++.old-deja/g++.law/arm11.C b/gcc/testsuite/g++.old-deja/g++.law/arm11.C index 14f6b9d..da26cad 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/arm11.C +++ b/gcc/testsuite/g++.old-deja/g++.law/arm11.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed ARM-compliance // arm file // Message-Id: <9302181055.AA12522@slsvitt> @@ -8,7 +8,7 @@ int main() { - int x[ 10, 11]; // ERROR - .* + int x[ 10, 11]; // { dg-error "" } .* return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.law/arm12.C b/gcc/testsuite/g++.old-deja/g++.law/arm12.C index 49d39d5..b098c22 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/arm12.C +++ b/gcc/testsuite/g++.old-deja/g++.law/arm12.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed ARM-compliance // arm file // From: belley@cae.ca (Benoit Belley 3218) @@ -23,7 +23,7 @@ public: }; X::X() -{// ERROR - .* +{// { dg-error "" } .* std::cout << "X::X()" << std::endl; } @@ -33,7 +33,7 @@ void X::f() } Y::Y() -{// ERROR - within this +{// { dg-error "" } within this std::cout << "Y::Y()" << std::endl; } diff --git a/gcc/testsuite/g++.old-deja/g++.law/arm13.C b/gcc/testsuite/g++.old-deja/g++.law/arm13.C index a33f522..f1393c6 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/arm13.C +++ b/gcc/testsuite/g++.old-deja/g++.law/arm13.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed ARM-compliance #include <stdio.h> #include <stdlib.h> diff --git a/gcc/testsuite/g++.old-deja/g++.law/arm14.C b/gcc/testsuite/g++.old-deja/g++.law/arm14.C index d4195d2..9e51f0e 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/arm14.C +++ b/gcc/testsuite/g++.old-deja/g++.law/arm14.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed ARM-compliance // unsorted.2 file // Message-Id: <BpBu19.GrF@math.waterloo.edu> @@ -9,7 +9,7 @@ class X { private: - enum E1 {a1, b1}; // ERROR - private + enum E1 {a1, b1}; // { dg-error "" } private public: enum E2 {a2, b2}; }; @@ -18,7 +18,7 @@ void h(X* p) { X::E2 e2; int x2 = X::a2; - X::E1 e1; // ERROR - within this context - int x1 = X::a1; // ERROR - Should be rejected, and is. + X::E1 e1; // { dg-error "" } within this context + int x1 = X::a1; // { dg-error "" } Should be rejected, and is. } diff --git a/gcc/testsuite/g++.old-deja/g++.law/arm15.C b/gcc/testsuite/g++.old-deja/g++.law/arm15.C index 1d41680..11a3036 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/arm15.C +++ b/gcc/testsuite/g++.old-deja/g++.law/arm15.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed ARM-compliance // arm file // From: Johan Bengtsson <jbn@lulea.trab.se> diff --git a/gcc/testsuite/g++.old-deja/g++.law/arm16.C b/gcc/testsuite/g++.old-deja/g++.law/arm16.C index 894c37c..f4b546e 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/arm16.C +++ b/gcc/testsuite/g++.old-deja/g++.law/arm16.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -ansi -Wall -pedantic +// { dg-do assemble } +// { dg-options "-ansi -Wall -pedantic" } // GROUPS passed ARM-compliance // arm file // From: Olaf.Weber@cwi.nl @@ -11,4 +11,4 @@ struct C { void foo(); }; -void (C::*pfm)() = C::foo;// ERROR - .* +void (C::*pfm)() = C::foo;// { dg-error "" } .* diff --git a/gcc/testsuite/g++.old-deja/g++.law/arm2.C b/gcc/testsuite/g++.old-deja/g++.law/arm2.C index b679c93..23284b0 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/arm2.C +++ b/gcc/testsuite/g++.old-deja/g++.law/arm2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed ARM-compliance // arm file // Message-Id: <199301260140.AA13734@world.std.com> diff --git a/gcc/testsuite/g++.old-deja/g++.law/arm3.C b/gcc/testsuite/g++.old-deja/g++.law/arm3.C index 3c888ba..c3f985a 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/arm3.C +++ b/gcc/testsuite/g++.old-deja/g++.law/arm3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed ARM-compliance // arm file // Message-Id: <199301260139.AA13555@world.std.com> diff --git a/gcc/testsuite/g++.old-deja/g++.law/arm4.C b/gcc/testsuite/g++.old-deja/g++.law/arm4.C index daadc593..bbcf7df 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/arm4.C +++ b/gcc/testsuite/g++.old-deja/g++.law/arm4.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed ARM-compliance // arm file // Message-Id: <199301272139.AA25489@world.std.com> diff --git a/gcc/testsuite/g++.old-deja/g++.law/arm5.C b/gcc/testsuite/g++.old-deja/g++.law/arm5.C index de568ae..8f038d0 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/arm5.C +++ b/gcc/testsuite/g++.old-deja/g++.law/arm5.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed ARM-compliance // arm file // Message-Id: <9212072127.AA24243@us-es.sel.de> diff --git a/gcc/testsuite/g++.old-deja/g++.law/arm6.C b/gcc/testsuite/g++.old-deja/g++.law/arm6.C index e1715ee..a057b18 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/arm6.C +++ b/gcc/testsuite/g++.old-deja/g++.law/arm6.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed ARM-compliance // arm file // Message-Id: <9211231051.AA11287@us-es.sel.de> @@ -12,8 +12,8 @@ int main() { switch (a) { case 1: - int v2 = 3;// ERROR - crosses.* - case 2:// ERROR - jump.* + int v2 = 3;// { dg-error "" } crosses.* + case 2:// { dg-error "" } jump.* if (v2 == 7) // error not flagged by 2.3.1 ; } diff --git a/gcc/testsuite/g++.old-deja/g++.law/arm7.C b/gcc/testsuite/g++.old-deja/g++.law/arm7.C index c767c59..bd16077 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/arm7.C +++ b/gcc/testsuite/g++.old-deja/g++.law/arm7.C @@ -1,4 +1,5 @@ -// Special g++ Options: -w +// { dg-do run } +// { dg-options "-w" } // GROUPS passed ARM-compliance // arm file (also in cvt file) // Message-Id: <9303061246.AA09402@gjetost.cs.wisc.edu> diff --git a/gcc/testsuite/g++.old-deja/g++.law/arm8.C b/gcc/testsuite/g++.old-deja/g++.law/arm8.C index ef340c6..8b82af9 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/arm8.C +++ b/gcc/testsuite/g++.old-deja/g++.law/arm8.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed ARM-compliance // arm file // Message-Id: <9303161105.AA29336@slsvitt> @@ -7,10 +7,10 @@ // Date: Tue, 16 Mar 93 12:05:24 +0100 struct K { - void f( int *p = 0); // ERROR - previous specification + void f( int *p = 0); // { dg-error "" } previous specification }; extern int * q; -void K::f( int *p = q);// ERROR - .* +void K::f( int *p = q);// { dg-error "" } .* diff --git a/gcc/testsuite/g++.old-deja/g++.law/arm9.C b/gcc/testsuite/g++.old-deja/g++.law/arm9.C index 7e79fdc..49232fc 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/arm9.C +++ b/gcc/testsuite/g++.old-deja/g++.law/arm9.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed ARM-compliance #include <iostream> enum f1 { @@ -19,11 +19,11 @@ class B : public A { public: void set (f2 f); }; -void B::set (f2 f) { std::cout << "called B\n";} // ERROR - candidate +void B::set (f2 f) { std::cout << "called B\n";} // { dg-error "" } candidate int main() { B b; - b.set(F1); // ARM page 309: should call A.set(f1) and that what g++ does,// ERROR - .* + b.set(F1); // ARM page 309: should call A.set(f1) and that what g++ does,// { dg-error "" } .* // 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) diff --git a/gcc/testsuite/g++.old-deja/g++.law/array1.C b/gcc/testsuite/g++.old-deja/g++.law/array1.C index d6fcdd5..304035f 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/array1.C +++ b/gcc/testsuite/g++.old-deja/g++.law/array1.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed arrays // array file // Message-Id: <9204120353.AA06266@cs.rice.edu> diff --git a/gcc/testsuite/g++.old-deja/g++.law/array2.C b/gcc/testsuite/g++.old-deja/g++.law/array2.C index 0147a4a..0dcddb0 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/array2.C +++ b/gcc/testsuite/g++.old-deja/g++.law/array2.C @@ -1,6 +1,5 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed arrays -// excess errors test - XFAIL *-*-* // array file // Message-Id: <"nac.no.188:05.10.92.14.37.45"@nac.no> // From: frode@auticon.no @@ -8,4 +7,4 @@ // Date: Thu, 5 Nov 92 15:37:34 PST extern unsigned char * (*trt_def(int))[][2]; - extern unsigned char * (trt_rplst(unsigned char *(*)[][2])); + extern unsigned char * (trt_rplst(unsigned char *(*)[][2])); // { dg-error "" } diff --git a/gcc/testsuite/g++.old-deja/g++.law/bad-error1.C b/gcc/testsuite/g++.old-deja/g++.law/bad-error1.C index 09a6878..40ee169 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/bad-error1.C +++ b/gcc/testsuite/g++.old-deja/g++.law/bad-error1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed bad-errors // bad-error file // Message-Id: <9301081103.AA29469@jclark.com> diff --git a/gcc/testsuite/g++.old-deja/g++.law/bad-error3.C b/gcc/testsuite/g++.old-deja/g++.law/bad-error3.C index c5ce118..d653ec5 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/bad-error3.C +++ b/gcc/testsuite/g++.old-deja/g++.law/bad-error3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed bad-errors // bad-error file // Date: Sun, 31 Jul 1994 11:37:43 +1000 (EST) diff --git a/gcc/testsuite/g++.old-deja/g++.law/bad-error4.C b/gcc/testsuite/g++.old-deja/g++.law/bad-error4.C index 09461c8..74626f7 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/bad-error4.C +++ b/gcc/testsuite/g++.old-deja/g++.law/bad-error4.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed bad-errors #include <stddef.h> diff --git a/gcc/testsuite/g++.old-deja/g++.law/bad-error6.C b/gcc/testsuite/g++.old-deja/g++.law/bad-error6.C index 497a49d..40e2b99 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/bad-error6.C +++ b/gcc/testsuite/g++.old-deja/g++.law/bad-error6.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed bad-errors typedef __SIZE_TYPE__ size_t; diff --git a/gcc/testsuite/g++.old-deja/g++.law/bad-error7.C b/gcc/testsuite/g++.old-deja/g++.law/bad-error7.C index 05b3033..4c07d43 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/bad-error7.C +++ b/gcc/testsuite/g++.old-deja/g++.law/bad-error7.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed bad-errors #include <iostream> diff --git a/gcc/testsuite/g++.old-deja/g++.law/bit-fields1.C b/gcc/testsuite/g++.old-deja/g++.law/bit-fields1.C index ed100af..e101d6a 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/bit-fields1.C +++ b/gcc/testsuite/g++.old-deja/g++.law/bit-fields1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed bit-fields typedef int A; diff --git a/gcc/testsuite/g++.old-deja/g++.law/bit-fields2.C b/gcc/testsuite/g++.old-deja/g++.law/bit-fields2.C index ac70686..43f30f4 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/bit-fields2.C +++ b/gcc/testsuite/g++.old-deja/g++.law/bit-fields2.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed bit-fields // bitfield file // Message-Id: <92Oct29.191913est.62@jarvis.csri.toronto.edu> diff --git a/gcc/testsuite/g++.old-deja/g++.law/bit-fields3.C b/gcc/testsuite/g++.old-deja/g++.law/bit-fields3.C index 7c7e694..36d0406 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/bit-fields3.C +++ b/gcc/testsuite/g++.old-deja/g++.law/bit-fields3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed bit-fields class t { short :(sizeof(short)-2); diff --git a/gcc/testsuite/g++.old-deja/g++.law/builtin1.C b/gcc/testsuite/g++.old-deja/g++.law/builtin1.C index c285c29..67b71a8 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/builtin1.C +++ b/gcc/testsuite/g++.old-deja/g++.law/builtin1.C @@ -1,3 +1,5 @@ +// { dg-do run } +// { dg-options "" } // GROUPS passed builtins // Apparently not in g++ bug snapshot (was originally sent to bug-gcc) // Message-Id: <m0p74Fh-0002fCC@neal.ctd.comsat.com> @@ -6,7 +8,6 @@ // Subject: builtin_alloca on hpux (gcc-2.5.6) // We have to avoid using -ansi, which results in a call to alloca instead of // the use of __builtin_alloca, and thus ends up being unresolved. -// Special g++ Options: extern "C" int printf (const char *, ...); diff --git a/gcc/testsuite/g++.old-deja/g++.law/casts1.C b/gcc/testsuite/g++.old-deja/g++.law/casts1.C index 9cfeaa1..8ffc0c2 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/casts1.C +++ b/gcc/testsuite/g++.old-deja/g++.law/casts1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed casts // casts file // From: dcb@us-es.sel.de (David Binderman 3841) @@ -7,7 +7,7 @@ // Message-ID: <9302181342.AA14050@slsvitt> int main() { - (struct T { int b; } *) 0; // ERROR - + (struct T { int b; } *) 0; // { dg-error "" } return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.law/casts2.C b/gcc/testsuite/g++.old-deja/g++.law/casts2.C index 11a36b9..e1f4359 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/casts2.C +++ b/gcc/testsuite/g++.old-deja/g++.law/casts2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed casts class VObject; diff --git a/gcc/testsuite/g++.old-deja/g++.law/casts3.C b/gcc/testsuite/g++.old-deja/g++.law/casts3.C index e76f61c..d8ee7da 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/casts3.C +++ b/gcc/testsuite/g++.old-deja/g++.law/casts3.C @@ -1,9 +1,9 @@ -// Build don't link: -// Special g++ Options: -pedantic-errors +// { dg-do assemble } +// { dg-options "-pedantic-errors" } // GROUPS passed casts // casts file // From: fjh@cs.mu.oz.au // Message-Id: <9310121939.29641@munta.cs.mu.OZ.AU> // Subject: should emit diagnostic for `int *p = (void *)0;' // Date: Wed, 13 Oct 93 5:39:35 EST - int *p = (void *)0;// ERROR - .* + int *p = (void *)0;// { dg-error "" } .* diff --git a/gcc/testsuite/g++.old-deja/g++.law/code-gen1.C b/gcc/testsuite/g++.old-deja/g++.law/code-gen1.C index a48ff84..2c699b4 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/code-gen1.C +++ b/gcc/testsuite/g++.old-deja/g++.law/code-gen1.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed code-generation // code-gen file // From: Jeffrey C. Gealow <jgealow@mtl.mit.edu> diff --git a/gcc/testsuite/g++.old-deja/g++.law/code-gen2.C b/gcc/testsuite/g++.old-deja/g++.law/code-gen2.C index 88dd13f..e250cee 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/code-gen2.C +++ b/gcc/testsuite/g++.old-deja/g++.law/code-gen2.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed code-generation // code-gen file // From: Gunther Seitz <Gunther.Seitz@regent.e-technik.tu-muenchen.dbp.de> diff --git a/gcc/testsuite/g++.old-deja/g++.law/code-gen4.C b/gcc/testsuite/g++.old-deja/g++.law/code-gen4.C index c060d66..362ecc1 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/code-gen4.C +++ b/gcc/testsuite/g++.old-deja/g++.law/code-gen4.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed code-generation // code-gen file // From: david.binderman@pmsr.philips.co.uk diff --git a/gcc/testsuite/g++.old-deja/g++.law/code-gen5.C b/gcc/testsuite/g++.old-deja/g++.law/code-gen5.C index f150a72..d3a8d2b 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/code-gen5.C +++ b/gcc/testsuite/g++.old-deja/g++.law/code-gen5.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed code-generation // code-gen file // From: "David" <norman@pi14.arc.umn.edu> diff --git a/gcc/testsuite/g++.old-deja/g++.law/copy1.C b/gcc/testsuite/g++.old-deja/g++.law/copy1.C index 32dcbc6..46e53c7 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/copy1.C +++ b/gcc/testsuite/g++.old-deja/g++.law/copy1.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed copy-ctors #include <stdio.h> diff --git a/gcc/testsuite/g++.old-deja/g++.law/copy2.C b/gcc/testsuite/g++.old-deja/g++.law/copy2.C index 3935cfd..40ed576 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/copy2.C +++ b/gcc/testsuite/g++.old-deja/g++.law/copy2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed copy-ctors // copy file // From: Vivek Khera <khera@cs.duke.edu> diff --git a/gcc/testsuite/g++.old-deja/g++.law/ctors1.C b/gcc/testsuite/g++.old-deja/g++.law/ctors1.C index 79ca94a..85a4be6 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/ctors1.C +++ b/gcc/testsuite/g++.old-deja/g++.law/ctors1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed constructors // ctor file // From: rac@qedinc.com (Robert Clark) diff --git a/gcc/testsuite/g++.old-deja/g++.law/ctors10.C b/gcc/testsuite/g++.old-deja/g++.law/ctors10.C index 3a5f3c7..8b687480 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/ctors10.C +++ b/gcc/testsuite/g++.old-deja/g++.law/ctors10.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed constructors // ctor file // Message-Id: <9302052351.AA10789@harvey> @@ -18,7 +18,7 @@ class Class }; public: //template<class T> Err& operator << (const T x) { return Err() << x; } - Err& operator << (const char *x) { return Err() << x; }// ERROR - .* + Err& operator << (const char *x) { return Err() << x; }// { dg-error "" } .* private: char x; }; diff --git a/gcc/testsuite/g++.old-deja/g++.law/ctors11.C b/gcc/testsuite/g++.old-deja/g++.law/ctors11.C index 195a823..84c9517 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/ctors11.C +++ b/gcc/testsuite/g++.old-deja/g++.law/ctors11.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed constructors // ctor file // Message-Id: <9302081631.AA14744@tera.com> @@ -10,12 +10,12 @@ public: inline A(int x){printf("constructing A with %d\n", x);} }; -class B:public A{ // ERROR - non-default constructor +class B:public A{ // { dg-error "" } non-default constructor private: public: }; int main() { - B(10);// ERROR - B doesn't have a constructor taking int + B(10);// { dg-error "" } B doesn't have a constructor taking int } diff --git a/gcc/testsuite/g++.old-deja/g++.law/ctors12.C b/gcc/testsuite/g++.old-deja/g++.law/ctors12.C index 0d81ced..adc5128 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/ctors12.C +++ b/gcc/testsuite/g++.old-deja/g++.law/ctors12.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed constructors #include <cstdio> #include <cstdlib> diff --git a/gcc/testsuite/g++.old-deja/g++.law/ctors13.C b/gcc/testsuite/g++.old-deja/g++.law/ctors13.C index 1442b02..e092222 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/ctors13.C +++ b/gcc/testsuite/g++.old-deja/g++.law/ctors13.C @@ -1,13 +1,13 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed constructors #include <iostream> class A { - A() {} // private constructor// ERROR - .* + A() {} // private constructor// { dg-error "" } .* }; int main() { - A* a = new A();// ERROR - .* + A* a = new A();// { dg-error "" } .* if (a) { std::cout << "a != NULL\n"; } else { diff --git a/gcc/testsuite/g++.old-deja/g++.law/ctors14.C b/gcc/testsuite/g++.old-deja/g++.law/ctors14.C index 49abdf7..544506f 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/ctors14.C +++ b/gcc/testsuite/g++.old-deja/g++.law/ctors14.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed constructors // ctor file // Message-Id: <199301310203.AA22417@oak.ucsc.edu> diff --git a/gcc/testsuite/g++.old-deja/g++.law/ctors15.C b/gcc/testsuite/g++.old-deja/g++.law/ctors15.C index 32da141..8e89b30 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/ctors15.C +++ b/gcc/testsuite/g++.old-deja/g++.law/ctors15.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed constructors // ctor file // Message-Id: <9303270404.28207@munta.cs.mu.OZ.AU> diff --git a/gcc/testsuite/g++.old-deja/g++.law/ctors16.C b/gcc/testsuite/g++.old-deja/g++.law/ctors16.C index ede755a..edb3ebe 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/ctors16.C +++ b/gcc/testsuite/g++.old-deja/g++.law/ctors16.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed constructors // ctor file // Message-Id: <9306021533.AA14347@icepick.jts.com> diff --git a/gcc/testsuite/g++.old-deja/g++.law/ctors17.C b/gcc/testsuite/g++.old-deja/g++.law/ctors17.C index 5fe1724..fb1d3f4 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/ctors17.C +++ b/gcc/testsuite/g++.old-deja/g++.law/ctors17.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed constructors // ctor file // Message-Id: <199306151813.gD28471@mail.Germany.EU.net> @@ -9,13 +9,13 @@ #include <fstream> -class X : public std::ifstream { // ERROR - candidate +class X : public std::ifstream { // { dg-error "" } candidate public: - X(int a, char *b) {} // ERROR - candidate + X(int a, char *b) {} // { dg-error "" } candidate }; int main() { X *y = new X(10, "123"); // the compiler must reject this constructor call: - X *x = new X("abc");// ERROR - .* + X *x = new X("abc");// { dg-error "" } .* } diff --git a/gcc/testsuite/g++.old-deja/g++.law/ctors18.C b/gcc/testsuite/g++.old-deja/g++.law/ctors18.C index e7a666e..f687e29 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/ctors18.C +++ b/gcc/testsuite/g++.old-deja/g++.law/ctors18.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed constructors class test1 { }; diff --git a/gcc/testsuite/g++.old-deja/g++.law/ctors19.C b/gcc/testsuite/g++.old-deja/g++.law/ctors19.C index 25c58d6..9890a59 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/ctors19.C +++ b/gcc/testsuite/g++.old-deja/g++.law/ctors19.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed constructors // ctor file // From: mkohtala@vinkku.hut.fi diff --git a/gcc/testsuite/g++.old-deja/g++.law/ctors2.C b/gcc/testsuite/g++.old-deja/g++.law/ctors2.C index 68c004d..21e1b2a 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/ctors2.C +++ b/gcc/testsuite/g++.old-deja/g++.law/ctors2.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed constructors // Message-Id: <m0p8Am6-0002fCC@neal.ctd.comsat.com> // Date: Fri, 10 Dec 93 11:33 EST diff --git a/gcc/testsuite/g++.old-deja/g++.law/ctors20.C b/gcc/testsuite/g++.old-deja/g++.law/ctors20.C index 34dbf7b..449f10d 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/ctors20.C +++ b/gcc/testsuite/g++.old-deja/g++.law/ctors20.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed constructors // ctor file // Message-Id: <9311011758.AA25157@thneed.cs.duke.edu> diff --git a/gcc/testsuite/g++.old-deja/g++.law/ctors21.C b/gcc/testsuite/g++.old-deja/g++.law/ctors21.C index 3f3b3df..04cb653 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/ctors21.C +++ b/gcc/testsuite/g++.old-deja/g++.law/ctors21.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed constructors // ctor file // From: mln@tera.com (Mark Niehaus) diff --git a/gcc/testsuite/g++.old-deja/g++.law/ctors3.C b/gcc/testsuite/g++.old-deja/g++.law/ctors3.C index 6658764..523089e 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/ctors3.C +++ b/gcc/testsuite/g++.old-deja/g++.law/ctors3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed constructors // ctor file // Message-Id: <m0oxRi1-0002fPC@nesmith.pactitle.com> diff --git a/gcc/testsuite/g++.old-deja/g++.law/ctors4.C b/gcc/testsuite/g++.old-deja/g++.law/ctors4.C index dc1f08b..25f9c06 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/ctors4.C +++ b/gcc/testsuite/g++.old-deja/g++.law/ctors4.C @@ -1,4 +1,5 @@ -// Special g++ Options: -w +// { dg-do run } +// { dg-options "-w" } // GROUPS passed constructors // ctors file // Message-Id: <ACHILLES.92Nov25192123@i90s8.ira.uka.de> diff --git a/gcc/testsuite/g++.old-deja/g++.law/ctors5.C b/gcc/testsuite/g++.old-deja/g++.law/ctors5.C index faba9ba..7078013 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/ctors5.C +++ b/gcc/testsuite/g++.old-deja/g++.law/ctors5.C @@ -1,11 +1,11 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed constructors // ctors file // Subject: bug in handling static const object of the enclosing class // Date: Tue, 1 Sep 92 10:38:44 EDT class X -{ // ERROR - candidate +{ // { dg-error "" } candidate private: int x; public: @@ -21,13 +21,13 @@ class Y Y(); } X::X( int xi ) -{// ERROR - return.* +{// { dg-error "" } return.* x = xi; } const X X::x0( 0 ); Y::Y() -{// ERROR - no mat +{// { dg-error "" } no mat xx = X::x0; } diff --git a/gcc/testsuite/g++.old-deja/g++.law/ctors6.C b/gcc/testsuite/g++.old-deja/g++.law/ctors6.C index b2d0a19..ee26cb5 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/ctors6.C +++ b/gcc/testsuite/g++.old-deja/g++.law/ctors6.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed constructors #include <complex> diff --git a/gcc/testsuite/g++.old-deja/g++.law/ctors7.C b/gcc/testsuite/g++.old-deja/g++.law/ctors7.C index 4f056cc..22f63db 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/ctors7.C +++ b/gcc/testsuite/g++.old-deja/g++.law/ctors7.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed constructors // ctors file // Message-Id: <3JUL199214462623@envmsa.eas.asu.edu> @@ -21,7 +21,7 @@ public: // The const keyword on this constructor is an error, but it shouldn't // cause the compiler to crash. - d1_t () const;// ERROR - .*const.* + d1_t () const;// { dg-error "" } .*const.* virtual ~d1_t (); }; diff --git a/gcc/testsuite/g++.old-deja/g++.law/ctors8.C b/gcc/testsuite/g++.old-deja/g++.law/ctors8.C index 577394e..0e5fa0a3 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/ctors8.C +++ b/gcc/testsuite/g++.old-deja/g++.law/ctors8.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed constructors // ctor file // Message-Id: <199212160609.AA18247@phecda.cs.sfu.ca> diff --git a/gcc/testsuite/g++.old-deja/g++.law/ctors9.C b/gcc/testsuite/g++.old-deja/g++.law/ctors9.C index 88ff255..bc51426 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/ctors9.C +++ b/gcc/testsuite/g++.old-deja/g++.law/ctors9.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -pedantic-errors +// { dg-do assemble } +// { dg-options "-pedantic-errors" } // GROUPS passed constructors // ctors file // Message-Id: <9301132030.AA05210@cs.rice.edu> @@ -21,7 +21,7 @@ Foo::Foo(int aa) struct var_Foo: public Foo -{ // ERROR - base.*// ERROR - in class.* +{ // { dg-error "" } base.*// ERROR - in class.* var_Foo* operator-> () {return this;} }; @@ -32,7 +32,7 @@ int blort(Foo& f) int main() { - var_Foo b(2);// ERROR - + var_Foo b(2);// { dg-error "" } b->a = 0; int x = blort(b); return x; diff --git a/gcc/testsuite/g++.old-deja/g++.law/cvt1.C b/gcc/testsuite/g++.old-deja/g++.law/cvt1.C index 3f0866e..e50996e 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/cvt1.C +++ b/gcc/testsuite/g++.old-deja/g++.law/cvt1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed conversions // cvt file // From: dak@pool.informatik.rwth-aachen.de diff --git a/gcc/testsuite/g++.old-deja/g++.law/cvt10.C b/gcc/testsuite/g++.old-deja/g++.law/cvt10.C index c943a39..0ae9e20 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/cvt10.C +++ b/gcc/testsuite/g++.old-deja/g++.law/cvt10.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed conversions // cvt file // Message-Id: <CC7oHn.B4F@izf.tno.nl> diff --git a/gcc/testsuite/g++.old-deja/g++.law/cvt11.C b/gcc/testsuite/g++.old-deja/g++.law/cvt11.C index 7394c1b..50f719a 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/cvt11.C +++ b/gcc/testsuite/g++.old-deja/g++.law/cvt11.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed conversions // cvt file // Date: Tue, 10 Nov 92 11:08:08 PST @@ -10,7 +10,7 @@ class Thing{ private: int x; - public: const int N = -1; // ERROR - bad initialization + public: const int N = -1; // { dg-error "" } bad initialization Thing(int y); }; diff --git a/gcc/testsuite/g++.old-deja/g++.law/cvt12.C b/gcc/testsuite/g++.old-deja/g++.law/cvt12.C index 8455fac..d35a996 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/cvt12.C +++ b/gcc/testsuite/g++.old-deja/g++.law/cvt12.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed conversions // cvt file // Message-Id: <9301071708.AA03432@muresh.et.tudelft.nl> diff --git a/gcc/testsuite/g++.old-deja/g++.law/cvt13.C b/gcc/testsuite/g++.old-deja/g++.law/cvt13.C index c7b09e9..0dc085e 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/cvt13.C +++ b/gcc/testsuite/g++.old-deja/g++.law/cvt13.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed conversions // cvt file // Message-Id: <ISHAI.93Mar26102509@cs73.technion.ac.il> diff --git a/gcc/testsuite/g++.old-deja/g++.law/cvt14.C b/gcc/testsuite/g++.old-deja/g++.law/cvt14.C index e2b9bad..ca9b670 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/cvt14.C +++ b/gcc/testsuite/g++.old-deja/g++.law/cvt14.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed conversions // cvt file // Message-Id: <9303241504.AA25988@spock.orl.mmc.com> diff --git a/gcc/testsuite/g++.old-deja/g++.law/cvt15.C b/gcc/testsuite/g++.old-deja/g++.law/cvt15.C index 967cbb6..e9ecbff 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/cvt15.C +++ b/gcc/testsuite/g++.old-deja/g++.law/cvt15.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed conversions // cvt file // Message-Id: <9308051530.AA05922@NeoSoft.Com> diff --git a/gcc/testsuite/g++.old-deja/g++.law/cvt16.C b/gcc/testsuite/g++.old-deja/g++.law/cvt16.C index 2d75c4c..0c821b5 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/cvt16.C +++ b/gcc/testsuite/g++.old-deja/g++.law/cvt16.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed conversions // cvt file // Message-Id: <9304121647.AA25819@tnt> diff --git a/gcc/testsuite/g++.old-deja/g++.law/cvt17.C b/gcc/testsuite/g++.old-deja/g++.law/cvt17.C index b746c98..7567da2 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/cvt17.C +++ b/gcc/testsuite/g++.old-deja/g++.law/cvt17.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed conversions // cvt file // Message-Id: <9305210124.AA02409@kato.cs.brown.edu> @@ -15,6 +15,6 @@ class Node { public: Point Location(){ Point p; return p; } }; int main() { Node** node1; - Line_Segment(node1->Location()); // intended (*node1)// ERROR - .* + Line_Segment(node1->Location()); // intended (*node1)// { dg-error "" } .* } diff --git a/gcc/testsuite/g++.old-deja/g++.law/cvt18.C b/gcc/testsuite/g++.old-deja/g++.law/cvt18.C index 79ea679..032399c 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/cvt18.C +++ b/gcc/testsuite/g++.old-deja/g++.law/cvt18.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed conversions // cvt file // Message-Id: <9307090042.AA28565@uluru.Stanford.EDU> diff --git a/gcc/testsuite/g++.old-deja/g++.law/cvt19.C b/gcc/testsuite/g++.old-deja/g++.law/cvt19.C index ae07a38..d1720ec 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/cvt19.C +++ b/gcc/testsuite/g++.old-deja/g++.law/cvt19.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed conversions // cvt file // Message-Id: <1166.9307131600@ace.eng.cam.ac.uk> diff --git a/gcc/testsuite/g++.old-deja/g++.law/cvt2.C b/gcc/testsuite/g++.old-deja/g++.law/cvt2.C index 7db6b2b..afe138b 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/cvt2.C +++ b/gcc/testsuite/g++.old-deja/g++.law/cvt2.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed conversions #include <cstdio> #include <cstdlib> diff --git a/gcc/testsuite/g++.old-deja/g++.law/cvt20.C b/gcc/testsuite/g++.old-deja/g++.law/cvt20.C index 1ecbfa2..9235fb5 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/cvt20.C +++ b/gcc/testsuite/g++.old-deja/g++.law/cvt20.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed conversions // cvt file // Message-Id: <9307152250.AA24812@volterra> @@ -10,11 +10,11 @@ // Compiles fine with Sun CC 2.1 void f(char *& x) -{// ERROR - location of error +{// { dg-error "" } location of error x++; } int main() { - f ("foo");// ERROR - init of non-const ref from char* + f ("foo");// { dg-error "" } init of non-const ref from char* } diff --git a/gcc/testsuite/g++.old-deja/g++.law/cvt21.C b/gcc/testsuite/g++.old-deja/g++.law/cvt21.C index 8cdd150..65cf5e8 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/cvt21.C +++ b/gcc/testsuite/g++.old-deja/g++.law/cvt21.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed conversions // cvt file // Message-Id: <9307200528.AA02094@legolas> diff --git a/gcc/testsuite/g++.old-deja/g++.law/cvt22.C b/gcc/testsuite/g++.old-deja/g++.law/cvt22.C index b26a887..a5ca696 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/cvt22.C +++ b/gcc/testsuite/g++.old-deja/g++.law/cvt22.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed conversions // cvt file // Message-Id: <93Aug2.163542pdt.26892@franklin.parc.xerox.com> diff --git a/gcc/testsuite/g++.old-deja/g++.law/cvt23.C b/gcc/testsuite/g++.old-deja/g++.law/cvt23.C index 626d01c..8fa877a 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/cvt23.C +++ b/gcc/testsuite/g++.old-deja/g++.law/cvt23.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed conversions // cvt file // Message-Id: <9308051209.AA15962@NeoSoft.Com> diff --git a/gcc/testsuite/g++.old-deja/g++.law/cvt3.C b/gcc/testsuite/g++.old-deja/g++.law/cvt3.C index 357dd32..a020197 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/cvt3.C +++ b/gcc/testsuite/g++.old-deja/g++.law/cvt3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed conversions // cvt file // Message-Id: <9308122113.AA14119@tnt.acsys.com> diff --git a/gcc/testsuite/g++.old-deja/g++.law/cvt4.C b/gcc/testsuite/g++.old-deja/g++.law/cvt4.C index d45d789..b66c3d4 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/cvt4.C +++ b/gcc/testsuite/g++.old-deja/g++.law/cvt4.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed conversions // cvt file // Message-Id: <9308091213.AA11572@emmy.Mathematik.Uni-Dortmund.DE> diff --git a/gcc/testsuite/g++.old-deja/g++.law/cvt5.C b/gcc/testsuite/g++.old-deja/g++.law/cvt5.C index a7a0470..8f5decc 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/cvt5.C +++ b/gcc/testsuite/g++.old-deja/g++.law/cvt5.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed conversions // cvt file // Message-Id: <1992Jul31.142856.10082@ericsson.se> diff --git a/gcc/testsuite/g++.old-deja/g++.law/cvt6.C b/gcc/testsuite/g++.old-deja/g++.law/cvt6.C index fd0a83e..0d00b74 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/cvt6.C +++ b/gcc/testsuite/g++.old-deja/g++.law/cvt6.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed conversions // cvt file // Message-Id: <9208261851.AA16997@josquin.media.mit.edu> diff --git a/gcc/testsuite/g++.old-deja/g++.law/cvt7.C b/gcc/testsuite/g++.old-deja/g++.law/cvt7.C index 0ea1d55..e68adf0 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/cvt7.C +++ b/gcc/testsuite/g++.old-deja/g++.law/cvt7.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed conversions // cvt file // From: krste@icsi.berkeley.edu (Krste Asanovic) diff --git a/gcc/testsuite/g++.old-deja/g++.law/cvt8.C b/gcc/testsuite/g++.old-deja/g++.law/cvt8.C index 8d278a4..5743cba 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/cvt8.C +++ b/gcc/testsuite/g++.old-deja/g++.law/cvt8.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed conversions // cvt file // From: solomon@cs.wisc.edu (Marvin Solomon) @@ -24,12 +24,12 @@ B::operator const A&() const { return a; } -void f(A &a) { // ERROR - in passing argument +void f(A &a) { // { dg-error "" } in passing argument printf("A at %x is %d\n", &a, a.i); } int main() { B b; b.i = 99; - f(b);// ERROR - .* + f(b);// { dg-error "" } .* } diff --git a/gcc/testsuite/g++.old-deja/g++.law/cvt9.C b/gcc/testsuite/g++.old-deja/g++.law/cvt9.C index e98508d..48ee200 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/cvt9.C +++ b/gcc/testsuite/g++.old-deja/g++.law/cvt9.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -pedantic-errors +// { dg-do assemble } +// { dg-options "-pedantic-errors" } // GROUPS passed conversions // cvt file // Message-Id: <m0mVSRj-0000cEC@mobius.veritas.com> @@ -14,4 +14,4 @@ public: int Isopen (); }; -widget fp = (widget) &window::Isopen; // ERROR - // ERROR - +widget fp = (widget) &window::Isopen; // { dg-error "" } // ERROR - diff --git a/gcc/testsuite/g++.old-deja/g++.law/dossier1.C b/gcc/testsuite/g++.old-deja/g++.law/dossier1.C index 2977f15..1b15932 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/dossier1.C +++ b/gcc/testsuite/g++.old-deja/g++.law/dossier1.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -frtti +// { dg-do assemble } +// { dg-options "-frtti" } // GROUPS passed rtti // dossier file // Message-Id: <9212021501.AA02484@olympia.miro.com> diff --git a/gcc/testsuite/g++.old-deja/g++.law/dtors1.C b/gcc/testsuite/g++.old-deja/g++.law/dtors1.C index 5c0999c..069f131 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/dtors1.C +++ b/gcc/testsuite/g++.old-deja/g++.law/dtors1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed destructors // friends file // From: offline!marc@ai.mit.edu (Marc Duponcheel) (Marc Duponcheel) @@ -9,5 +9,5 @@ void f() { int i; - i.i::~i();// ERROR - .* + i.i::~i();// { dg-error "" } .* } diff --git a/gcc/testsuite/g++.old-deja/g++.law/dtors2.C b/gcc/testsuite/g++.old-deja/g++.law/dtors2.C index ebf9612..7d8af47 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/dtors2.C +++ b/gcc/testsuite/g++.old-deja/g++.law/dtors2.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed destructors #include <stdio.h> diff --git a/gcc/testsuite/g++.old-deja/g++.law/dtors3.C b/gcc/testsuite/g++.old-deja/g++.law/dtors3.C index dc85676..6f18a3e 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/dtors3.C +++ b/gcc/testsuite/g++.old-deja/g++.law/dtors3.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed destructors // dtor file // Message-Id: <9301242117.AA04053@cs.rice.edu> diff --git a/gcc/testsuite/g++.old-deja/g++.law/dtors4.C b/gcc/testsuite/g++.old-deja/g++.law/dtors4.C index 6168c0d..5843bfc 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/dtors4.C +++ b/gcc/testsuite/g++.old-deja/g++.law/dtors4.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed destructors #include <stdio.h> diff --git a/gcc/testsuite/g++.old-deja/g++.law/dtors5.C b/gcc/testsuite/g++.old-deja/g++.law/dtors5.C index 302acd5..220372a 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/dtors5.C +++ b/gcc/testsuite/g++.old-deja/g++.law/dtors5.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed destructors // dtor file: // Message-Id: <1992Jun25.181845.18886@leland.Stanford.EDU> diff --git a/gcc/testsuite/g++.old-deja/g++.law/enum1.C b/gcc/testsuite/g++.old-deja/g++.law/enum1.C index c3ef73d..7d54c66 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/enum1.C +++ b/gcc/testsuite/g++.old-deja/g++.law/enum1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed enums class X { struct X1; diff --git a/gcc/testsuite/g++.old-deja/g++.law/enum2.C b/gcc/testsuite/g++.old-deja/g++.law/enum2.C index 902d8ed..47ad7fb 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/enum2.C +++ b/gcc/testsuite/g++.old-deja/g++.law/enum2.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -fshort-enums +// { dg-do assemble } +// { dg-options "-fshort-enums" } // GROUPS passed enums // enum file // From: Jeff Gehlhaar <jbg@qualcomm.com> diff --git a/gcc/testsuite/g++.old-deja/g++.law/enum3.C b/gcc/testsuite/g++.old-deja/g++.law/enum3.C index 43845e2..0bf9b16 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/enum3.C +++ b/gcc/testsuite/g++.old-deja/g++.law/enum3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed enums // enum file // From: frode@auticon.no @@ -12,8 +12,8 @@ class field { private: TOGGLE toggle; public: - virtual void on(void) { toggle = 3; };// ERROR - .* - virtual void off(void) { toggle = on; };// ERROR - .* + virtual void on(void) { toggle = 3; };// { dg-error "" } .* + virtual void off(void) { toggle = on; };// { dg-error "" } .* }; int main() diff --git a/gcc/testsuite/g++.old-deja/g++.law/enum4.C b/gcc/testsuite/g++.old-deja/g++.law/enum4.C index f763656..e41e9f3 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/enum4.C +++ b/gcc/testsuite/g++.old-deja/g++.law/enum4.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed enums // enum file // From: dougm@cs.rice.edu (Doug Moore) @@ -11,7 +11,7 @@ enum Enum {enumerator1, enumerator2}; struct Struct { int i; - int getI(Enum) {return i;} // ERROR - candidates + int getI(Enum) {return i;} // { dg-error "" } candidates }; int funct (Enum) @@ -23,7 +23,7 @@ int main() { Enum e = enumerator1; Struct s; - int x = funct(e+1);// ERROR - .* - int y = s.getI(e+1);// ERROR - .* + int x = funct(e+1);// { dg-error "" } .* + int y = s.getI(e+1);// { dg-error "" } .* return x+y; } diff --git a/gcc/testsuite/g++.old-deja/g++.law/enum6.C b/gcc/testsuite/g++.old-deja/g++.law/enum6.C index 65950e9..c94e49f 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/enum6.C +++ b/gcc/testsuite/g++.old-deja/g++.law/enum6.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed enums // enum file // From: polstra!jdp@uunet.uu.net (John Polstra) diff --git a/gcc/testsuite/g++.old-deja/g++.law/enum7.C b/gcc/testsuite/g++.old-deja/g++.law/enum7.C index 444fa48..1511c79 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/enum7.C +++ b/gcc/testsuite/g++.old-deja/g++.law/enum7.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed enums // friends file // From: offline!marc@ai.mit.edu (Marc Duponcheel) (Marc Duponcheel) diff --git a/gcc/testsuite/g++.old-deja/g++.law/enum8.C b/gcc/testsuite/g++.old-deja/g++.law/enum8.C index 192a2b4..e182844 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/enum8.C +++ b/gcc/testsuite/g++.old-deja/g++.law/enum8.C @@ -1,4 +1,4 @@ -// Build don't link: -// Special g++ Options: -fshort-enums +// { dg-do assemble } +// { dg-options "-fshort-enums" } // GROUPS passed enums enum E { A = 0x80000000 }; diff --git a/gcc/testsuite/g++.old-deja/g++.law/enum9.C b/gcc/testsuite/g++.old-deja/g++.law/enum9.C index 9bc9f50..9713e4b 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/enum9.C +++ b/gcc/testsuite/g++.old-deja/g++.law/enum9.C @@ -1,4 +1,5 @@ -// Special g++ Options: -fshort-enums +// { dg-do run } +// { dg-options "-fshort-enums" } // GROUPS passed enums extern "C" int printf (const char *, ...); diff --git a/gcc/testsuite/g++.old-deja/g++.law/except1.C b/gcc/testsuite/g++.old-deja/g++.law/except1.C index edfb85f..9a2123c 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/except1.C +++ b/gcc/testsuite/g++.old-deja/g++.law/except1.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -fexceptions +// { dg-do assemble } +// { dg-options "-fexceptions" } // GROUPS passed exceptions // except file // Message-Id: <9207221230.AA08566@life.ai.mit.edu> diff --git a/gcc/testsuite/g++.old-deja/g++.law/except2.C b/gcc/testsuite/g++.old-deja/g++.law/except2.C index 1bf7108..c16cfb4 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/except2.C +++ b/gcc/testsuite/g++.old-deja/g++.law/except2.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -fexceptions -g +// { dg-do assemble } +// { dg-options "-fexceptions -g" } // GROUPS passed exceptions // except file // Message-Id: <9211061330.AA29334@ifad.dk> diff --git a/gcc/testsuite/g++.old-deja/g++.law/except3.C b/gcc/testsuite/g++.old-deja/g++.law/except3.C index 553da6b..ec8bb10 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/except3.C +++ b/gcc/testsuite/g++.old-deja/g++.law/except3.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -fexceptions +// { dg-do assemble } +// { dg-options "-fexceptions" } // GROUPS passed exceptions // except file // Message-Id: <9211301118.AA09810@ss670mp.geco.slb.com> diff --git a/gcc/testsuite/g++.old-deja/g++.law/except4.C b/gcc/testsuite/g++.old-deja/g++.law/except4.C index c108c48..95746b1 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/except4.C +++ b/gcc/testsuite/g++.old-deja/g++.law/except4.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -fexceptions +// { dg-do assemble } +// { dg-options "-fexceptions" } // GROUPS passed exceptions // except file // Message-Id: <9307071456.AA05275@davinci.hio.hen.nl> diff --git a/gcc/testsuite/g++.old-deja/g++.law/except5.C b/gcc/testsuite/g++.old-deja/g++.law/except5.C index 18174e7..a99ad8a 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/except5.C +++ b/gcc/testsuite/g++.old-deja/g++.law/except5.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -fexceptions +// { dg-do assemble } +// { dg-options "-fexceptions" } // GROUPS passed exceptions // except file // Message-Id: <199311101607.AA11803@hsi86.hsi.com> diff --git a/gcc/testsuite/g++.old-deja/g++.law/except6.C b/gcc/testsuite/g++.old-deja/g++.law/except6.C index cca167c..05f54e6 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/except6.C +++ b/gcc/testsuite/g++.old-deja/g++.law/except6.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -fexceptions +// { dg-do assemble } +// { dg-options "-fexceptions" } // GROUPS passed exceptions // except file // From: GUSTAVO%DRAGON@orion.cpqd.ansp.br diff --git a/gcc/testsuite/g++.old-deja/g++.law/friend1.C b/gcc/testsuite/g++.old-deja/g++.law/friend1.C index 5628e0b..9cc1d35 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/friend1.C +++ b/gcc/testsuite/g++.old-deja/g++.law/friend1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed friends // friends file // From: rwave!myersn%rwave.roguewave@cs.orst.edu (Nathan Myers) diff --git a/gcc/testsuite/g++.old-deja/g++.law/friend4.C b/gcc/testsuite/g++.old-deja/g++.law/friend4.C index a734fc4..8c712b8 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/friend4.C +++ b/gcc/testsuite/g++.old-deja/g++.law/friend4.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed friends // friends file // From: osinski@cs.nyu.edu (Ed Osinski) diff --git a/gcc/testsuite/g++.old-deja/g++.law/friend5.C b/gcc/testsuite/g++.old-deja/g++.law/friend5.C index 88b0fffb..eebf3b2 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/friend5.C +++ b/gcc/testsuite/g++.old-deja/g++.law/friend5.C @@ -1,6 +1,6 @@ -// Build don't link: +// { dg-do assemble } +// { dg-options "-Wreturn-type" } // GROUPS passed friends -// Special g++ Options: -Wreturn-type extern "C" int good_friend(int); extern "C" int bad_friend(); @@ -16,10 +16,10 @@ int good_friend(int) { obj.parts = 0; - } // ERROR - non-void + } // { dg-error "" } non-void int bad_friend() { obj.parts = 0; - } // ERROR - non-void + } // { dg-error "" } non-void diff --git a/gcc/testsuite/g++.old-deja/g++.law/global-init1.C b/gcc/testsuite/g++.old-deja/g++.law/global-init1.C index 9047067..ad25edb 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/global-init1.C +++ b/gcc/testsuite/g++.old-deja/g++.law/global-init1.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed initialization // global-init file // Message-Id: <9212021756.AA12639@grumpy.pocs.com> diff --git a/gcc/testsuite/g++.old-deja/g++.law/incdec1.C b/gcc/testsuite/g++.old-deja/g++.law/incdec1.C index ce5903c..b1fc4c4 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/incdec1.C +++ b/gcc/testsuite/g++.old-deja/g++.law/incdec1.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -w -O3 +// { dg-do assemble } +// { dg-options "-w -O3" } // GROUPS passed incdec typedef void* Pix; class ndbArtPtrVec diff --git a/gcc/testsuite/g++.old-deja/g++.law/init1.C b/gcc/testsuite/g++.old-deja/g++.law/init1.C index 1f23d78..82f49ae 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/init1.C +++ b/gcc/testsuite/g++.old-deja/g++.law/init1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed initialization class foo { public: @@ -8,12 +8,12 @@ public: class bar { public: - foo f[3] = { 1, 2, 3 }; // works: f[0] = 1, f[1] = 2, f[2] = 3 // ERROR - ANSI C++ forbids initialization of member f; + foo f[3] = { 1, 2, 3 }; // works: f[0] = 1, f[1] = 2, f[2] = 3 // { dg-error "" } ANSI C++ forbids initialization of member f; }; class bar2 { public: - foo f[3] = { foo(1), foo(2), foo(3) }; // ERROR - ANSI C++ forbids initialization of member f; + foo f[3] = { foo(1), foo(2), foo(3) }; // { dg-error "" } ANSI C++ forbids initialization of member f; // does not compile -- error: field initializer is not constant }; diff --git a/gcc/testsuite/g++.old-deja/g++.law/init10.C b/gcc/testsuite/g++.old-deja/g++.law/init10.C index b6f2085..4298bb9 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/init10.C +++ b/gcc/testsuite/g++.old-deja/g++.law/init10.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed initialization // init file // From: Ingo Donasch <ingo@specs.de> @@ -21,6 +21,6 @@ public: }; b::b() : three(this) -{ // ERROR - bad array initializer +{ // { dg-error "" } bad array initializer } diff --git a/gcc/testsuite/g++.old-deja/g++.law/init11.C b/gcc/testsuite/g++.old-deja/g++.law/init11.C index 3b3092f..7ac210f 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/init11.C +++ b/gcc/testsuite/g++.old-deja/g++.law/init11.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed initialization // init file // From: hansen@srd.ull.rdc.toshiba.co.jp diff --git a/gcc/testsuite/g++.old-deja/g++.law/init13.C b/gcc/testsuite/g++.old-deja/g++.law/init13.C index 40917c8..3a28718 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/init13.C +++ b/gcc/testsuite/g++.old-deja/g++.law/init13.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed initialization // init file // Message-Id: <9306280834.AA20921@slsvitt.us-es.sel.de> diff --git a/gcc/testsuite/g++.old-deja/g++.law/init14.C b/gcc/testsuite/g++.old-deja/g++.law/init14.C index 6c15925..2305fde 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/init14.C +++ b/gcc/testsuite/g++.old-deja/g++.law/init14.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed initialization // init file // From: hansen@srd.ull.rdc.toshiba.co.jp diff --git a/gcc/testsuite/g++.old-deja/g++.law/init2.C b/gcc/testsuite/g++.old-deja/g++.law/init2.C index bfc9014..1109595 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/init2.C +++ b/gcc/testsuite/g++.old-deja/g++.law/init2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed initialization // init file // From: lupine!segfault!rfg@uunet.UU.NET diff --git a/gcc/testsuite/g++.old-deja/g++.law/init3.C b/gcc/testsuite/g++.old-deja/g++.law/init3.C index 72b9de8..92f4ed7 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/init3.C +++ b/gcc/testsuite/g++.old-deja/g++.law/init3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed initialization // init file // From: thayer@moose.cs.columbia.edu (Charles Thayer) @@ -8,5 +8,5 @@ int main() { int offset; -char buf[offset]=""; // ERROR - ansi forbids variable arrays +char buf[offset]=""; // { dg-error "" } ansi forbids variable arrays } diff --git a/gcc/testsuite/g++.old-deja/g++.law/init4.C b/gcc/testsuite/g++.old-deja/g++.law/init4.C index 0848762..382de33 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/init4.C +++ b/gcc/testsuite/g++.old-deja/g++.law/init4.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -pedantic-errors +// { dg-do assemble } +// { dg-options "-pedantic-errors" } // GROUPS passed initialization class Time; class TimeNote; @@ -7,7 +7,7 @@ class TimeNote; class SvTime { public: - static TimeNote *time_events = 0;// ERROR - .* + static TimeNote *time_events = 0;// { dg-error "" } .* }; -SvTime CurrentTime = {0};// ERROR - +SvTime CurrentTime = {0};// { dg-error "" } diff --git a/gcc/testsuite/g++.old-deja/g++.law/init5.C b/gcc/testsuite/g++.old-deja/g++.law/init5.C index e5882341..c1d647b 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/init5.C +++ b/gcc/testsuite/g++.old-deja/g++.law/init5.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -pedantic-errors +// { dg-do assemble } +// { dg-options "-pedantic-errors" } // GROUPS passed initialization // init file // From: dcb@us-es.sel.de @@ -11,8 +11,8 @@ extern int fred( int); class X { public : - void f( int = fred( 0) ) ; // ERROR - previous spec + void f( int = fred( 0) ) ; // { dg-error "" } previous spec } ; -void X::f( int x = fred( 0) ) {// ERROR - .* +void X::f( int x = fred( 0) ) {// { dg-error "" } .* } diff --git a/gcc/testsuite/g++.old-deja/g++.law/init6.C b/gcc/testsuite/g++.old-deja/g++.law/init6.C index bcebd6c..861b925 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/init6.C +++ b/gcc/testsuite/g++.old-deja/g++.law/init6.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed initialization class Vector { double *v; @@ -9,5 +9,5 @@ public: ~Vector(); }; -exmpl() { Vector x(8)[16]; }// ERROR - .* +exmpl() { Vector x(8)[16]; }// { dg-error "" } .* diff --git a/gcc/testsuite/g++.old-deja/g++.law/init7.C b/gcc/testsuite/g++.old-deja/g++.law/init7.C index 2ec97c4..0b047b8 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/init7.C +++ b/gcc/testsuite/g++.old-deja/g++.law/init7.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed initialization class test { @@ -8,4 +8,4 @@ class test test (int val) { x = val; y = 0;} }; -test ar(34)[5];// ERROR - .* +test ar(34)[5];// { dg-error "" } .* diff --git a/gcc/testsuite/g++.old-deja/g++.law/init8.C b/gcc/testsuite/g++.old-deja/g++.law/init8.C index 6b52bdc..0ccf451 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/init8.C +++ b/gcc/testsuite/g++.old-deja/g++.law/init8.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed initialization // init file // From: kol@world.std.com (Nikolay Yatsenko) @@ -9,14 +9,14 @@ const int ic = 1; void f(int& arg) -{ // ERROR - argument 1 +{ // { dg-error "" } argument 1 if (arg) ; } const int& icr = ic; int main(void) { - f(icr); // g++ does not give error here// ERROR - .* + f(icr); // g++ does not give error here// { dg-error "" } .* return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.law/init9.C b/gcc/testsuite/g++.old-deja/g++.law/init9.C index 823bc61..7ceb641 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/init9.C +++ b/gcc/testsuite/g++.old-deja/g++.law/init9.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed initialization // init file // From: Richard Speed <speed@cs.montana.edu> diff --git a/gcc/testsuite/g++.old-deja/g++.law/inline4.C b/gcc/testsuite/g++.old-deja/g++.law/inline4.C index e7c664c..8a839cc 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/inline4.C +++ b/gcc/testsuite/g++.old-deja/g++.law/inline4.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed inlining // inline file // Message-Id: <9306020823.AA14027@joker> diff --git a/gcc/testsuite/g++.old-deja/g++.law/inline6.C b/gcc/testsuite/g++.old-deja/g++.law/inline6.C index f530679..20f396d 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/inline6.C +++ b/gcc/testsuite/g++.old-deja/g++.law/inline6.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed inlining // inline file // Message-Id: <199307162240.AA04019@world.std.com> diff --git a/gcc/testsuite/g++.old-deja/g++.law/inline7.C b/gcc/testsuite/g++.old-deja/g++.law/inline7.C index 0a1d373..c064c98 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/inline7.C +++ b/gcc/testsuite/g++.old-deja/g++.law/inline7.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed inlining template <class Type> struct A { diff --git a/gcc/testsuite/g++.old-deja/g++.law/memoized1.C b/gcc/testsuite/g++.old-deja/g++.law/memoized1.C index 16e63e2..eea60eb 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/memoized1.C +++ b/gcc/testsuite/g++.old-deja/g++.law/memoized1.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -fsave-memoized +// { dg-do assemble } +// { dg-options "-fsave-memoized" } // GROUPS passed memoized class CArray { diff --git a/gcc/testsuite/g++.old-deja/g++.law/mentor1.C b/gcc/testsuite/g++.old-deja/g++.law/mentor1.C index a9362e0..4011b16 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/mentor1.C +++ b/gcc/testsuite/g++.old-deja/g++.law/mentor1.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -O +// { dg-do assemble } +// { dg-options "-O" } // GROUPS passed mentor struct Word { struct S1 *p1; diff --git a/gcc/testsuite/g++.old-deja/g++.law/missed-error1.C b/gcc/testsuite/g++.old-deja/g++.law/missed-error1.C index 5091e7d..17722a5 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/missed-error1.C +++ b/gcc/testsuite/g++.old-deja/g++.law/missed-error1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed missed-error // missed-error file // From: John Carr <jfc@Athena.MIT.EDU> @@ -16,6 +16,6 @@ extern "C" } pfv p = f; -pfv p2 = cf; // ERROR - mismatch XFAIL *-*-* -pcfv p3 = f; // ERROR - mismatch XFAIL *-*-* +pfv p2 = cf; // { dg-error "" "" { xfail *-*-* } } mismatch +pcfv p3 = f; // { dg-error "" "" { xfail *-*-* } } mismatch pcfv p4 = cf; diff --git a/gcc/testsuite/g++.old-deja/g++.law/missed-error2.C b/gcc/testsuite/g++.old-deja/g++.law/missed-error2.C index 2fc1ddf..d9d6195 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/missed-error2.C +++ b/gcc/testsuite/g++.old-deja/g++.law/missed-error2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed missed-error // missed-error file // From: ndc!don@csvax.cs.caltech.edu (Don Erway) @@ -8,11 +8,11 @@ #include <iostream> -inline int max(int a, int b) {return a > b ? a : b;}; // ERROR - candidate -inline double max(double a, double b) {return a > b ? a : b;}; // ERROR - candidate +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 int main() { - static void foo(int i, int j, double x, double y) ;// ERROR - .* + static void foo(int i, int j, double x, double y) ;// { dg-error "" } .* foo(4, -37, 14.39, 14.38); } @@ -23,6 +23,6 @@ static void foo(int i, int j, double x, double y) { std::cout << "Max(int): " << max(i,j) << " Max(double): " << max(x,y) << '\n'; - std::cout << "Max(int, double): " << max(i, y) << '\n';// ERROR - + std::cout << "Max(int, double): " << max(i, y) << '\n';// { dg-error "" } } diff --git a/gcc/testsuite/g++.old-deja/g++.law/missed-error3.C b/gcc/testsuite/g++.old-deja/g++.law/missed-error3.C index d80bae2..3275b22 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/missed-error3.C +++ b/gcc/testsuite/g++.old-deja/g++.law/missed-error3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed missed-error // missed-error file // From: Neil Wilson <csf004@cch.coventry.ac.uk> @@ -88,7 +88,7 @@ public: virtual const int lower() const; virtual const int upper() const; virtual const T item(const int index) const; - const T Array::operator[](const int index); // ERROR - qualification ignored + const T Array::operator[](const int index); // { dg-error "" } qualification ignored virtual const bool valid_index(const int index) const; virtual const bool empty() const; friend const bool operator==(const Array& left, const Array& right); @@ -119,6 +119,6 @@ public: void Fixed_List::go_offleft() const { - cursor_position = 0;// ERROR - + cursor_position = 0;// { dg-error "" } } diff --git a/gcc/testsuite/g++.old-deja/g++.law/missing1.C b/gcc/testsuite/g++.old-deja/g++.law/missing1.C index e6505f5..9afeef6 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/missing1.C +++ b/gcc/testsuite/g++.old-deja/g++.law/missing1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed missing // missing file // Message-Id: <9207100259.AA11702@quaestor> diff --git a/gcc/testsuite/g++.old-deja/g++.law/nest1.C b/gcc/testsuite/g++.old-deja/g++.law/nest1.C index e8fa80c..7b2cae5 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/nest1.C +++ b/gcc/testsuite/g++.old-deja/g++.law/nest1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed nest // nest file // From: gs4t@virginia.edu (Gnanasekaran Swaminathan) @@ -6,10 +6,10 @@ // Subject: Local type names bug in g++ 2.3.3 // Message-ID: <1992Dec30.203807.17504@murdoch.acc.Virginia.EDU> -typedef char* T; // ERROR - previous declaration +typedef char* T; // { dg-error "" } previous declaration struct Y { T a; - typedef long T; // error. See ARM p189-191 for details// ERROR - + typedef long T; // error. See ARM p189-191 for details// { dg-error "" } T b; }; diff --git a/gcc/testsuite/g++.old-deja/g++.law/nest2.C b/gcc/testsuite/g++.old-deja/g++.law/nest2.C index adc0556..cee335d 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/nest2.C +++ b/gcc/testsuite/g++.old-deja/g++.law/nest2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed nest struct B { diff --git a/gcc/testsuite/g++.old-deja/g++.law/nest3.C b/gcc/testsuite/g++.old-deja/g++.law/nest3.C index d390bc4..daeaa20 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/nest3.C +++ b/gcc/testsuite/g++.old-deja/g++.law/nest3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed nest #include <iostream> diff --git a/gcc/testsuite/g++.old-deja/g++.law/nest4.C b/gcc/testsuite/g++.old-deja/g++.law/nest4.C index 98b085f..ed9d282 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/nest4.C +++ b/gcc/testsuite/g++.old-deja/g++.law/nest4.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed nest // nest file // From: Neal Young <ney@princeton.edu> diff --git a/gcc/testsuite/g++.old-deja/g++.law/nest5.C b/gcc/testsuite/g++.old-deja/g++.law/nest5.C index 99e8508..892337c 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/nest5.C +++ b/gcc/testsuite/g++.old-deja/g++.law/nest5.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed nest // nest file // From: tal@vlsi.cs.caltech.edu diff --git a/gcc/testsuite/g++.old-deja/g++.law/operators10.C b/gcc/testsuite/g++.old-deja/g++.law/operators10.C index c87880f..fe36bec 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/operators10.C +++ b/gcc/testsuite/g++.old-deja/g++.law/operators10.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed operators // opr-eq file // Message-Id: <9306040324.AA22954@balder.cs.wisc.edu> diff --git a/gcc/testsuite/g++.old-deja/g++.law/operators11.C b/gcc/testsuite/g++.old-deja/g++.law/operators11.C index 16eccea..6c28830 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/operators11.C +++ b/gcc/testsuite/g++.old-deja/g++.law/operators11.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed operators // opr-eq file // Message-Id: <CCJrut.9M7@csc.ti.com> diff --git a/gcc/testsuite/g++.old-deja/g++.law/operators12.C b/gcc/testsuite/g++.old-deja/g++.law/operators12.C index cd5312b..2533a7e 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/operators12.C +++ b/gcc/testsuite/g++.old-deja/g++.law/operators12.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed operators // opr-eq file // Message-Id: <199311181618.AA27761@oil.cs.columbia.edu> diff --git a/gcc/testsuite/g++.old-deja/g++.law/operators13.C b/gcc/testsuite/g++.old-deja/g++.law/operators13.C index f423238..3aba4f6 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/operators13.C +++ b/gcc/testsuite/g++.old-deja/g++.law/operators13.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed operators // opr-eq file // Message-Id: <1993Nov18.210502.28842@midway.uchicago.edu> diff --git a/gcc/testsuite/g++.old-deja/g++.law/operators14.C b/gcc/testsuite/g++.old-deja/g++.law/operators14.C index 22e1256..d0ec8a4 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/operators14.C +++ b/gcc/testsuite/g++.old-deja/g++.law/operators14.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed operators void foo (int * a, int * b, int * c) {} diff --git a/gcc/testsuite/g++.old-deja/g++.law/operators15.C b/gcc/testsuite/g++.old-deja/g++.law/operators15.C index 94775c5..ea0e688 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/operators15.C +++ b/gcc/testsuite/g++.old-deja/g++.law/operators15.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed operators // opr-del file // Message-Id: <199301272137.AA25213@world.std.com> diff --git a/gcc/testsuite/g++.old-deja/g++.law/operators16.C b/gcc/testsuite/g++.old-deja/g++.law/operators16.C index 76fcb64..820e470 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/operators16.C +++ b/gcc/testsuite/g++.old-deja/g++.law/operators16.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed operators // copy file // From: gfm@mencon.mencon.oz.au (Graham Menhennitt) diff --git a/gcc/testsuite/g++.old-deja/g++.law/operators17.C b/gcc/testsuite/g++.old-deja/g++.law/operators17.C index 7674233..ea2e9be 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/operators17.C +++ b/gcc/testsuite/g++.old-deja/g++.law/operators17.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -Wall -pedantic-errors +// { dg-do assemble } +// { dg-options "-Wall -pedantic-errors" } // GROUPS passed operators // copy file // From: gfm@mencon.mencon.oz.au (Graham Menhennitt) @@ -8,5 +8,5 @@ // Message-ID: <9304291053.AA00090@mencon> struct A { - A& operator = (const A& a) {}// WARNING - + A& operator = (const A& a) {}// { dg-warning "" } }; diff --git a/gcc/testsuite/g++.old-deja/g++.law/operators18.C b/gcc/testsuite/g++.old-deja/g++.law/operators18.C index 74ea159..d362a4c 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/operators18.C +++ b/gcc/testsuite/g++.old-deja/g++.law/operators18.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed operators // opr-ampr file // From: mecklen@oops.cs.utah.edu (Robert Mecklenburg) diff --git a/gcc/testsuite/g++.old-deja/g++.law/operators19.C b/gcc/testsuite/g++.old-deja/g++.law/operators19.C index 3756041..715f7c1 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/operators19.C +++ b/gcc/testsuite/g++.old-deja/g++.law/operators19.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed operators // opr-ampr file // From: Jarkko Sonninen <Jarkko.Sonninen@lut.fi> diff --git a/gcc/testsuite/g++.old-deja/g++.law/operators2.C b/gcc/testsuite/g++.old-deja/g++.law/operators2.C index 82954ff..64f6bfa 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/operators2.C +++ b/gcc/testsuite/g++.old-deja/g++.law/operators2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed operators // opr-conv file // Message-Id: <199301260142.AA13995@world.std.com> diff --git a/gcc/testsuite/g++.old-deja/g++.law/operators21.C b/gcc/testsuite/g++.old-deja/g++.law/operators21.C index a4aac7d..e6d77c3 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/operators21.C +++ b/gcc/testsuite/g++.old-deja/g++.law/operators21.C @@ -1,16 +1,16 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed operators struct A { int x; }; -int operator()(A x,float y) {// ERROR - .* +int operator()(A x,float y) {// { dg-error "" } .* return 1; } int main() { A x; - x(1.0); // ERROR - no match + x(1.0); // { dg-error "" } no match } diff --git a/gcc/testsuite/g++.old-deja/g++.law/operators22.C b/gcc/testsuite/g++.old-deja/g++.law/operators22.C index e550dac..2d18e08 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/operators22.C +++ b/gcc/testsuite/g++.old-deja/g++.law/operators22.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed operators template <class T> class t { diff --git a/gcc/testsuite/g++.old-deja/g++.law/operators23.C b/gcc/testsuite/g++.old-deja/g++.law/operators23.C index 7271840..38ef1b1 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/operators23.C +++ b/gcc/testsuite/g++.old-deja/g++.law/operators23.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed operators // opr-new file // From: (The Crossjammer) <xjam@cork.cs.berkeley.edu> diff --git a/gcc/testsuite/g++.old-deja/g++.law/operators24.C b/gcc/testsuite/g++.old-deja/g++.law/operators24.C index 46346e5..5d182aa 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/operators24.C +++ b/gcc/testsuite/g++.old-deja/g++.law/operators24.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed operators // opr-new file // From: rwave!myersn%rwave.roguewave@cs.orst.edu (Nathan Myers) diff --git a/gcc/testsuite/g++.old-deja/g++.law/operators25.C b/gcc/testsuite/g++.old-deja/g++.law/operators25.C index 4b701b6..e373064 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/operators25.C +++ b/gcc/testsuite/g++.old-deja/g++.law/operators25.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed operators // opr-new file // From: gparker@world.std.com (Glenn P Parker) diff --git a/gcc/testsuite/g++.old-deja/g++.law/operators27.C b/gcc/testsuite/g++.old-deja/g++.law/operators27.C index 970e934..c284a2a 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/operators27.C +++ b/gcc/testsuite/g++.old-deja/g++.law/operators27.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed operators // opr-new file // From: David Binderman 3841 <dcb@us-es.sel.de> diff --git a/gcc/testsuite/g++.old-deja/g++.law/operators28.C b/gcc/testsuite/g++.old-deja/g++.law/operators28.C index e089382..7d16647 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/operators28.C +++ b/gcc/testsuite/g++.old-deja/g++.law/operators28.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed operators #include <sys/types.h> #include <stdio.h> diff --git a/gcc/testsuite/g++.old-deja/g++.law/operators29.C b/gcc/testsuite/g++.old-deja/g++.law/operators29.C index c24bbe4..387f8cb 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/operators29.C +++ b/gcc/testsuite/g++.old-deja/g++.law/operators29.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed operators // (Message bugs/opr-del:4) // From: jamshid@ses.com (Jamshid Afshar) diff --git a/gcc/testsuite/g++.old-deja/g++.law/operators3.C b/gcc/testsuite/g++.old-deja/g++.law/operators3.C index e4a8341..d2e14d7 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/operators3.C +++ b/gcc/testsuite/g++.old-deja/g++.law/operators3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed operators // opr-pl file // Message-Id: <9212010409.AA24967@zeus.research.otc.com.au> diff --git a/gcc/testsuite/g++.old-deja/g++.law/operators30.C b/gcc/testsuite/g++.old-deja/g++.law/operators30.C index 26ad698..cd57188 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/operators30.C +++ b/gcc/testsuite/g++.old-deja/g++.law/operators30.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed operators // opr-mm file // Date: Thu, 2 Jun 94 10:00:29 +0200 diff --git a/gcc/testsuite/g++.old-deja/g++.law/operators31.C b/gcc/testsuite/g++.old-deja/g++.law/operators31.C index a2ba720..8ad9c47 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/operators31.C +++ b/gcc/testsuite/g++.old-deja/g++.law/operators31.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed operators // opr-del file // From: Eberhard Mattes <mattes@azu.informatik.uni-stuttgart.de> diff --git a/gcc/testsuite/g++.old-deja/g++.law/operators32.C b/gcc/testsuite/g++.old-deja/g++.law/operators32.C index fcf01bc..91de03e 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/operators32.C +++ b/gcc/testsuite/g++.old-deja/g++.law/operators32.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed operators #include <iostream> @@ -49,7 +49,7 @@ foo() {std::cout << "foo created" << std::endl; } }; foo **f2; -allocate2d(d1, d2, f2);// ERROR - type.*// ERROR - trying to.* -ffree(d1, f2);// ERROR - type.*// ERROR - trying to.* +allocate2d(d1, d2, f2);// { dg-error "" } type.*// ERROR - trying to.* +ffree(d1, f2);// { dg-error "" } type.*// ERROR - trying to.* } diff --git a/gcc/testsuite/g++.old-deja/g++.law/operators33.C b/gcc/testsuite/g++.old-deja/g++.law/operators33.C index bdf5147..d0aa921 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/operators33.C +++ b/gcc/testsuite/g++.old-deja/g++.law/operators33.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed operators // opr-new file // From: flisakow@cae.wisc.edu diff --git a/gcc/testsuite/g++.old-deja/g++.law/operators34.C b/gcc/testsuite/g++.old-deja/g++.law/operators34.C index 316500e..069f815 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/operators34.C +++ b/gcc/testsuite/g++.old-deja/g++.law/operators34.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed operators class A { public: diff --git a/gcc/testsuite/g++.old-deja/g++.law/operators4.C b/gcc/testsuite/g++.old-deja/g++.law/operators4.C index 894bdec..c760039 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/operators4.C +++ b/gcc/testsuite/g++.old-deja/g++.law/operators4.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // GROUPS passed operators // opr-del file // From: rollins@bart.ee.queensu.ca (Mark Rollins) @@ -14,7 +15,7 @@ class Vector { Complex *v; public: Vector(int s=1) { size = s; v = new Complex[size];}; - ~Vector() { delete [size] v;}// ERROR - warning + ~Vector() { delete [size] v;}// { dg-error "" } warning }; void foo(int s) diff --git a/gcc/testsuite/g++.old-deja/g++.law/operators6.C b/gcc/testsuite/g++.old-deja/g++.law/operators6.C index f66f649..f15c073 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/operators6.C +++ b/gcc/testsuite/g++.old-deja/g++.law/operators6.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed operators // opr-as file // From: Klaus Ahrens <ahrens@informatik.hu-berlin.de> diff --git a/gcc/testsuite/g++.old-deja/g++.law/operators8.C b/gcc/testsuite/g++.old-deja/g++.law/operators8.C index f1a1236..16c91cd 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/operators8.C +++ b/gcc/testsuite/g++.old-deja/g++.law/operators8.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed operators #include <stdio.h> diff --git a/gcc/testsuite/g++.old-deja/g++.law/operators9.C b/gcc/testsuite/g++.old-deja/g++.law/operators9.C index 8aeac84..127aa8c 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/operators9.C +++ b/gcc/testsuite/g++.old-deja/g++.law/operators9.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed operators // opr-eq file // Message-Id: <9301141514.AA05925@mi.el.utwente.nl> @@ -9,11 +9,11 @@ class B { public: - operator=(B &); // ERROR - no type or storage class + operator=(B &); // { dg-error "" } no type or storage class }; void test(B &b1, const B &b2) { - b1 = b2;// ERROR - .* + b1 = b2;// { dg-error "" } .* } diff --git a/gcc/testsuite/g++.old-deja/g++.law/parsing1.C b/gcc/testsuite/g++.old-deja/g++.law/parsing1.C index 7b032e3..3930ae8 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/parsing1.C +++ b/gcc/testsuite/g++.old-deja/g++.law/parsing1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed parsing // parsing folder // From: hendrik%vedge.UUCP@iro.umontreal.ca diff --git a/gcc/testsuite/g++.old-deja/g++.law/parsing10.C b/gcc/testsuite/g++.old-deja/g++.law/parsing10.C index 9fee9eb..e18bdde 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/parsing10.C +++ b/gcc/testsuite/g++.old-deja/g++.law/parsing10.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed parsing // parsing folder // From: Eirik Fuller <eirik@elf.ithaca.ny.us> diff --git a/gcc/testsuite/g++.old-deja/g++.law/parsing2.C b/gcc/testsuite/g++.old-deja/g++.law/parsing2.C index 5570ad9..73be6bb 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/parsing2.C +++ b/gcc/testsuite/g++.old-deja/g++.law/parsing2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed parsing // parsing folder // From: jonathan@Pescadero.Stanford.EDU diff --git a/gcc/testsuite/g++.old-deja/g++.law/parsing3.C b/gcc/testsuite/g++.old-deja/g++.law/parsing3.C index 8efee5b..a9e6e33 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/parsing3.C +++ b/gcc/testsuite/g++.old-deja/g++.law/parsing3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed parsing // parsing folder // From: tll@cco.caltech.edu (Tal Lewis Lancaster) diff --git a/gcc/testsuite/g++.old-deja/g++.law/parsing4.C b/gcc/testsuite/g++.old-deja/g++.law/parsing4.C index e834d6f..6eced1b 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/parsing4.C +++ b/gcc/testsuite/g++.old-deja/g++.law/parsing4.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed parsing // parsing folder // From: Glenn Engel <glenne@lsid.hp.com> diff --git a/gcc/testsuite/g++.old-deja/g++.law/parsing5.C b/gcc/testsuite/g++.old-deja/g++.law/parsing5.C index f3f8473..370c1bc 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/parsing5.C +++ b/gcc/testsuite/g++.old-deja/g++.law/parsing5.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed parsing // From: Teemu Torma <Teemu.Torma@frend.fi> // Date: Mon, 15 Jun 92 18:42:25 +0300 diff --git a/gcc/testsuite/g++.old-deja/g++.law/parsing6.C b/gcc/testsuite/g++.old-deja/g++.law/parsing6.C index 63a660e..f95c619 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/parsing6.C +++ b/gcc/testsuite/g++.old-deja/g++.law/parsing6.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed parsing // parsing folder // From: "James S. Vera" <vera@fanaraaken.stanford.edu> diff --git a/gcc/testsuite/g++.old-deja/g++.law/parsing7.C b/gcc/testsuite/g++.old-deja/g++.law/parsing7.C index 1b73c95..d39400a 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/parsing7.C +++ b/gcc/testsuite/g++.old-deja/g++.law/parsing7.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed parsing // parsing folder // From: szahn%Robinie@goesser.sie.siemens.co.at (Hr. Zahn) diff --git a/gcc/testsuite/g++.old-deja/g++.law/parsing8.C b/gcc/testsuite/g++.old-deja/g++.law/parsing8.C index d897849..797982c 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/parsing8.C +++ b/gcc/testsuite/g++.old-deja/g++.law/parsing8.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed parsing // parsing folder // From: nag@soft.flab.fujitsu.co.jp diff --git a/gcc/testsuite/g++.old-deja/g++.law/parsing9.C b/gcc/testsuite/g++.old-deja/g++.law/parsing9.C index 0cd22fd..b4de052 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/parsing9.C +++ b/gcc/testsuite/g++.old-deja/g++.law/parsing9.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed parsing // From: Jason Merrill <jason@cygnus.com> // Date: Fri, 13 Aug 93 12:49:11 PDT diff --git a/gcc/testsuite/g++.old-deja/g++.law/patches1.C b/gcc/testsuite/g++.old-deja/g++.law/patches1.C index 3108e26..f323963 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/patches1.C +++ b/gcc/testsuite/g++.old-deja/g++.law/patches1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed patches // patches file // From: david.binderman@pmsr.philips.co.uk diff --git a/gcc/testsuite/g++.old-deja/g++.law/pic1.C b/gcc/testsuite/g++.old-deja/g++.law/pic1.C index 818d3d0..561ea24 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/pic1.C +++ b/gcc/testsuite/g++.old-deja/g++.law/pic1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed operators // pic file // Message-Id: <199406132030.NAA23508@dewitt.eecs.berkeley.edu> diff --git a/gcc/testsuite/g++.old-deja/g++.law/profile1.C b/gcc/testsuite/g++.old-deja/g++.law/profile1.C index 3c671a2..ada9fe8 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/profile1.C +++ b/gcc/testsuite/g++.old-deja/g++.law/profile1.C @@ -1,7 +1,6 @@ -// Special g++ Options: -pg +// { dg-do run { xfail m68k-motorola-sysv m88k-motorola-sysv3 mips*-*-* i[3456]86-*-sco3.2v5* } } +// { dg-options "-pg" } // GROUPS passed profiling -// Skip if not native -// excess errors test - XFAIL m68k-motorola-sysv m88k-motorola-sysv3 mips*-*-* i[3456]86-*-sco3.2v5* #include <stdio.h> main() { diff --git a/gcc/testsuite/g++.old-deja/g++.law/refs1.C b/gcc/testsuite/g++.old-deja/g++.law/refs1.C index d53cdb4..066c607 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/refs1.C +++ b/gcc/testsuite/g++.old-deja/g++.law/refs1.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed references // (Message bugs/refs:1) // From: tal@vlsi.cs.caltech.edu diff --git a/gcc/testsuite/g++.old-deja/g++.law/refs2.C b/gcc/testsuite/g++.old-deja/g++.law/refs2.C index b310bf6..74bc972 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/refs2.C +++ b/gcc/testsuite/g++.old-deja/g++.law/refs2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed references int func(int& i) { diff --git a/gcc/testsuite/g++.old-deja/g++.law/refs3.C b/gcc/testsuite/g++.old-deja/g++.law/refs3.C index e77dd7f..7b9a85b 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/refs3.C +++ b/gcc/testsuite/g++.old-deja/g++.law/refs3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed references const int& min(const int& n, const int& m) { diff --git a/gcc/testsuite/g++.old-deja/g++.law/refs4.C b/gcc/testsuite/g++.old-deja/g++.law/refs4.C index 7842436..b87fa69 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/refs4.C +++ b/gcc/testsuite/g++.old-deja/g++.law/refs4.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed references // execution test diff --git a/gcc/testsuite/g++.old-deja/g++.law/scope1.C b/gcc/testsuite/g++.old-deja/g++.law/scope1.C index aa70fde..062fc40 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/scope1.C +++ b/gcc/testsuite/g++.old-deja/g++.law/scope1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed scoping // scoping file // From: kol@world.std.com (Nikolay Yatsenko) diff --git a/gcc/testsuite/g++.old-deja/g++.law/scope2.C b/gcc/testsuite/g++.old-deja/g++.law/scope2.C index d216f4d..13c02c2 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/scope2.C +++ b/gcc/testsuite/g++.old-deja/g++.law/scope2.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed scoping // scoping file // From: svkakkad@cs.utexas.edu (Sheetal V. Kakkad) diff --git a/gcc/testsuite/g++.old-deja/g++.law/scope3.C b/gcc/testsuite/g++.old-deja/g++.law/scope3.C index 0f36e1b..8d53194 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/scope3.C +++ b/gcc/testsuite/g++.old-deja/g++.law/scope3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed scoping // local-class file // From: dcb@us-es.sel.de diff --git a/gcc/testsuite/g++.old-deja/g++.law/scope4.C b/gcc/testsuite/g++.old-deja/g++.law/scope4.C index 1cfb54e..dfa73d3 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/scope4.C +++ b/gcc/testsuite/g++.old-deja/g++.law/scope4.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed scoping // local-class file // From: daniels@sugar.neosoft.com (Brad Daniels) diff --git a/gcc/testsuite/g++.old-deja/g++.law/scope5.C b/gcc/testsuite/g++.old-deja/g++.law/scope5.C index d7bcb63..34446d8 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/scope5.C +++ b/gcc/testsuite/g++.old-deja/g++.law/scope5.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed scoping // local-class file // From: schlaege@methusalix.ert.rwth-aachen.de (Chris Schlaeger H Zivojnovic) diff --git a/gcc/testsuite/g++.old-deja/g++.law/shadow1.C b/gcc/testsuite/g++.old-deja/g++.law/shadow1.C index 5338bea..b24fd73 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/shadow1.C +++ b/gcc/testsuite/g++.old-deja/g++.law/shadow1.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -Wshadow +// { dg-do assemble } +// { dg-options "-Wshadow" } // GROUPS passed shadow-warnings // shadow file // Message-Id: <9211061827.AA03517@harvey> diff --git a/gcc/testsuite/g++.old-deja/g++.law/shadow2.C b/gcc/testsuite/g++.old-deja/g++.law/shadow2.C index 899fe93..46f9dfc 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/shadow2.C +++ b/gcc/testsuite/g++.old-deja/g++.law/shadow2.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -Wshadow +// { dg-do assemble } +// { dg-options "-Wshadow" } // GROUPS passed shadow-warnings // (Message bugs/shadow:2) // From: michael@utex.rni.sub.org (Michael Utech) diff --git a/gcc/testsuite/g++.old-deja/g++.law/static-mem2.C b/gcc/testsuite/g++.old-deja/g++.law/static-mem2.C index 3a4489e..68623be 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/static-mem2.C +++ b/gcc/testsuite/g++.old-deja/g++.law/static-mem2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed static-mem class desc; diff --git a/gcc/testsuite/g++.old-deja/g++.law/static-mem3.C b/gcc/testsuite/g++.old-deja/g++.law/static-mem3.C index 39e4fc2..1c7900b 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/static-mem3.C +++ b/gcc/testsuite/g++.old-deja/g++.law/static-mem3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed static-mem // static-mem file // Message-Id: <9406021639.AA00789@oz.NeXT.COM> diff --git a/gcc/testsuite/g++.old-deja/g++.law/static-mem4.C b/gcc/testsuite/g++.old-deja/g++.law/static-mem4.C index 09e1637..4e61c69 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/static-mem4.C +++ b/gcc/testsuite/g++.old-deja/g++.law/static-mem4.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed static-mem struct test { void test_member() { diff --git a/gcc/testsuite/g++.old-deja/g++.law/static-mem5.C b/gcc/testsuite/g++.old-deja/g++.law/static-mem5.C index 2ce0df1..33b45cb 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/static-mem5.C +++ b/gcc/testsuite/g++.old-deja/g++.law/static-mem5.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -w +// { dg-do assemble } +// { dg-options "-w" } // GROUPS passed static-mem // static-mem file // From: bunch@tazboy.jpl.nasa.gov (Walt Bunch) diff --git a/gcc/testsuite/g++.old-deja/g++.law/template1.C b/gcc/testsuite/g++.old-deja/g++.law/template1.C index bde1537..9b5f56f 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/template1.C +++ b/gcc/testsuite/g++.old-deja/g++.law/template1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed templates class String { diff --git a/gcc/testsuite/g++.old-deja/g++.law/template3.C b/gcc/testsuite/g++.old-deja/g++.law/template3.C index 7523824..271dab0 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/template3.C +++ b/gcc/testsuite/g++.old-deja/g++.law/template3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed templates template< class R, class T1 = R, class T2 = T1 > struct plus diff --git a/gcc/testsuite/g++.old-deja/g++.law/temps1.C b/gcc/testsuite/g++.old-deja/g++.law/temps1.C index aa3e8e8..ea56d24 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/temps1.C +++ b/gcc/testsuite/g++.old-deja/g++.law/temps1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed temps // temps file // Date: Mon, 07 Sep 1992 13:12:28 EDT @@ -15,4 +15,4 @@ struct cookie cookie ( foo * x) { v=x; } }; -cookie cat(&foo("apabepa"));// ERROR - .* +cookie cat(&foo("apabepa"));// { dg-error "" } .* diff --git a/gcc/testsuite/g++.old-deja/g++.law/temps2.C b/gcc/testsuite/g++.old-deja/g++.law/temps2.C index 5fe49e9..b494efd 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/temps2.C +++ b/gcc/testsuite/g++.old-deja/g++.law/temps2.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed temps // temps file // Message-Id: <9212181914.AA05066@sparc1.cnm.us.es> diff --git a/gcc/testsuite/g++.old-deja/g++.law/temps3.C b/gcc/testsuite/g++.old-deja/g++.law/temps3.C index 48e4498..401b006 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/temps3.C +++ b/gcc/testsuite/g++.old-deja/g++.law/temps3.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed temps // temps file // Message-Id: <9308231535.AA19432@geant.cenatls.cena.dgac.fr> diff --git a/gcc/testsuite/g++.old-deja/g++.law/temps4.C b/gcc/testsuite/g++.old-deja/g++.law/temps4.C index f4a799d..3f8c9ed 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/temps4.C +++ b/gcc/testsuite/g++.old-deja/g++.law/temps4.C @@ -1,4 +1,5 @@ -// Special g++ Options: -felide-constructors +// { dg-do run } +// { dg-options "-felide-constructors" } // GROUPS passed temps // temps file // Message-Id: <9311102043.AA22871@ses.com> diff --git a/gcc/testsuite/g++.old-deja/g++.law/temps5.C b/gcc/testsuite/g++.old-deja/g++.law/temps5.C index 4d8b596..e33962e 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/temps5.C +++ b/gcc/testsuite/g++.old-deja/g++.law/temps5.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed temps // temps file // Message-Id: <9311171029.AA00592@mencon> diff --git a/gcc/testsuite/g++.old-deja/g++.law/temps6.C b/gcc/testsuite/g++.old-deja/g++.law/temps6.C index 5290df0..19a12d7 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/temps6.C +++ b/gcc/testsuite/g++.old-deja/g++.law/temps6.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed temps // Date: Tue, 22 Mar 94 12:46:28 +0100 // From: dak@pool.informatik.rwth-aachen.de diff --git a/gcc/testsuite/g++.old-deja/g++.law/temps7.C b/gcc/testsuite/g++.old-deja/g++.law/temps7.C index ddf028e..04bf352 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/temps7.C +++ b/gcc/testsuite/g++.old-deja/g++.law/temps7.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed temps template <class B > diff --git a/gcc/testsuite/g++.old-deja/g++.law/typeck1.C b/gcc/testsuite/g++.old-deja/g++.law/typeck1.C index f0ee773..2b5e230 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/typeck1.C +++ b/gcc/testsuite/g++.old-deja/g++.law/typeck1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed typeck // typeck file // From: vern@daffy.ee.lbl.gov (Vern Paxson) @@ -13,6 +13,6 @@ int test( const foo* f, const bar* b ) { - return f == b;// ERROR - + return f == b;// { dg-error "" } } diff --git a/gcc/testsuite/g++.old-deja/g++.law/typeck2.C b/gcc/testsuite/g++.old-deja/g++.law/typeck2.C index 24f3cb1..e1bb8b5 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/typeck2.C +++ b/gcc/testsuite/g++.old-deja/g++.law/typeck2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed typeck // typeck file // From: Jutta Degener <jutta@cs.tu-berlin.de> @@ -11,6 +11,6 @@ int main() { int * p = new int[10]; int * q = new arr; /* g++ complains, but shouldn't */ - int (* r)[10] = new arr; /* g++ doesn't complain, but should */// ERROR - + int (* r)[10] = new arr; /* g++ doesn't complain, but should */// { dg-error "" } } diff --git a/gcc/testsuite/g++.old-deja/g++.law/typeck3.C b/gcc/testsuite/g++.old-deja/g++.law/typeck3.C index 76c3684..38e3d22 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/typeck3.C +++ b/gcc/testsuite/g++.old-deja/g++.law/typeck3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed typeck // typeck file // From: Dror Caspi <dror@fibronics.co.il> diff --git a/gcc/testsuite/g++.old-deja/g++.law/typeck4.C b/gcc/testsuite/g++.old-deja/g++.law/typeck4.C index 9b510c0..21e2d96 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/typeck4.C +++ b/gcc/testsuite/g++.old-deja/g++.law/typeck4.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed typeck class A { public: @@ -15,7 +15,7 @@ const int& A::operator[]( int i ) void ff( A &anA ) { - int &ani = anA[0];// ERROR - + int &ani = anA[0];// { dg-error "" } ani = 7; } diff --git a/gcc/testsuite/g++.old-deja/g++.law/union1.C b/gcc/testsuite/g++.old-deja/g++.law/union1.C index ce7c3d7..5c97ae7 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/union1.C +++ b/gcc/testsuite/g++.old-deja/g++.law/union1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed unions // anon-union file // From: "Terry R. Coley" <terry@wag.caltech.edu> diff --git a/gcc/testsuite/g++.old-deja/g++.law/union2.C b/gcc/testsuite/g++.old-deja/g++.law/union2.C index 66c2c66..37de9ea 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/union2.C +++ b/gcc/testsuite/g++.old-deja/g++.law/union2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed unions // anon-union file // From: gerlek@dat.cse.ogi.edu (Michael Gerlek) @@ -10,9 +10,9 @@ class A { public: int x; private: - int y; // ERROR - private + int y; // { dg-error "" } private union { - int z; // ERROR - private + int z; // { dg-error "" } private }; }; @@ -20,6 +20,6 @@ void f() { A a; a.x = 0; - a.y = 1;// ERROR - .* - a.z = 2;// ERROR - + a.y = 1;// { dg-error "" } .* + a.z = 2;// { dg-error "" } } diff --git a/gcc/testsuite/g++.old-deja/g++.law/union3.C b/gcc/testsuite/g++.old-deja/g++.law/union3.C index 62e8947..be874339 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/union3.C +++ b/gcc/testsuite/g++.old-deja/g++.law/union3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed unions // anon-union file // From: dcb@us-es.sel.de (David Binderman 3841) @@ -9,5 +9,5 @@ static union { char* uC; private: - int uI;// ERROR - + int uI;// { dg-error "" } }; diff --git a/gcc/testsuite/g++.old-deja/g++.law/union4.C b/gcc/testsuite/g++.old-deja/g++.law/union4.C index 2178697..c500f44 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/union4.C +++ b/gcc/testsuite/g++.old-deja/g++.law/union4.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed unions // anon-union file // From: hossein@veritas.com (Hossein Raassi) @@ -10,4 +10,4 @@ static union { struct SS { int ss; }; -};// ERROR - .* +};// { dg-error "" } .* diff --git a/gcc/testsuite/g++.old-deja/g++.law/unsorted1.C b/gcc/testsuite/g++.old-deja/g++.law/unsorted1.C index eae69e8..c220d99 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/unsorted1.C +++ b/gcc/testsuite/g++.old-deja/g++.law/unsorted1.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -O +// { dg-do assemble } +// { dg-options "-O" } // GROUPS passed unsorted // unsorted.2 file // From: skipnyc!skipsun!skip@fsg.com (Skip Gilbrech) diff --git a/gcc/testsuite/g++.old-deja/g++.law/unsorted2.C b/gcc/testsuite/g++.old-deja/g++.law/unsorted2.C index b3c13a4..17d9fa4 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/unsorted2.C +++ b/gcc/testsuite/g++.old-deja/g++.law/unsorted2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed unsorted // code-gen file // From: klaus@steinitz.mathematik.uni-dortmund.de diff --git a/gcc/testsuite/g++.old-deja/g++.law/vbase1.C b/gcc/testsuite/g++.old-deja/g++.law/vbase1.C index a013c72..4cfe51d 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/vbase1.C +++ b/gcc/testsuite/g++.old-deja/g++.law/vbase1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed vbase // vbase file // From: pino@hubble.eecs.berkeley.edu (Jose Luis Pino) diff --git a/gcc/testsuite/g++.old-deja/g++.law/virtual1.C b/gcc/testsuite/g++.old-deja/g++.law/virtual1.C index 8192273..9cf6d8e 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/virtual1.C +++ b/gcc/testsuite/g++.old-deja/g++.law/virtual1.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -Woverloaded-virtual +// { dg-do assemble } +// { dg-options "-Woverloaded-virtual" } // GROUPS passed virtual-warnings // copy file // From: gfm@mencon.mencon.oz.au (Graham Menhennitt) diff --git a/gcc/testsuite/g++.old-deja/g++.law/virtual2.C b/gcc/testsuite/g++.old-deja/g++.law/virtual2.C index fa9bb69..08a0f94 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/virtual2.C +++ b/gcc/testsuite/g++.old-deja/g++.law/virtual2.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed virtual-functions // Not in g++ bugs snapshot // From: grande@isi.edu (Jim Grande) diff --git a/gcc/testsuite/g++.old-deja/g++.law/virtual3.C b/gcc/testsuite/g++.old-deja/g++.law/virtual3.C index 8c30b76..46fa085 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/virtual3.C +++ b/gcc/testsuite/g++.old-deja/g++.law/virtual3.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed virtual-functions // virtual file // From: allan@ramjet.multinet.DE (Allan Brighton) diff --git a/gcc/testsuite/g++.old-deja/g++.law/virtual4.C b/gcc/testsuite/g++.old-deja/g++.law/virtual4.C index 0254fda..975b6c8 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/virtual4.C +++ b/gcc/testsuite/g++.old-deja/g++.law/virtual4.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed virtual-functions #include <stdio.h> #include <stdlib.h> diff --git a/gcc/testsuite/g++.old-deja/g++.law/visibility1.C b/gcc/testsuite/g++.old-deja/g++.law/visibility1.C index 736c11a..66ce881 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/visibility1.C +++ b/gcc/testsuite/g++.old-deja/g++.law/visibility1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed visibility #include <iostream> diff --git a/gcc/testsuite/g++.old-deja/g++.law/visibility10.C b/gcc/testsuite/g++.old-deja/g++.law/visibility10.C index 7f68af0..6b6e3d3 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/visibility10.C +++ b/gcc/testsuite/g++.old-deja/g++.law/visibility10.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed visibility #include <iostream> @@ -10,7 +10,7 @@ public: }; class deriv : public base { - void base :: f1();// ERROR - .* + void base :: f1();// { dg-error "" } .* }; int main () diff --git a/gcc/testsuite/g++.old-deja/g++.law/visibility11.C b/gcc/testsuite/g++.old-deja/g++.law/visibility11.C index eeda777..051bf33 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/visibility11.C +++ b/gcc/testsuite/g++.old-deja/g++.law/visibility11.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -w +// { dg-do assemble } +// { dg-options "-w" } // GROUPS passed visibility // visibility file // From: Alan Shepherd <a.shepherd@nexor.co.uk> diff --git a/gcc/testsuite/g++.old-deja/g++.law/visibility12.C b/gcc/testsuite/g++.old-deja/g++.law/visibility12.C index 3aa6d6b..4dbb158 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/visibility12.C +++ b/gcc/testsuite/g++.old-deja/g++.law/visibility12.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed visibility // visibility file // From: Mark Rawling <Mark.Rawling@mel.dit.csiro.au> @@ -6,13 +6,13 @@ // Subject: member access rule bug // Message-ID: <9306300528.AA17185@coda.mel.dit.CSIRO.AU> struct a { - int aa; // ERROR - private + int aa; // { dg-error "" } private }; class b : private a { }; class c : public b { - int xx(void) { return (aa); } // aa should be invisible// ERROR - .* + int xx(void) { return (aa); } // aa should be invisible// { dg-error "" } .* }; diff --git a/gcc/testsuite/g++.old-deja/g++.law/visibility13.C b/gcc/testsuite/g++.old-deja/g++.law/visibility13.C index 2a74151..4ea561b 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/visibility13.C +++ b/gcc/testsuite/g++.old-deja/g++.law/visibility13.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed visibility // visibility file // From: dinh@cs.ucla.edu (Dinh Le) @@ -16,7 +16,7 @@ using namespace std; const int ArraySize = 12; template <class Type> -class Array { // ERROR - .struct Array_RC redecl.* +class Array { // { dg-error "" } .struct Array_RC redecl.* friend class Array_RC; public: Array(const Type *ar, int sz) { init(ar,sz); } @@ -65,7 +65,7 @@ void Array<Type>::init(const Type *array, int sz) // --------------- Array_RC.h && Array_RC.cc ---------------- template <class Type> -class Array_RC : public Array<Type> {// ERROR - previous declaration.* +class Array_RC : public Array<Type> {// { dg-error "" } previous declaration.* public: Array_RC(const Type *ar, int sz); Type& operator[](int ix); @@ -76,8 +76,8 @@ Array_RC<Type>::Array_RC(const Type *ar, int sz) : Array<Type>(ar, sz) {} template <class Type> Type &Array_RC<Type>::operator[](int ix) { - assert(ix >= 0 && ix < size);// ERROR - member .size.* - return ia[ix];// ERROR - member .ia.* + assert(ix >= 0 && ix < size);// { dg-error "" } member .size.* + return ia[ix];// { dg-error "" } member .ia.* } // ------------------- Test routine ---------------------- diff --git a/gcc/testsuite/g++.old-deja/g++.law/visibility14.C b/gcc/testsuite/g++.old-deja/g++.law/visibility14.C index 7f2251b..24cfdcc 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/visibility14.C +++ b/gcc/testsuite/g++.old-deja/g++.law/visibility14.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed visibility // visibility file // From: ajp@eng.cam.ac.uk diff --git a/gcc/testsuite/g++.old-deja/g++.law/visibility15.C b/gcc/testsuite/g++.old-deja/g++.law/visibility15.C index 33fdb17..434d7da 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/visibility15.C +++ b/gcc/testsuite/g++.old-deja/g++.law/visibility15.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed visibility // visibility file // From: wpsun4!xinforms!johnjo@uunet.uu.net (John D. Johnson) @@ -10,7 +10,7 @@ class X { private: - void* operator new(size_t) throw(){// ERROR - .* + void* operator new(size_t) throw(){// { dg-error "" } .* printf("Inside private new().\n"); return NULL; } @@ -21,5 +21,5 @@ public: int main(void) { - X* p = new X;// ERROR - .* + X* p = new X;// { dg-error "" } .* } diff --git a/gcc/testsuite/g++.old-deja/g++.law/visibility16.C b/gcc/testsuite/g++.old-deja/g++.law/visibility16.C index 5291d7c..e4b3bf8 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/visibility16.C +++ b/gcc/testsuite/g++.old-deja/g++.law/visibility16.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed visibility // visibility file // From: Marie Trapp <Marie.Trapp@analog.com> @@ -7,7 +7,7 @@ // Message-ID: <9308051553.AA07639@nwd2sun1.analog.com> class A { protected: - int astuff; // ERROR - protected + int astuff; // { dg-error "" } protected A() { astuff = 3; } @@ -17,7 +17,7 @@ class B : public A { int bstuff; public: B( A *p) { - bstuff = p->astuff;// ERROR - .* + bstuff = p->astuff;// { dg-error "" } .* } }; diff --git a/gcc/testsuite/g++.old-deja/g++.law/visibility17.C b/gcc/testsuite/g++.old-deja/g++.law/visibility17.C index 2aa08a0..0afb04b 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/visibility17.C +++ b/gcc/testsuite/g++.old-deja/g++.law/visibility17.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed visibility // visibility file // From: Sandeep Shroff <ss@caere.com> @@ -32,23 +32,23 @@ private: }; Base::Base() -{ // ERROR - private +{ // { dg-error "" } private name_ = std::strcpy(new char[std::strlen(" ") + 1], " "); } Base::Base(char* str) -{ // ERROR - private +{ // { dg-error "" } private if(str != NULL) name_ = std::strcpy(new char[std::strlen(str) + 1], str); } Derived::Derived(int n, char* str) : Base(str) -{// ERROR - .* +{// { dg-error "" } .* num_ = n; } Derived::Derived(int n) : Base() -{// ERROR - .* +{// { dg-error "" } .* num_ = n; } diff --git a/gcc/testsuite/g++.old-deja/g++.law/visibility18.C b/gcc/testsuite/g++.old-deja/g++.law/visibility18.C index a1ec468..cf67c2d 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/visibility18.C +++ b/gcc/testsuite/g++.old-deja/g++.law/visibility18.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed visibility // visibility file // From: cmwang@iis.sinica.edu.tw (Chien-Min Wang) @@ -7,7 +7,7 @@ // Message-ID: <9308061142.AA08533@iiserv> struct T1 { int i; }; -struct T2 { int j; }; // ERROR - private +struct T2 { int j; }; // { dg-error "" } private struct T3 : public T1, private T2 { } x; @@ -15,6 +15,6 @@ struct T3 : public T1, private T2 { int main () { x.i = 1; - x.j = 2; // error: x.j is private// ERROR - .* + x.j = 2; // error: x.j is private// { dg-error "" } .* return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.law/visibility19.C b/gcc/testsuite/g++.old-deja/g++.law/visibility19.C index 82a1dc5..f2bb302 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/visibility19.C +++ b/gcc/testsuite/g++.old-deja/g++.law/visibility19.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed visibility // visibility file // From: mclaugh@tnt.acsys.com (Mark A. McLaughlin) @@ -7,7 +7,7 @@ // Message-ID: <9308252030.AA02352@tnt.acsys.com> class B { protected: - int i; // ERROR - protected + int i; // { dg-error "" } protected }; class D1 : public B { @@ -20,21 +20,21 @@ class D2 : public B { void fr(B* pb, D1* p1, D2* p2) { - pb->i = 1; // illegal// ERROR - .* - p1->i = 2; // illegal// ERROR - .* + pb->i = 1; // illegal// { dg-error "" } .* + p1->i = 2; // illegal// { dg-error "" } .* p2->i = 3; // ok (access through D2) } void D2::mem(B* pb, D1* p1) { - pb->i = 1; // illegal// ERROR - .* - p1->i = 2; // illegal// ERROR - .* + pb->i = 1; // illegal// { dg-error "" } .* + p1->i = 2; // illegal// { dg-error "" } .* i = 3; // ok (access through `this') } void g(B* pb, D1* p1, D2* p2) { - pb->i = 1; // illegal// ERROR - .* - p1->i = 2; // illegal// ERROR - .* - p2->i = 3; // illegal// ERROR - .* + pb->i = 1; // illegal// { dg-error "" } .* + p1->i = 2; // illegal// { dg-error "" } .* + p2->i = 3; // illegal// { dg-error "" } .* } diff --git a/gcc/testsuite/g++.old-deja/g++.law/visibility2.C b/gcc/testsuite/g++.old-deja/g++.law/visibility2.C index 9d038d4..781846f 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/visibility2.C +++ b/gcc/testsuite/g++.old-deja/g++.law/visibility2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed visibility #include <iostream> diff --git a/gcc/testsuite/g++.old-deja/g++.law/visibility20.C b/gcc/testsuite/g++.old-deja/g++.law/visibility20.C index 82ecaee..0560523 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/visibility20.C +++ b/gcc/testsuite/g++.old-deja/g++.law/visibility20.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed visibility // visibility file // From: doug@foxtrot.ccmrc.ucsb.edu (Douglas Scott) @@ -8,7 +8,7 @@ class Base { protected: - void protectedBaseFunction() {} // ERROR - protected + void protectedBaseFunction() {} // { dg-error "" } protected public: Base() {} }; @@ -23,7 +23,7 @@ public: void Derived::noticeThisFunction(Base *b) { - b->protectedBaseFunction(); // ARM says this is not allowed// ERROR - .* + b->protectedBaseFunction(); // ARM says this is not allowed// { dg-error "" } .* // since it is not called on 'this' } @@ -31,6 +31,6 @@ int main() { Base b; Derived d; d.noticeThisFunction(&b); - printf("gpptest run\n");// ERROR - .* + printf("gpptest run\n");// { dg-error "" } .* } diff --git a/gcc/testsuite/g++.old-deja/g++.law/visibility21.C b/gcc/testsuite/g++.old-deja/g++.law/visibility21.C index 8458540..6a57783 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/visibility21.C +++ b/gcc/testsuite/g++.old-deja/g++.law/visibility21.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed visibility // visibility file // From: klamer@mi.el.utwente.nl (Klamer Schutte) @@ -7,11 +7,11 @@ // Message-ID: <9308121003.AA02294@mi.el.utwente.nl> class A { protected: - void foo(); // ERROR - protected + void foo(); // { dg-error "" } protected }; class B : public A { void bar(A &a) - { a.foo(); }// ERROR - .* + { a.foo(); }// { dg-error "" } .* }; diff --git a/gcc/testsuite/g++.old-deja/g++.law/visibility22.C b/gcc/testsuite/g++.old-deja/g++.law/visibility22.C index a03421a..f97ef81 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/visibility22.C +++ b/gcc/testsuite/g++.old-deja/g++.law/visibility22.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed visibility // visibility file // From: Robert Carden <carden@thoth.ics.uci.edu> diff --git a/gcc/testsuite/g++.old-deja/g++.law/visibility24.C b/gcc/testsuite/g++.old-deja/g++.law/visibility24.C index fc22a15..3acd837 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/visibility24.C +++ b/gcc/testsuite/g++.old-deja/g++.law/visibility24.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed visibility // visibility file // From: joe@consolve.com (Joe Shapiro) @@ -14,7 +14,7 @@ template <class T> class A { public: - void Fun() { printf( "Fun fun fun!\n" ); } // ERROR - private + void Fun() { printf( "Fun fun fun!\n" ); } // { dg-error "" } private }; @@ -27,7 +27,7 @@ class B: private A<T> class C { public: - C() { _b.Fun(); }// ERROR - .* + C() { _b.Fun(); }// { dg-error "" } .* private: B<int> _b; diff --git a/gcc/testsuite/g++.old-deja/g++.law/visibility25.C b/gcc/testsuite/g++.old-deja/g++.law/visibility25.C index 56a7df6..167436d 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/visibility25.C +++ b/gcc/testsuite/g++.old-deja/g++.law/visibility25.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed visibility // visibility file // From: gfm@mencon.mencon.oz.au (Graham Menhennitt) diff --git a/gcc/testsuite/g++.old-deja/g++.law/visibility26.C b/gcc/testsuite/g++.old-deja/g++.law/visibility26.C index ba1299d..cfef2df 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/visibility26.C +++ b/gcc/testsuite/g++.old-deja/g++.law/visibility26.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed visibility // visibility file // From: jamshid@ses.com (Jamshid Afshar) diff --git a/gcc/testsuite/g++.old-deja/g++.law/visibility27.C b/gcc/testsuite/g++.old-deja/g++.law/visibility27.C index 4092624..2d41b67 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/visibility27.C +++ b/gcc/testsuite/g++.old-deja/g++.law/visibility27.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed visibility // visibility file // From: jbuck@synopsys.com (Joe Buck) diff --git a/gcc/testsuite/g++.old-deja/g++.law/visibility28.C b/gcc/testsuite/g++.old-deja/g++.law/visibility28.C index 086a18e..b1458e5 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/visibility28.C +++ b/gcc/testsuite/g++.old-deja/g++.law/visibility28.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed visibility extern "C" int printf( const char *, ...); @@ -11,7 +11,7 @@ public: class D : public B { public: virtual ~D() { printf( "D::~D\n"); } - void operator = ( int i) { this->~B(); }// ERROR - D has no ~B part to it + void operator = ( int i) { this->~B(); }// { dg-error "" } D has no ~B part to it }; int diff --git a/gcc/testsuite/g++.old-deja/g++.law/visibility3.C b/gcc/testsuite/g++.old-deja/g++.law/visibility3.C index 1e02a4b..64d64df 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/visibility3.C +++ b/gcc/testsuite/g++.old-deja/g++.law/visibility3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed visibility // visibility file // From: kol@world.std.com (Nikolay Yatsenko) @@ -11,11 +11,11 @@ int x; int main(void) { static int s; - int x; // ERROR - declared + int x; // { dg-error "" } declared extern int g(); struct local { - int g() { return x; } // illegal (non-static x); g++ does not give error// ERROR - + int g() { return x; } // illegal (non-static x); g++ does not give error// { dg-error "" } int h() { return s; } // ok, but g++ give error }; return 0; diff --git a/gcc/testsuite/g++.old-deja/g++.law/visibility4.C b/gcc/testsuite/g++.old-deja/g++.law/visibility4.C index 2d7079e..2a19c25 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/visibility4.C +++ b/gcc/testsuite/g++.old-deja/g++.law/visibility4.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed visibility // visibility file // From: dcb@us-es.sel.de (David Binderman 3841) @@ -8,7 +8,7 @@ class A { public: - int b; // ERROR - private + int b; // { dg-error "" } private }; class C : private A { // NOTE WELL. private, not public @@ -20,6 +20,6 @@ extern "C" int printf( const char *, ...); class E : public C { void f() { - printf( "%d\n", b);// ERROR - .* + printf( "%d\n", b);// { dg-error "" } .* }; }; diff --git a/gcc/testsuite/g++.old-deja/g++.law/visibility5.C b/gcc/testsuite/g++.old-deja/g++.law/visibility5.C index a68e360..d8e73e7 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/visibility5.C +++ b/gcc/testsuite/g++.old-deja/g++.law/visibility5.C @@ -1,10 +1,10 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed visibility class a { private: - a (int i);// ERROR - .* + a (int i);// { dg-error "" } .* public: a (); @@ -13,5 +13,5 @@ public: void test () { a *ap = new a; - a *ap2 = new a (3);// ERROR - .* + a *ap2 = new a (3);// { dg-error "" } .* } diff --git a/gcc/testsuite/g++.old-deja/g++.law/visibility6.C b/gcc/testsuite/g++.old-deja/g++.law/visibility6.C index 7e8b7c7..9274792 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/visibility6.C +++ b/gcc/testsuite/g++.old-deja/g++.law/visibility6.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed visibility // visibility file // From: Rob Hasker <hasker@sparc0a.cs.uiuc.edu> @@ -8,7 +8,7 @@ class Top { public: Top() {} - void val() {} // ERROR - private base class + void val() {} // { dg-error "" } private base class }; class Derived : private Top { @@ -19,5 +19,5 @@ public: class Unrelated { Derived derived; public: - void oops() { derived.val(); }// ERROR - .* + void oops() { derived.val(); }// { dg-error "" } .* }; diff --git a/gcc/testsuite/g++.old-deja/g++.law/visibility7.C b/gcc/testsuite/g++.old-deja/g++.law/visibility7.C index ec7947c..f271fbc 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/visibility7.C +++ b/gcc/testsuite/g++.old-deja/g++.law/visibility7.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed visibility // visibility file // From: Gordon Joly <G.Joly@cs.ucl.ac.uk> @@ -16,9 +16,9 @@ class A { virtual ~A() {} virtual void Number(int c) - { number = c; } // ERROR - private + { number = c; } // { dg-error "" } private virtual int Number() - { return number; } // ERROR - private + { return number; } // { dg-error "" } private }; class B : private A { @@ -53,9 +53,9 @@ class C { // and they should not be able to do so // virtual void setBValue(int i) - { if (bobject) bobject->Number(i); }// ERROR - .* + { if (bobject) bobject->Number(i); }// { dg-error "" } .* virtual int getBValue() - { if (bobject) { return bobject->Number(); } return 0; }// ERROR - .* + { if (bobject) { return bobject->Number(); } return 0; }// { dg-error "" } .* }; diff --git a/gcc/testsuite/g++.old-deja/g++.law/visibility8.C b/gcc/testsuite/g++.old-deja/g++.law/visibility8.C index 8b36e80..17a3cf8 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/visibility8.C +++ b/gcc/testsuite/g++.old-deja/g++.law/visibility8.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed visibility // visibility file // From: roland@jts.com (Roland Knight ) @@ -7,7 +7,7 @@ // Message-ID: <m0nof3E-0021ifC@jts.com class t1 { protected: - int a; // ERROR - protected + int a; // { dg-error "" } protected }; @@ -23,4 +23,4 @@ public: }; -int t3::ttt() { return a; }// ERROR - .* +int t3::ttt() { return a; }// { dg-error "" } .* diff --git a/gcc/testsuite/g++.old-deja/g++.law/visibility9.C b/gcc/testsuite/g++.old-deja/g++.law/visibility9.C index 4b0ab33..05e7a22 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/visibility9.C +++ b/gcc/testsuite/g++.old-deja/g++.law/visibility9.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed visibility // visibility file // rom: roland@jts.com (Roland Knight ) @@ -8,7 +8,7 @@ class A { protected: - int a; // ERROR - protected + int a; // { dg-error "" } protected }; class B : public A { @@ -18,5 +18,5 @@ public: void B::f1(A* pa) { - pa->a = 1; // illegal but allowed by gcc// ERROR - .* + pa->a = 1; // illegal but allowed by gcc// { dg-error "" } .* } diff --git a/gcc/testsuite/g++.old-deja/g++.law/vtable1.C b/gcc/testsuite/g++.old-deja/g++.law/vtable1.C index 32a546a..a4c1ce9 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/vtable1.C +++ b/gcc/testsuite/g++.old-deja/g++.law/vtable1.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -w +// { dg-do assemble } +// { dg-options "-w" } // GROUPS passed vtable // vtable file // From: mrs@cygnus.com (Mike Stump) diff --git a/gcc/testsuite/g++.old-deja/g++.law/vtable2.C b/gcc/testsuite/g++.old-deja/g++.law/vtable2.C index 15b31e4..fcd3a65 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/vtable2.C +++ b/gcc/testsuite/g++.old-deja/g++.law/vtable2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed vtable struct C1 { diff --git a/gcc/testsuite/g++.old-deja/g++.law/vtable3.C b/gcc/testsuite/g++.old-deja/g++.law/vtable3.C index 4e0e0b0..fc83717 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/vtable3.C +++ b/gcc/testsuite/g++.old-deja/g++.law/vtable3.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed vtable // vtable file // From: Pete Bevin <pete@deng.icl.co.uk> diff --git a/gcc/testsuite/g++.old-deja/g++.law/weak.C b/gcc/testsuite/g++.old-deja/g++.law/weak.C index 5937979..a40350a 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/weak.C +++ b/gcc/testsuite/g++.old-deja/g++.law/weak.C @@ -1,7 +1,6 @@ +// { dg-do link { target i?86-*-linux* } } +// { dg-options "-static" } // Bug: g++ fails to instantiate operator<<. -// Build don't run: -// Special g++ Options: -static -// Skip if not target: i?86-*-linux* // libc-5.4.xx has __IO_putc in its static C library, which can conflict // with the copy of __IO_putc in the libstdc++ library built by egcs. diff --git a/gcc/testsuite/g++.old-deja/g++.martin/access1.C b/gcc/testsuite/g++.old-deja/g++.martin/access1.C index a4e0f63..9927b71 100644 --- a/gcc/testsuite/g++.old-deja/g++.martin/access1.C +++ b/gcc/testsuite/g++.old-deja/g++.martin/access1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } class A{ public: enum Foo{f1,f2}; diff --git a/gcc/testsuite/g++.old-deja/g++.martin/ambig1.C b/gcc/testsuite/g++.old-deja/g++.martin/ambig1.C index 9886991..1ccc217 100644 --- a/gcc/testsuite/g++.old-deja/g++.martin/ambig1.C +++ b/gcc/testsuite/g++.old-deja/g++.martin/ambig1.C @@ -1,13 +1,13 @@ -//Build don't link: +// { dg-do assemble } //Based on a report by Bill Currie <bcurrie@tssc.co.nz> struct foo { protected: - int x; // ERROR - candidate + int x; // { dg-error "" } candidate }; struct bar { public: - int x(); // ERROR - candidate + int x(); // { dg-error "" } candidate }; struct foobar: public foo, public bar { @@ -18,5 +18,5 @@ int func(int); foobar::foobar() { - func(x); // ERROR - ambiguous member access + func(x); // { dg-error "" } ambiguous member access } diff --git a/gcc/testsuite/g++.old-deja/g++.martin/bitset1.C b/gcc/testsuite/g++.old-deja/g++.martin/bitset1.C index 08adac9..c8be0bf 100644 --- a/gcc/testsuite/g++.old-deja/g++.martin/bitset1.C +++ b/gcc/testsuite/g++.old-deja/g++.martin/bitset1.C @@ -1,3 +1,4 @@ +// { dg-do run } // Origin: Jeff Donner <jdonner@schedsys.com> #include <bitset> diff --git a/gcc/testsuite/g++.old-deja/g++.martin/conv1.C b/gcc/testsuite/g++.old-deja/g++.martin/conv1.C index 0227800..552e47b 100644 --- a/gcc/testsuite/g++.old-deja/g++.martin/conv1.C +++ b/gcc/testsuite/g++.old-deja/g++.martin/conv1.C @@ -1,3 +1,4 @@ +// { dg-do run } struct S{ operator bool() { diff --git a/gcc/testsuite/g++.old-deja/g++.martin/crash1.C b/gcc/testsuite/g++.old-deja/g++.martin/crash1.C index dd165b6..5a81d7e 100644 --- a/gcc/testsuite/g++.old-deja/g++.martin/crash1.C +++ b/gcc/testsuite/g++.old-deja/g++.martin/crash1.C @@ -1,7 +1,7 @@ -// Build don't link: +// { dg-do assemble } int i = 4; struct S{ - char c[i]; // ERROR - size not constant + char c[i]; // { dg-error "" } size not constant int h; int foo(){ return h; diff --git a/gcc/testsuite/g++.old-deja/g++.martin/eval1.C b/gcc/testsuite/g++.old-deja/g++.martin/eval1.C index ad7f2e4..e3eb3d6 100644 --- a/gcc/testsuite/g++.old-deja/g++.martin/eval1.C +++ b/gcc/testsuite/g++.old-deja/g++.martin/eval1.C @@ -1,3 +1,4 @@ +// { dg-do run } // Postfix expression must be evaluated even if accessing a static member. struct S diff --git a/gcc/testsuite/g++.old-deja/g++.martin/lookup1.C b/gcc/testsuite/g++.old-deja/g++.martin/lookup1.C index d45a02e..cb5eb07 100644 --- a/gcc/testsuite/g++.old-deja/g++.martin/lookup1.C +++ b/gcc/testsuite/g++.old-deja/g++.martin/lookup1.C @@ -1,4 +1,4 @@ -//Build don't link: +// { dg-do assemble } //In the base class list, the context of the current is used //reported by Stephen Vavasis <vavasis@CS.Cornell.EDU> diff --git a/gcc/testsuite/g++.old-deja/g++.martin/new1.C b/gcc/testsuite/g++.old-deja/g++.martin/new1.C index 9e37be8..c795165 100644 --- a/gcc/testsuite/g++.old-deja/g++.martin/new1.C +++ b/gcc/testsuite/g++.old-deja/g++.martin/new1.C @@ -1,3 +1,4 @@ +// { dg-do run } //Lifetime of temporaries: //egcs 2.92 performs cleanup for temporaries inside new expressions //after the new is complete, not at the end of the full expression. diff --git a/gcc/testsuite/g++.old-deja/g++.martin/overload1.C b/gcc/testsuite/g++.old-deja/g++.martin/overload1.C index 8464fba..782c8bf 100644 --- a/gcc/testsuite/g++.old-deja/g++.martin/overload1.C +++ b/gcc/testsuite/g++.old-deja/g++.martin/overload1.C @@ -1,3 +1,4 @@ +// { dg-do run } //Overload resolution should consider both declarations of func identically. struct S{}; diff --git a/gcc/testsuite/g++.old-deja/g++.martin/pmf1.C b/gcc/testsuite/g++.old-deja/g++.martin/pmf1.C index 5c6bb54..2b5aa64 100644 --- a/gcc/testsuite/g++.old-deja/g++.martin/pmf1.C +++ b/gcc/testsuite/g++.old-deja/g++.martin/pmf1.C @@ -1,3 +1,4 @@ +// { dg-do run } // Based on a test case by Andrew Bell <andrew.bell@bigfoot.com> // Check for pointer-to-virtual-function calls on // bases without virtual functions. diff --git a/gcc/testsuite/g++.old-deja/g++.martin/pmf2.C b/gcc/testsuite/g++.old-deja/g++.martin/pmf2.C index fea7ebf..e52ce9f 100644 --- a/gcc/testsuite/g++.old-deja/g++.martin/pmf2.C +++ b/gcc/testsuite/g++.old-deja/g++.martin/pmf2.C @@ -1,4 +1,5 @@ -// Special g++ Options: -Wno-pmf-conversions +// { dg-do run } +// { dg-options "-Wno-pmf-conversions" } // Test conversion of pointers to virtual member functions to // pointers to non-member functions. diff --git a/gcc/testsuite/g++.old-deja/g++.martin/pure1.C b/gcc/testsuite/g++.old-deja/g++.martin/pure1.C index 2bb240a..1de5afe 100644 --- a/gcc/testsuite/g++.old-deja/g++.martin/pure1.C +++ b/gcc/testsuite/g++.old-deja/g++.martin/pure1.C @@ -1,8 +1,8 @@ -// Build don't link: +// { dg-do assemble } class A { public: virtual void f(void) = 0; // pure virtual function. - A() {f();} // ERROR - called in a constructor - ~A() {f();} // ERROR - called in a destructor + A() {f();} // { dg-error "" } called in a constructor + ~A() {f();} // { dg-error "" } called in a destructor }; diff --git a/gcc/testsuite/g++.old-deja/g++.martin/sts_conv.C b/gcc/testsuite/g++.old-deja/g++.martin/sts_conv.C index 7717561..93cad83 100644 --- a/gcc/testsuite/g++.old-deja/g++.martin/sts_conv.C +++ b/gcc/testsuite/g++.old-deja/g++.martin/sts_conv.C @@ -1,3 +1,4 @@ +// { dg-do run } // ecgs-bugs 1999-02-22 14:21, Stefan Schwarzer // sts@ica1.uni-stuttgart.de // this code should compile quietly @@ -14,6 +15,6 @@ private: int main(){ CArray a; - double *pa = a + 1; // gets bogus error - should convert + double *pa = a + 1; // { dg-bogus "" } should convert return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.martin/sts_iarr.C b/gcc/testsuite/g++.old-deja/g++.martin/sts_iarr.C index a2b63b8..77ae5ae 100644 --- a/gcc/testsuite/g++.old-deja/g++.martin/sts_iarr.C +++ b/gcc/testsuite/g++.old-deja/g++.martin/sts_iarr.C @@ -1,3 +1,4 @@ +// { dg-do run } // egcs-bugs 999-02-22 14:26 Stefan Schwarzer // sts@ica1.uni-stuttgart.de // should compile and return 0 diff --git a/gcc/testsuite/g++.old-deja/g++.martin/sts_partial.C b/gcc/testsuite/g++.old-deja/g++.martin/sts_partial.C index 382214c..00b58e6 100644 --- a/gcc/testsuite/g++.old-deja/g++.martin/sts_partial.C +++ b/gcc/testsuite/g++.old-deja/g++.martin/sts_partial.C @@ -1,3 +1,4 @@ +// { dg-do run } // ecgs-bugs 1999-02-22 14:26 Stefan Schwarzer // sts@ica1.uni-stuttgart.de // partial ordering problem in egcs <= 1.1.1 diff --git a/gcc/testsuite/g++.old-deja/g++.martin/sts_vectini.C b/gcc/testsuite/g++.old-deja/g++.martin/sts_vectini.C index f470157..b8ab353 100644 --- a/gcc/testsuite/g++.old-deja/g++.martin/sts_vectini.C +++ b/gcc/testsuite/g++.old-deja/g++.martin/sts_vectini.C @@ -1,4 +1,5 @@ -// Special g++ Options: -O2 -w +// { dg-do run } +// { dg-options "-O2 -w" } // egcs-bugs 1999-02-22 14:24 Stefan Schwarzer // sts@ica1.uni-stuttgart.de // optimizer problem in egcs <= 1.1.1 diff --git a/gcc/testsuite/g++.old-deja/g++.martin/typedef1.C b/gcc/testsuite/g++.old-deja/g++.martin/typedef1.C index b1561f2..990c0bb 100644 --- a/gcc/testsuite/g++.old-deja/g++.martin/typedef1.C +++ b/gcc/testsuite/g++.old-deja/g++.martin/typedef1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 1999 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 31 Mar 1999 <nathan@acm.org> diff --git a/gcc/testsuite/g++.old-deja/g++.martin/typedef2.C b/gcc/testsuite/g++.old-deja/g++.martin/typedef2.C index b9bbcb5..be1bbcb 100644 --- a/gcc/testsuite/g++.old-deja/g++.martin/typedef2.C +++ b/gcc/testsuite/g++.old-deja/g++.martin/typedef2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Testcase from Alexander Zvyagin <zvyagin@mx.ihep.su> // Check implicit conversion from string constants into typedefs diff --git a/gcc/testsuite/g++.old-deja/g++.mike/align1.C b/gcc/testsuite/g++.old-deja/g++.mike/align1.C index df6faa6..027a908 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/align1.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/align1.C @@ -1,3 +1,4 @@ +// { dg-do run } // Check to make sure we align virtual base classes properly class eel_base { diff --git a/gcc/testsuite/g++.old-deja/g++.mike/align2.C b/gcc/testsuite/g++.old-deja/g++.mike/align2.C index 758e43c..ef39bb1 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/align2.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/align2.C @@ -1,3 +1,4 @@ +// { dg-do run } class Foo { }; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/ambig1.C b/gcc/testsuite/g++.old-deja/g++.mike/ambig1.C index 97200e2..95c5eb7 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/ambig1.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/ambig1.C @@ -1,3 +1,4 @@ +// { dg-do assemble } extern "C" int printf(const char *, ...); struct VB { @@ -20,7 +21,7 @@ class lM : public M { class rM : public M { }; -class D : public lM, rM { // ERROR - ambiguous function +class D : public lM, rM { // { dg-error "" } ambiguous function } d; int main() { diff --git a/gcc/testsuite/g++.old-deja/g++.mike/asm1.C b/gcc/testsuite/g++.old-deja/g++.mike/asm1.C index f6c4fe5..907e558 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/asm1.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/asm1.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: +// { dg-do assemble } +// { dg-options "" } struct A { static void foo() asm("_my_routine"); diff --git a/gcc/testsuite/g++.old-deja/g++.mike/asm2.C b/gcc/testsuite/g++.old-deja/g++.mike/asm2.C index b5f11e1..62ae862 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/asm2.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/asm2.C @@ -1,3 +1,4 @@ +// { dg-do run } // Compile with -S, there should be no references to // LTRAMP in the output. diff --git a/gcc/testsuite/g++.old-deja/g++.mike/bool1.C b/gcc/testsuite/g++.old-deja/g++.mike/bool1.C index c8ff0e8..baa4196 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/bool1.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/bool1.C @@ -1,6 +1,6 @@ +// { dg-do assemble } // bool test case -// Build don't link: void foo(int i) { foo (true); diff --git a/gcc/testsuite/g++.old-deja/g++.mike/bool2.C b/gcc/testsuite/g++.old-deja/g++.mike/bool2.C index ce2a1f8..4bf13a2 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/bool2.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/bool2.C @@ -1,4 +1,5 @@ -// Special g++ Options: +// { dg-do run } +// { dg-options "" } class A { public: operator bool () { diff --git a/gcc/testsuite/g++.old-deja/g++.mike/bool4.C b/gcc/testsuite/g++.old-deja/g++.mike/bool4.C index 96e4a6c2..3d119e5 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/bool4.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/bool4.C @@ -1,3 +1,3 @@ -// Build don't link: +// { dg-do assemble } void foo(bool arg = (1==0)) {} diff --git a/gcc/testsuite/g++.old-deja/g++.mike/conv1.C b/gcc/testsuite/g++.old-deja/g++.mike/conv1.C index 468bc42..b6f2272 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/conv1.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/conv1.C @@ -1,3 +1,4 @@ +// { dg-do run } enum E { C }; E foo() { diff --git a/gcc/testsuite/g++.old-deja/g++.mike/debug1.C b/gcc/testsuite/g++.old-deja/g++.mike/debug1.C index 9f7bc39..6c477d3 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/debug1.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/debug1.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -g -O -fkeep-inline-functions +// { dg-do assemble } +// { dg-options "-g -O -fkeep-inline-functions" } class c { public: diff --git a/gcc/testsuite/g++.old-deja/g++.mike/dyncast1.C b/gcc/testsuite/g++.old-deja/g++.mike/dyncast1.C index e105c45..8764acdd 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/dyncast1.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/dyncast1.C @@ -1,5 +1,5 @@ -// Special g++ Options: -fexceptions -w -// excess errors test - XFAIL sparc64-*-elf arm-*-pe +// { dg-do run { xfail sparc64-*-elf arm-*-pe } } +// { dg-options "-fexceptions -w" } #include <typeinfo> diff --git a/gcc/testsuite/g++.old-deja/g++.mike/dyncast2.C b/gcc/testsuite/g++.old-deja/g++.mike/dyncast2.C index c5db5df..ec737d6 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/dyncast2.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/dyncast2.C @@ -1,5 +1,5 @@ -// Special g++ Options: -fexceptions -w -// excess errors test - XFAIL sparc64-*-elf arm-*-pe +// { dg-do run { xfail sparc64-*-elf arm-*-pe } } +// { dg-options "-fexceptions -w" } // Ensure reference handling works. diff --git a/gcc/testsuite/g++.old-deja/g++.mike/dyncast3.C b/gcc/testsuite/g++.old-deja/g++.mike/dyncast3.C index 604382c..662a37e 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/dyncast3.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/dyncast3.C @@ -1,5 +1,5 @@ -// Special g++ Options: -fexceptions -w -// excess errors test - XFAIL sparc64-*-elf arm-*-pe**-* +// { dg-do run { xfail sparc64-*-elf arm-*-pe**-* } } +// { dg-options "-fexceptions -w" } // Ensure that the return type of dynamic_cast is the real type. struct B { diff --git a/gcc/testsuite/g++.old-deja/g++.mike/dyncast4.C b/gcc/testsuite/g++.old-deja/g++.mike/dyncast4.C index 43cb6ef..75e9771 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/dyncast4.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/dyncast4.C @@ -1,4 +1,5 @@ +// { dg-do assemble } int main() { int* d; - dynamic_cast<void*>(d); // ERROR - + dynamic_cast<void*>(d); // { dg-error "" } } diff --git a/gcc/testsuite/g++.old-deja/g++.mike/dyncast5.C b/gcc/testsuite/g++.old-deja/g++.mike/dyncast5.C index f46d81e..b6adac7 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/dyncast5.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/dyncast5.C @@ -1,3 +1,4 @@ +// { dg-do run } #include <stddef.h> void *p; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/dyncast6.C b/gcc/testsuite/g++.old-deja/g++.mike/dyncast6.C index 546561d..60065a4 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/dyncast6.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/dyncast6.C @@ -1,3 +1,4 @@ +// { dg-do assemble } #include <typeinfo> class A { @@ -8,5 +9,5 @@ public: class B : public A { }; void x (A& a) { - const B& b1 = dynamic_cast<B&>((const A&)a); // ERROR - opps + const B& b1 = dynamic_cast<B&>((const A&)a); // { dg-error "" } opps } diff --git a/gcc/testsuite/g++.old-deja/g++.mike/dyncast7.C b/gcc/testsuite/g++.old-deja/g++.mike/dyncast7.C index b1a55a4..33e3fa7 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/dyncast7.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/dyncast7.C @@ -1,4 +1,5 @@ -// Special g++ Options: -fexceptions +// { dg-do run } +// { dg-options "-fexceptions" } #include <typeinfo> #include <stdexcept> diff --git a/gcc/testsuite/g++.old-deja/g++.mike/dyncast8.C b/gcc/testsuite/g++.old-deja/g++.mike/dyncast8.C index 5addfe0..65542b8 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/dyncast8.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/dyncast8.C @@ -1,3 +1,4 @@ +// { dg-do run } #include <typeinfo> class Base diff --git a/gcc/testsuite/g++.old-deja/g++.mike/dyncast9.C b/gcc/testsuite/g++.old-deja/g++.mike/dyncast9.C index 23db8c9..f2b9990 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/dyncast9.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/dyncast9.C @@ -1,3 +1,4 @@ +// { dg-do run } class S1 { int i; }; class S2 { int i; }; class VB { diff --git a/gcc/testsuite/g++.old-deja/g++.mike/eh1.C b/gcc/testsuite/g++.old-deja/g++.mike/eh1.C index 5e52f7d..8105107 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/eh1.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/eh1.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -fexceptions -O -S +// { dg-do assemble } +// { dg-options "-fexceptions -O -S" } extern "C" int printf (const char *, ...); extern "C" int atoi (const char *); diff --git a/gcc/testsuite/g++.old-deja/g++.mike/eh10.C b/gcc/testsuite/g++.old-deja/g++.mike/eh10.C index 20d9d67..a38e2eb 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/eh10.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/eh10.C @@ -1,5 +1,5 @@ -// Special g++ Options: -fexceptions -// excess errors test - XFAIL sparc64-*-elf arm-*-pe +// { dg-do run { xfail sparc64-*-elf arm-*-pe } } +// { dg-options "-fexceptions" } void foo() { int i; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/eh11.C b/gcc/testsuite/g++.old-deja/g++.mike/eh11.C index 781521f8f..8042d64 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/eh11.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/eh11.C @@ -1,5 +1,5 @@ -// Special g++ Options: -fexceptions -// Build don't link: +// { dg-do assemble } +// { dg-options "-fexceptions" } struct A { ~A(); diff --git a/gcc/testsuite/g++.old-deja/g++.mike/eh12.C b/gcc/testsuite/g++.old-deja/g++.mike/eh12.C index 2f004ef..8ec2998 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/eh12.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/eh12.C @@ -1,5 +1,5 @@ -// Special g++ Options: -fexceptions -// excess errors test - XFAIL sparc64-*-elf arm-*-pe +// { dg-do run { xfail sparc64-*-elf arm-*-pe } } +// { dg-options "-fexceptions" } class MyError { }; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/eh13.C b/gcc/testsuite/g++.old-deja/g++.mike/eh13.C index defe418..bac5686 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/eh13.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/eh13.C @@ -1,5 +1,5 @@ -// Special g++ Options: -fexceptions -// excess errors test - XFAIL arm-*-pe +// { dg-do run { xfail arm-*-pe } } +// { dg-options "-fexceptions" } #include <string> diff --git a/gcc/testsuite/g++.old-deja/g++.mike/eh14.C b/gcc/testsuite/g++.old-deja/g++.mike/eh14.C index 6d79e1a..2e788fa 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/eh14.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/eh14.C @@ -1,5 +1,5 @@ -// Special g++ Options: -fexceptions -// excess errors test - XFAIL sparc64-*-elf arm-*-pe +// { dg-do run { xfail sparc64-*-elf arm-*-pe } } +// { dg-options "-fexceptions" } class arghh { public: diff --git a/gcc/testsuite/g++.old-deja/g++.mike/eh15.C b/gcc/testsuite/g++.old-deja/g++.mike/eh15.C index 9ed673f..4418f16 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/eh15.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/eh15.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -fexceptions +// { dg-do assemble } +// { dg-options "-fexceptions" } struct A { A() throw (int); diff --git a/gcc/testsuite/g++.old-deja/g++.mike/eh16.C b/gcc/testsuite/g++.old-deja/g++.mike/eh16.C index b64e91d..829bdf2 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/eh16.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/eh16.C @@ -1,5 +1,5 @@ -// Special g++ Options: -fexceptions -// excess errors test - XFAIL sparc64-*-elf arm-*-pe +// { dg-do run { xfail sparc64-*-elf arm-*-pe } } +// { dg-options "-fexceptions" } int err = 1; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/eh17.C b/gcc/testsuite/g++.old-deja/g++.mike/eh17.C index c7beff0..c96c344 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/eh17.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/eh17.C @@ -1,5 +1,5 @@ -// Special g++ Options: -fexceptions -// excess errors test - XFAIL sparc64-*-elf arm-*-pe +// { dg-do run { xfail sparc64-*-elf arm-*-pe } } +// { dg-options "-fexceptions" } int err = 1; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/eh18.C b/gcc/testsuite/g++.old-deja/g++.mike/eh18.C index 315a5a9..02e6545 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/eh18.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/eh18.C @@ -1,5 +1,5 @@ -// Special g++ Options: -fexceptions -// excess errors test - XFAIL sparc64-*-elf arm-*-pe +// { dg-do run { xfail sparc64-*-elf arm-*-pe } } +// { dg-options "-fexceptions" } class VB { public: diff --git a/gcc/testsuite/g++.old-deja/g++.mike/eh19.C b/gcc/testsuite/g++.old-deja/g++.mike/eh19.C index 6e4fe15..bbd668f 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/eh19.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/eh19.C @@ -1,5 +1,5 @@ -// Special g++ Options: -fexceptions -// Build don't link: +// { dg-do assemble } +// { dg-options "-fexceptions" } class test1 { public: diff --git a/gcc/testsuite/g++.old-deja/g++.mike/eh2.C b/gcc/testsuite/g++.old-deja/g++.mike/eh2.C index a3397fa..0a08790 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/eh2.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/eh2.C @@ -1,5 +1,5 @@ -// Special g++ Options: -fexceptions -// excess errors test - XFAIL sparc64-*-elf arm-*-pe +// { dg-do run { xfail sparc64-*-elf arm-*-pe } } +// { dg-options "-fexceptions" } #include <cstdlib> #include <iostream> diff --git a/gcc/testsuite/g++.old-deja/g++.mike/eh20.C b/gcc/testsuite/g++.old-deja/g++.mike/eh20.C index 10535bb..ad29dba 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/eh20.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/eh20.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -fexceptions -Wall +// { dg-do assemble } +// { dg-options "-fexceptions -Wall" } int main() { diff --git a/gcc/testsuite/g++.old-deja/g++.mike/eh21.C b/gcc/testsuite/g++.old-deja/g++.mike/eh21.C index 9a38bc8..ac74fa3 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/eh21.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/eh21.C @@ -1,5 +1,5 @@ -// Special g++ Options: -fexceptions -// excess errors test - XFAIL sparc64-*-elf arm-*-pe +// { dg-do run { xfail sparc64-*-elf arm-*-pe } } +// { dg-options "-fexceptions" } int main () { try { diff --git a/gcc/testsuite/g++.old-deja/g++.mike/eh23.C b/gcc/testsuite/g++.old-deja/g++.mike/eh23.C index edbd5e6..da2ac0e 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/eh23.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/eh23.C @@ -1,5 +1,5 @@ -// Special g++ Options: -fexceptions -// excess errors test - XFAIL sparc64-*-elf arm-*-pe +// { dg-do run { xfail sparc64-*-elf arm-*-pe } } +// { dg-options "-fexceptions" } #include <exception> #include <stdlib.h> diff --git a/gcc/testsuite/g++.old-deja/g++.mike/eh24.C b/gcc/testsuite/g++.old-deja/g++.mike/eh24.C index d371790..829819b 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/eh24.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/eh24.C @@ -1,5 +1,5 @@ -// Special g++ Options: -fexceptions -// excess errors test - XFAIL sparc64-*-elf arm-*-pe +// { dg-do run { xfail sparc64-*-elf arm-*-pe } } +// { dg-options "-fexceptions" } int fail = 0; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/eh25.C b/gcc/testsuite/g++.old-deja/g++.mike/eh25.C index bc7b1ce..fb492f7 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/eh25.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/eh25.C @@ -1,5 +1,5 @@ -// Special g++ Options: -fexceptions -// excess errors test - XFAIL sparc64-*-elf arm-*-pe +// { dg-do run { xfail sparc64-*-elf arm-*-pe } } +// { dg-options "-fexceptions" } #include <exception> #include <stdlib.h> diff --git a/gcc/testsuite/g++.old-deja/g++.mike/eh26.C b/gcc/testsuite/g++.old-deja/g++.mike/eh26.C index b6dadfa..d0d65da 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/eh26.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/eh26.C @@ -1,5 +1,5 @@ -// Special g++ Options: -fexceptions -// excess errors test - XFAIL sparc64-*-elf arm-*-pe +// { dg-do run { xfail sparc64-*-elf arm-*-pe } } +// { dg-options "-fexceptions" } class MyExceptionHandler { }; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/eh27.C b/gcc/testsuite/g++.old-deja/g++.mike/eh27.C index 41bc9a6..8be08da 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/eh27.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/eh27.C @@ -1,5 +1,5 @@ -// Special g++ Options: -fexceptions -// excess errors test - XFAIL sparc64-*-elf arm-*-pe +// { dg-do run { xfail sparc64-*-elf arm-*-pe } } +// { dg-options "-fexceptions" } #include <typeinfo> diff --git a/gcc/testsuite/g++.old-deja/g++.mike/eh28.C b/gcc/testsuite/g++.old-deja/g++.mike/eh28.C index c72d69d..57cab11 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/eh28.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/eh28.C @@ -1,5 +1,5 @@ -// Special g++ Options: -fexceptions -// excess errors test - XFAIL sparc64-*-elf arm-*-pe +// { dg-do run { xfail sparc64-*-elf arm-*-pe } } +// { dg-options "-fexceptions" } #include <typeinfo> diff --git a/gcc/testsuite/g++.old-deja/g++.mike/eh29.C b/gcc/testsuite/g++.old-deja/g++.mike/eh29.C index ad78830..892e959 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/eh29.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/eh29.C @@ -1,5 +1,5 @@ -// Special g++ Options: -fexceptions -// excess errors test - XFAIL sparc64-*-elf arm-*-pe +// { dg-do run { xfail sparc64-*-elf arm-*-pe } } +// { dg-options "-fexceptions" } int count; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/eh3.C b/gcc/testsuite/g++.old-deja/g++.mike/eh3.C index 6c60297..8c9ddb4 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/eh3.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/eh3.C @@ -1,5 +1,5 @@ -// Special g++ Options: -fexceptions -// excess errors test - XFAIL sparc64-*-elf arm-*-pe +// { dg-do run { xfail sparc64-*-elf arm-*-pe } } +// { dg-options "-fexceptions" } class foo { public: diff --git a/gcc/testsuite/g++.old-deja/g++.mike/eh30.C b/gcc/testsuite/g++.old-deja/g++.mike/eh30.C index 61a30c8..8da682c 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/eh30.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/eh30.C @@ -1,5 +1,4 @@ -// Build don't link: -// Skip if not native -// Special g++ Options: -fexceptions -fPIC -S +// { dg-do assemble { target native } } +// { dg-options "-fexceptions -fPIC -S" } main() { throw 1; } diff --git a/gcc/testsuite/g++.old-deja/g++.mike/eh31.C b/gcc/testsuite/g++.old-deja/g++.mike/eh31.C index 717bb8c..150d66b 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/eh31.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/eh31.C @@ -1,5 +1,5 @@ -// Special g++ Options: -fexceptions -// excess errors test - XFAIL sparc64-*-elf arm-*-pe +// { dg-do run { xfail sparc64-*-elf arm-*-pe } } +// { dg-options "-fexceptions" } int count; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/eh32.C b/gcc/testsuite/g++.old-deja/g++.mike/eh32.C index 12d601c..53822c7 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/eh32.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/eh32.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -fexceptions +// { dg-do assemble } +// { dg-options "-fexceptions" } class Base { public: diff --git a/gcc/testsuite/g++.old-deja/g++.mike/eh33.C b/gcc/testsuite/g++.old-deja/g++.mike/eh33.C index ef57499..b679991 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/eh33.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/eh33.C @@ -1,5 +1,5 @@ -// Special g++ Options: -fexceptions -// excess errors test - XFAIL sparc64-*-elf z8k-*-* arm-*-pe +// { dg-do run { xfail sparc64-*-elf z8k-*-* arm-*-pe } } +// { dg-options "-fexceptions" } #include <exception> diff --git a/gcc/testsuite/g++.old-deja/g++.mike/eh34.C b/gcc/testsuite/g++.old-deja/g++.mike/eh34.C index e33ca66..68fa673 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/eh34.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/eh34.C @@ -1,5 +1,5 @@ -// Special g++ Options: -fexceptions -// excess errors test - XFAIL sparc64-*-elf arm-*-pe +// { dg-do run { xfail sparc64-*-elf arm-*-pe } } +// { dg-options "-fexceptions" } #include <exception> #include <stdlib.h> diff --git a/gcc/testsuite/g++.old-deja/g++.mike/eh35.C b/gcc/testsuite/g++.old-deja/g++.mike/eh35.C index 5997faf..adf852a 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/eh35.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/eh35.C @@ -1,5 +1,5 @@ -// Special g++ Options: -fexceptions -// excess errors test - XFAIL sparc64-*-elf arm-*-pe +// { dg-do run { xfail sparc64-*-elf arm-*-pe } } +// { dg-options "-fexceptions" } main() { try { diff --git a/gcc/testsuite/g++.old-deja/g++.mike/eh36.C b/gcc/testsuite/g++.old-deja/g++.mike/eh36.C index ddf43a8..d6b4788 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/eh36.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/eh36.C @@ -1,5 +1,5 @@ -// Special g++ Options: -fexceptions -// excess errors test - XFAIL sparc64-*-elf arm-*-pe +// { dg-do run { xfail sparc64-*-elf arm-*-pe } } +// { dg-options "-fexceptions" } #include <typeinfo> diff --git a/gcc/testsuite/g++.old-deja/g++.mike/eh37.C b/gcc/testsuite/g++.old-deja/g++.mike/eh37.C index 226c205..a98b5df 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/eh37.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/eh37.C @@ -1,5 +1,5 @@ -// Special g++ Options: -fexceptions -// excess errors test - XFAIL sparc64-*-elf arm-*-pe +// { dg-do run { xfail sparc64-*-elf arm-*-pe } } +// { dg-options "-fexceptions" } #include <typeinfo> diff --git a/gcc/testsuite/g++.old-deja/g++.mike/eh38.C b/gcc/testsuite/g++.old-deja/g++.mike/eh38.C index 97c1fa0..5a56879 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/eh38.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/eh38.C @@ -1,5 +1,5 @@ -// Special g++ Options: -fexceptions -// excess errors test - XFAIL sparc64-*-elf arm-*-pe +// { dg-do run { xfail sparc64-*-elf arm-*-pe } } +// { dg-options "-fexceptions" } #include <typeinfo> diff --git a/gcc/testsuite/g++.old-deja/g++.mike/eh39.C b/gcc/testsuite/g++.old-deja/g++.mike/eh39.C index ef55ae9..e4bfff8 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/eh39.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/eh39.C @@ -1,5 +1,5 @@ -// Special g++ Options: -fexceptions -// excess errors test - XFAIL sparc64-*-elf arm-*-pe +// { dg-do run { xfail sparc64-*-elf arm-*-pe } } +// { dg-options "-fexceptions" } int fail = 1; class B { diff --git a/gcc/testsuite/g++.old-deja/g++.mike/eh4.C b/gcc/testsuite/g++.old-deja/g++.mike/eh4.C index c87ab29..d7eb96e 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/eh4.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/eh4.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -fexceptions +// { dg-do assemble } +// { dg-options "-fexceptions" } void foo() { throw 1; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/eh40.C b/gcc/testsuite/g++.old-deja/g++.mike/eh40.C index 3b1d4c2..e42b419 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/eh40.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/eh40.C @@ -1,5 +1,5 @@ -// Special g++ Options: -fexceptions -// excess errors test - XFAIL sparc64-*-elf arm-*-pe +// { dg-do run { xfail sparc64-*-elf arm-*-pe } } +// { dg-options "-fexceptions" } int fail = 1; class B { diff --git a/gcc/testsuite/g++.old-deja/g++.mike/eh41.C b/gcc/testsuite/g++.old-deja/g++.mike/eh41.C index 9ded07d..831d75d 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/eh41.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/eh41.C @@ -1,5 +1,5 @@ -// Special g++ Options: -fexceptions -// excess errors test - XFAIL sparc64-*-elf arm-*-pe +// { dg-do run { xfail sparc64-*-elf arm-*-pe } } +// { dg-options "-fexceptions" } int fail = 0; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/eh42.C b/gcc/testsuite/g++.old-deja/g++.mike/eh42.C index 1add52f..ab69c3c 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/eh42.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/eh42.C @@ -1,5 +1,5 @@ -// Special g++ Options: -fexceptions -// excess errors test - XFAIL sparc64-*-elf arm-*-pe +// { dg-do run { xfail sparc64-*-elf arm-*-pe } } +// { dg-options "-fexceptions" } struct none { int i[50]; }; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/eh44.C b/gcc/testsuite/g++.old-deja/g++.mike/eh44.C index bb409e9..27afd3f 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/eh44.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/eh44.C @@ -1,5 +1,5 @@ -// Special g++ Options: -fexceptions -// excess errors test - XFAIL sparc64-*-elf arm-*-pe +// { dg-do run { xfail sparc64-*-elf arm-*-pe } } +// { dg-options "-fexceptions" } // prms-id: 9159 static unsigned int iCounter = 0; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/eh45.C b/gcc/testsuite/g++.old-deja/g++.mike/eh45.C index bed0b92..5bd4dd4 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/eh45.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/eh45.C @@ -1,3 +1,4 @@ +// { dg-do run } int i; int fail; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/eh46.C b/gcc/testsuite/g++.old-deja/g++.mike/eh46.C index 323acb6..51c35a7 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/eh46.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/eh46.C @@ -1,6 +1,5 @@ -// Build don't link: -// Special g++ Options: -fexceptions -// excess errors test - XFAIL arm-*-pe +// { dg-do assemble { xfail arm-*-pe } } +// { dg-options "-fexceptions" } int atoi(const char *); diff --git a/gcc/testsuite/g++.old-deja/g++.mike/eh47.C b/gcc/testsuite/g++.old-deja/g++.mike/eh47.C index ff49c7b..10eb8a8 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/eh47.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/eh47.C @@ -1,5 +1,5 @@ -// Special g++ Options: -fexceptions -// excess errors test - XFAIL sparc64-*-elf arm-*-pe +// { dg-do run { xfail sparc64-*-elf arm-*-pe } } +// { dg-options "-fexceptions" } #include <cstdlib> #include <exception> diff --git a/gcc/testsuite/g++.old-deja/g++.mike/eh48.C b/gcc/testsuite/g++.old-deja/g++.mike/eh48.C index be7dc03..d9caf61 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/eh48.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/eh48.C @@ -1,5 +1,5 @@ -// Special g++ Options: -fexceptions -// excess errors test - XFAIL sparc64-*-elf arm-*-pe +// { dg-do run { xfail sparc64-*-elf arm-*-pe } } +// { dg-options "-fexceptions" } #include <exception> #include <stdlib.h> diff --git a/gcc/testsuite/g++.old-deja/g++.mike/eh49.C b/gcc/testsuite/g++.old-deja/g++.mike/eh49.C index 469fd41..1380ca0 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/eh49.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/eh49.C @@ -1,5 +1,5 @@ -// Special g++ Options: -fexceptions -O9 -// excess errors test - XFAIL sparc64-*-elf arm-*-pe +// { dg-do run { xfail sparc64-*-elf arm-*-pe } } +// { dg-options "-fexceptions -O9" } void main1() { throw 1; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/eh5.C b/gcc/testsuite/g++.old-deja/g++.mike/eh5.C index 8937acb..4ece588 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/eh5.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/eh5.C @@ -1,5 +1,5 @@ -// Special g++ Options: -fexceptions -// excess errors test - XFAIL sparc64-*-elf arm-*-pe +// { dg-do run { xfail sparc64-*-elf arm-*-pe } } +// { dg-options "-fexceptions" } class foo { public: diff --git a/gcc/testsuite/g++.old-deja/g++.mike/eh50.C b/gcc/testsuite/g++.old-deja/g++.mike/eh50.C index 76d8993..de21dc2 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/eh50.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/eh50.C @@ -1,5 +1,5 @@ -// Special g++ Options: -fexceptions -// excess errors test - XFAIL sparc64-*-elf z8k-*-* arm-*-pe +// { dg-do run { xfail sparc64-*-elf z8k-*-* arm-*-pe } } +// { dg-options "-fexceptions" } #include <exception> diff --git a/gcc/testsuite/g++.old-deja/g++.mike/eh51.C b/gcc/testsuite/g++.old-deja/g++.mike/eh51.C index 8d26208..073980a 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/eh51.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/eh51.C @@ -1,5 +1,5 @@ -// Special g++ Options: -fexceptions -// excess errors test - XFAIL sparc64-*-elf z8k-*-* arm-*-pe +// { dg-do run { xfail sparc64-*-elf z8k-*-* arm-*-pe } } +// { dg-options "-fexceptions" } #include <exception> diff --git a/gcc/testsuite/g++.old-deja/g++.mike/eh52.C b/gcc/testsuite/g++.old-deja/g++.mike/eh52.C index 475070c..18b477c 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/eh52.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/eh52.C @@ -1,4 +1,5 @@ -// Special g++ Options: -fexceptions -O9 +// { dg-do run } +// { dg-options "-fexceptions -O9" } int promote_mode (int mode, int *punsignedp) { diff --git a/gcc/testsuite/g++.old-deja/g++.mike/eh53.C b/gcc/testsuite/g++.old-deja/g++.mike/eh53.C index 6de740c..5f2ff57 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/eh53.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/eh53.C @@ -1,5 +1,5 @@ -// Special g++ Options: -fexceptions -g -// excess errors test - XFAIL sparc64-*-elf arm-*-pe +// { dg-do run { xfail sparc64-*-elf arm-*-pe } } +// { dg-options "-fexceptions -g" } class zeroset { public: diff --git a/gcc/testsuite/g++.old-deja/g++.mike/eh54.C b/gcc/testsuite/g++.old-deja/g++.mike/eh54.C index 9c2d206..56e57e0 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/eh54.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/eh54.C @@ -1,3 +1,4 @@ -// Special g++ Options: -fexceptions +// { dg-do assemble } +// { dg-options "-fexceptions" } -int main() { try { 1; } } // ERROR - +int main() { try { 1; } } // { dg-error "" } diff --git a/gcc/testsuite/g++.old-deja/g++.mike/eh55.C b/gcc/testsuite/g++.old-deja/g++.mike/eh55.C index 9eaae59..14826807 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/eh55.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/eh55.C @@ -1,5 +1,5 @@ -// Special g++ Options: -fexceptions -// excess errors test - XFAIL sparc64-*-elf arm-*-pe +// { dg-do run { xfail sparc64-*-elf arm-*-pe } } +// { dg-options "-fexceptions" } #include <exception> #include <stdlib.h> diff --git a/gcc/testsuite/g++.old-deja/g++.mike/eh56.C b/gcc/testsuite/g++.old-deja/g++.mike/eh56.C index 674a82d..1b660fc 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/eh56.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/eh56.C @@ -1,4 +1,5 @@ -// Special g++ Options: -fexceptions +// { dg-do run } +// { dg-options "-fexceptions" } struct A { A() { } diff --git a/gcc/testsuite/g++.old-deja/g++.mike/eh57.C b/gcc/testsuite/g++.old-deja/g++.mike/eh57.C index 545a85f..087b413 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/eh57.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/eh57.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -fno-exceptions +// { dg-do assemble } +// { dg-options "-fno-exceptions" } class Calendar_Time { public: diff --git a/gcc/testsuite/g++.old-deja/g++.mike/eh58.C b/gcc/testsuite/g++.old-deja/g++.mike/eh58.C index 967e74a..9bc8926 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/eh58.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/eh58.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -fexceptions +// { dg-do assemble } +// { dg-options "-fexceptions" } struct C { bool mem; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/eh59.C b/gcc/testsuite/g++.old-deja/g++.mike/eh59.C index 75bbcfb..f2f2bb3 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/eh59.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/eh59.C @@ -1,4 +1,5 @@ -// Special g++ Options: -O -funroll-loops +// { dg-do run } +// { dg-options "-O -funroll-loops" } struct A { ~A(); diff --git a/gcc/testsuite/g++.old-deja/g++.mike/eh6.C b/gcc/testsuite/g++.old-deja/g++.mike/eh6.C index f3bdd87..cc29ea5 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/eh6.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/eh6.C @@ -1,5 +1,5 @@ -// Special g++ Options: -fexceptions -// excess errors test - XFAIL sparc64-*-elf arm-*-pe +// { dg-do run { xfail sparc64-*-elf arm-*-pe } } +// { dg-options "-fexceptions" } extern "C" int printf(const char *, ...); diff --git a/gcc/testsuite/g++.old-deja/g++.mike/eh7.C b/gcc/testsuite/g++.old-deja/g++.mike/eh7.C index f6146ae..f431fb9 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/eh7.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/eh7.C @@ -1,5 +1,5 @@ -// Special g++ Options: -fexceptions -// excess errors test - XFAIL sparc64-*-elf arm-*-pe +// { dg-do run { xfail sparc64-*-elf arm-*-pe } } +// { dg-options "-fexceptions" } main() { if (0) diff --git a/gcc/testsuite/g++.old-deja/g++.mike/eh8.C b/gcc/testsuite/g++.old-deja/g++.mike/eh8.C index 2e3bcca..8e01da0 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/eh8.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/eh8.C @@ -1,5 +1,5 @@ -// Special g++ Options: -fexceptions -// excess errors test - XFAIL sparc64-*-elf arm-*-pe +// { dg-do run { xfail sparc64-*-elf arm-*-pe } } +// { dg-options "-fexceptions" } extern "C" int printf(const char *, ...); diff --git a/gcc/testsuite/g++.old-deja/g++.mike/eh9.C b/gcc/testsuite/g++.old-deja/g++.mike/eh9.C index bcb985f..633642f 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/eh9.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/eh9.C @@ -1,4 +1,4 @@ -// Special g++ Options: -fexceptions -// excess errors test - XFAIL sparc64-*-elf arm-*-pe +// { dg-do run { xfail sparc64-*-elf arm-*-pe } } +// { dg-options "-fexceptions" } main() throw () { } diff --git a/gcc/testsuite/g++.old-deja/g++.mike/enum1.C b/gcc/testsuite/g++.old-deja/g++.mike/enum1.C index 89e8542..0b1a0eeac 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/enum1.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/enum1.C @@ -1,10 +1,10 @@ -// Build don't link: +// { dg-do assemble } // Warn if a enum cannot fit into a small bit-field. enum TypeKind { ATK, BTK, CTK, DTK } ; struct Type { - enum TypeKind kind : 1; // WARNING - + enum TypeKind kind : 1; // { dg-warning "" } void setBTK(); }; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/err1.C b/gcc/testsuite/g++.old-deja/g++.mike/err1.C index 3f234bb..8e15dd2 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/err1.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/err1.C @@ -1,8 +1,8 @@ -// Build don't link: +// { dg-do assemble } struct gorf { int stuff; - void snarf(); // ERROR - + void snarf(); // { dg-error "" } }; -template <class T> void gorf::snarf() { return; } // ERROR - +template <class T> void gorf::snarf() { return; } // { dg-error "" } diff --git a/gcc/testsuite/g++.old-deja/g++.mike/err2.C b/gcc/testsuite/g++.old-deja/g++.mike/err2.C index c3af5b4..9d8a596 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/err2.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/err2.C @@ -1,6 +1,7 @@ +// { dg-do assemble } class foo { public: void apply(foo *(foo::*memptr)()) { - this->*memptr(); // ERROR - wrong + this->*memptr(); // { dg-error "" } wrong } }; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/err3.C b/gcc/testsuite/g++.old-deja/g++.mike/err3.C index b42a4a9..18161b3 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/err3.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/err3.C @@ -1,9 +1,10 @@ +// { dg-do assemble } class cb { }; class cc { public: cc() - : cb() { // ERROR - + : cb() { // { dg-error "" } } }; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/explicit1.C b/gcc/testsuite/g++.old-deja/g++.mike/explicit1.C index 28213ba..b8284ab 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/explicit1.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/explicit1.C @@ -1,3 +1,4 @@ +// { dg-do assemble } struct A1 { explicit A1(int) { } } a1(1); @@ -11,5 +12,5 @@ A::A(int) { void foo(A a) { foo(a); - foo(1); // ERROR - not allowed + foo(1); // { dg-error "" } not allowed } diff --git a/gcc/testsuite/g++.old-deja/g++.mike/explicit2.C b/gcc/testsuite/g++.old-deja/g++.mike/explicit2.C index a2077bf..989367f 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/explicit2.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/explicit2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } class string { public: @@ -11,11 +11,11 @@ void foo(string) { } string bar() { foo("hello"); // ok foo(string(2)); // ok - foo(2); // ERROR - no implicit conversion from int to string - string x = 2; // ERROR - no implicit conversion from int to string + foo(2); // { dg-error "" } no implicit conversion from int to string + string x = 2; // { dg-error "" } no implicit conversion from int to string string y(2); // ok foo((string)2); // ok - return 2; // ERROR - no implicit conversion from int to string + return 2; // { dg-error "" } no implicit conversion from int to string } class A : string { diff --git a/gcc/testsuite/g++.old-deja/g++.mike/for1.C b/gcc/testsuite/g++.old-deja/g++.mike/for1.C index e462130..0f2e543 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/for1.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/for1.C @@ -1,3 +1,4 @@ +// { dg-do assemble } int main() { - for( {int i = 0; int j = 0;} i < 10; ++i ) ; // ERROR - + for( {int i = 0; int j = 0;} i < 10; ++i ) ; // { dg-error "" } } diff --git a/gcc/testsuite/g++.old-deja/g++.mike/for2.C b/gcc/testsuite/g++.old-deja/g++.mike/for2.C index fd01804..1c074c3 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/for2.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/for2.C @@ -1,19 +1,19 @@ -// Build don't link: +// { dg-do assemble } void foo() { for (class C {};;) ; - C c; // ERROR - + C c; // { dg-error "" } } void bar() { for (enum E {num};;) ; - E e; // ERROR - + E e; // { dg-error "" } } void bee () { int i = 0; - for (int fun() = 0; i != 2; ++i) { // ERROR - + for (int fun() = 0; i != 2; ++i) { // { dg-error "" } } } diff --git a/gcc/testsuite/g++.old-deja/g++.mike/for3.C b/gcc/testsuite/g++.old-deja/g++.mike/for3.C index 7e88d7e..80f6691 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/for3.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/for3.C @@ -1,9 +1,10 @@ -// Special g++ Options: -Wshadow +// { dg-do assemble } +// { dg-options "-Wshadow" } int -main(int i) { // WARNING - shadowed decl - for(int i=1; i < 3; i++); // WARNING - declaration of - for(int i=1; i < 3; i++); // WARNING - declaration of +main(int i) { // { dg-warning "" } shadowed decl + for(int i=1; i < 3; i++); // { dg-warning "" } declaration of + for(int i=1; i < 3; i++); // { dg-warning "" } declaration of for(int j=1; j < 3; j++); for(int j=1; j < 3; j++); } diff --git a/gcc/testsuite/g++.old-deja/g++.mike/fresco1.C b/gcc/testsuite/g++.old-deja/g++.mike/fresco1.C index 16fa1db..fe90eb7 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/fresco1.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/fresco1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // This is a Fresco found bug. diff --git a/gcc/testsuite/g++.old-deja/g++.mike/hog1.C b/gcc/testsuite/g++.old-deja/g++.mike/hog1.C index 4d677ba..0dbbc07 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/hog1.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/hog1.C @@ -1,3 +1,4 @@ +// { dg-do run } class dummy { public: void operator++(void) {} }; class dummy_000 : private virtual dummy { public: void operator++(void) { diff --git a/gcc/testsuite/g++.old-deja/g++.mike/init1.C b/gcc/testsuite/g++.old-deja/g++.mike/init1.C index 8d59186..0b47fb7e 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/init1.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/init1.C @@ -1,3 +1,4 @@ +// { dg-do run } int count; extern "C" void _exit(int); diff --git a/gcc/testsuite/g++.old-deja/g++.mike/init2.C b/gcc/testsuite/g++.old-deja/g++.mike/init2.C index 343d76f..81f6e4f 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/init2.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/init2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } struct Foo { Foo (int); diff --git a/gcc/testsuite/g++.old-deja/g++.mike/leak1.C b/gcc/testsuite/g++.old-deja/g++.mike/leak1.C index 2a6c337..403a737 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/leak1.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/leak1.C @@ -1,3 +1,4 @@ +// { dg-do run } int count = 0; class T { diff --git a/gcc/testsuite/g++.old-deja/g++.mike/mangle1.C b/gcc/testsuite/g++.old-deja/g++.mike/mangle1.C index ac7d6cf..de5e965 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/mangle1.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/mangle1.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: +// { dg-do assemble } +// { dg-options "" } // Make sure the typedef name is used in name mangling, not some random // anonymous name diff --git a/gcc/testsuite/g++.old-deja/g++.mike/mangle2.C b/gcc/testsuite/g++.old-deja/g++.mike/mangle2.C index 174cacc..720c3c3 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/mangle2.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/mangle2.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: +// { dg-do assemble } +// { dg-options "" } typedef struct { } color; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/mangle3.C b/gcc/testsuite/g++.old-deja/g++.mike/mangle3.C index 77b92ec..4b3e581 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/mangle3.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/mangle3.C @@ -1,3 +1,4 @@ +// { dg-do run } struct ZZ { int p; }; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/memoize1.C b/gcc/testsuite/g++.old-deja/g++.mike/memoize1.C index cc98cfa..af06f22 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/memoize1.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/memoize1.C @@ -1,4 +1,4 @@ -// Build don't link: -// Special g++ Options: -fsave-memoized +// { dg-do assemble } +// { dg-options "-fsave-memoized" } #include <iostream> diff --git a/gcc/testsuite/g++.old-deja/g++.mike/mi1.C b/gcc/testsuite/g++.old-deja/g++.mike/mi1.C index 0f5880d..e5f01c4 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/mi1.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/mi1.C @@ -1,4 +1,5 @@ -// Special g++ Options: -w +// { dg-do run } +// { dg-options "-w" } class A { public: diff --git a/gcc/testsuite/g++.old-deja/g++.mike/mi2.C b/gcc/testsuite/g++.old-deja/g++.mike/mi2.C index f3c01e3..51d8d2f 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/mi2.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/mi2.C @@ -1,3 +1,4 @@ +// { dg-do run } class A { char a; public: diff --git a/gcc/testsuite/g++.old-deja/g++.mike/misc1.C b/gcc/testsuite/g++.old-deja/g++.mike/misc1.C index 40a52e8..7a60218 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/misc1.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/misc1.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed construct-destruct /* g++ constructs j 13 times, and destructs it once. */ diff --git a/gcc/testsuite/g++.old-deja/g++.mike/misc11.C b/gcc/testsuite/g++.old-deja/g++.mike/misc11.C index 642fd2e..23fc10a 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/misc11.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/misc11.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed pt coredump template<class T> class A; void f () { A<int> *a; } diff --git a/gcc/testsuite/g++.old-deja/g++.mike/misc12.C b/gcc/testsuite/g++.old-deja/g++.mike/misc12.C index b342bb5..1ac53bb 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/misc12.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/misc12.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed struct A { virtual void f(); }; struct B { virtual void f() ; }; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/misc13.C b/gcc/testsuite/g++.old-deja/g++.mike/misc13.C index 5458f5c..d21a916 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/misc13.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/misc13.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed vtable extern "C" int printf (const char *, ...); enum { vf_request, vf_event } want; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/misc14.C b/gcc/testsuite/g++.old-deja/g++.mike/misc14.C index 4773fd3..6f966f2 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/misc14.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/misc14.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed extern "C" int printf (const char *, ...); extern "C" void exit(int); diff --git a/gcc/testsuite/g++.old-deja/g++.mike/misc2.C b/gcc/testsuite/g++.old-deja/g++.mike/misc2.C index d916651..8ac7367 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/misc2.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/misc2.C @@ -1,11 +1,11 @@ -// Build don't link: -// Special g++ Options: -ansi -pedantic +// { dg-do assemble } +// { dg-options "-ansi -pedantic" } // GROUPS passed /* -ansi -pedantic-errors should catch this. */ class C { public: - extern inline int A() {// ERROR - .* + extern inline int A() {// { dg-error "" } .* return 1; } }; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/misc3.C b/gcc/testsuite/g++.old-deja/g++.mike/misc3.C index 5ac7a3b..560f0c1 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/misc3.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/misc3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS uncaught -int a;// ERROR - .* -int a;// ERROR - .* +int a;// { dg-error "" } .* +int a;// { dg-error "" } .* diff --git a/gcc/testsuite/g++.old-deja/g++.mike/misc5.C b/gcc/testsuite/g++.old-deja/g++.mike/misc5.C index a0761b2..245c9a2 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/misc5.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/misc5.C @@ -1,11 +1,11 @@ -// Build don't link: +// { dg-do assemble } // GROUPS uncaught // Cfront bug A.3 (See Language System Release Notes for the // SPARCompiler C++ version 3.0) struct S1 { - static int S1; // ERROR - uses same name 9.3 + static int S1; // { dg-error "" } uses same name 9.3 }; struct S2 { - union { int ii; float S2; }; // ERROR - uses same name 9.3 + union { int ii; float S2; }; // { dg-error "" } uses same name 9.3 }; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/misc6.C b/gcc/testsuite/g++.old-deja/g++.mike/misc6.C index e369752..5fbca65 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/misc6.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/misc6.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS uncaught // Cfront bug A.4 (See Language System Release Notes for the // SPARCompiler C++ version 3.0) @@ -7,5 +7,5 @@ struct assign { assign& operator = (const assign&); }; union U { - assign a; // ERROR - member of union cannot have op= 9.4// ERROR - .* + assign a; // { dg-error "" } member of union cannot have op= 9.4// ERROR - .* }; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/misc7.C b/gcc/testsuite/g++.old-deja/g++.mike/misc7.C index e613ad9..34e0d3a 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/misc7.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/misc7.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed MI struct S1 { }; @@ -12,5 +12,5 @@ struct S4 *p4; void foobar () { - p1 = p4; // ERROR - this is illegal// ERROR - .* + p1 = p4; // { dg-error "" } this is illegal// ERROR - .* } diff --git a/gcc/testsuite/g++.old-deja/g++.mike/misc8.C b/gcc/testsuite/g++.old-deja/g++.mike/misc8.C index cf15c82..d8852c7 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/misc8.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/misc8.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed vtable class T { public: virtual ~T() {} }; template<class P> class X : public virtual T {}; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/misc9.C b/gcc/testsuite/g++.old-deja/g++.mike/misc9.C index ec02d1e..0af5783 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/misc9.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/misc9.C @@ -1,13 +1,13 @@ -// Build don't link: -// Special g++ Options: -Wall -pedantic +// { dg-do assemble } +// { dg-options "-Wall -pedantic" } // GROUPS passed qualifiers class bee { public: - int bee::bar; // WARNING - there is an extra bee:: here + int bee::bar; // { dg-warning "" } there is an extra bee:: here }; class foo { public: - int bee::bar; // ERROR - you cannot do this + int bee::bar; // { dg-error "" } you cannot do this int me(); }; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/net1.C b/gcc/testsuite/g++.old-deja/g++.mike/net1.C index 9b2bbb8..72b8e72 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/net1.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/net1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Here is a net bug class ivAllocation { diff --git a/gcc/testsuite/g++.old-deja/g++.mike/net10.C b/gcc/testsuite/g++.old-deja/g++.mike/net10.C index 4546bf1..f200f95 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/net10.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/net10.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -pedantic-errors +// { dg-do assemble } +// { dg-options "-pedantic-errors" } const int ci=10, *pc = &ci, *const cpc = pc, **ppc; int i, *p, *const cp = &i; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/net11.C b/gcc/testsuite/g++.old-deja/g++.mike/net11.C index 2030796..c9eeec1 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/net11.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/net11.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -pedantic-errors +// { dg-do assemble } +// { dg-options "-pedantic-errors" } struct Foo { char *p; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/net12.C b/gcc/testsuite/g++.old-deja/g++.mike/net12.C index b5fbf64..59e062a 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/net12.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/net12.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -pedantic-errors +// { dg-do assemble } +// { dg-options "-pedantic-errors" } struct Foo { char *p; @@ -7,10 +7,10 @@ struct Foo { void m() const; }; -void other(char &x); // ERROR - reference below +void other(char &x); // { dg-error "" } reference below void Foo::m() const { - other(*q); // ERROR - this is bad + other(*q); // { dg-error "" } this is bad } diff --git a/gcc/testsuite/g++.old-deja/g++.mike/net13.C b/gcc/testsuite/g++.old-deja/g++.mike/net13.C index d56e872..acf1f65 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/net13.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/net13.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // make sure extern "C" friends work. diff --git a/gcc/testsuite/g++.old-deja/g++.mike/net14.C b/gcc/testsuite/g++.old-deja/g++.mike/net14.C index 4f32fdd..36b2b23 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/net14.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/net14.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // this probably does not have correct debugging info generated. typedef struct Thing { diff --git a/gcc/testsuite/g++.old-deja/g++.mike/net15.C b/gcc/testsuite/g++.old-deja/g++.mike/net15.C index dfe4dc5..4d7129e 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/net15.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/net15.C @@ -1,3 +1,4 @@ +// { dg-do run } // InterViews (ibuild) requires this to work. extern "C" void exit(int); diff --git a/gcc/testsuite/g++.old-deja/g++.mike/net16.C b/gcc/testsuite/g++.old-deja/g++.mike/net16.C index 5da97a8..0f15f71 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/net16.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/net16.C @@ -1,3 +1,4 @@ +// { dg-do run } // On an i386, this core dumps because the reg-stack.c code is wrong, and // pops an fp register that it thinks is not used, but it is. diff --git a/gcc/testsuite/g++.old-deja/g++.mike/net17.C b/gcc/testsuite/g++.old-deja/g++.mike/net17.C index 5befc4f..56a3c24 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/net17.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/net17.C @@ -1,3 +1,4 @@ +// { dg-do run } // example from the ARM page 292 and 293 extern "C" int printf(const char *, ...); diff --git a/gcc/testsuite/g++.old-deja/g++.mike/net18.C b/gcc/testsuite/g++.old-deja/g++.mike/net18.C index 81e38d3..2123c81 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/net18.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/net18.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } class ClassA { public: diff --git a/gcc/testsuite/g++.old-deja/g++.mike/net19.C b/gcc/testsuite/g++.old-deja/g++.mike/net19.C index 68c4753..0283166 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/net19.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/net19.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // Test to make sure &<incomplete record type> works in c++ -// Build don't link: struct FILE { int _flags; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/net2.C b/gcc/testsuite/g++.old-deja/g++.mike/net2.C index e525130..c9aff26 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/net2.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/net2.C @@ -1,13 +1,13 @@ -// Build don't link: +// { dg-do assemble } // Here is another program from the net. class B; -class A { // ERROR - copy ctor candidate +class A { // { dg-error "" } copy ctor candidate private: - A(B *); // ERROR - + A(B *); // { dg-error "" } public: - A(long); // ERROR - + A(long); // { dg-error "" } }; -A a(0); // ERROR - should be ambigious +A a(0); // { dg-error "" } should be ambigious diff --git a/gcc/testsuite/g++.old-deja/g++.mike/net20.C b/gcc/testsuite/g++.old-deja/g++.mike/net20.C index 731f6c1..e972013 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/net20.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/net20.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // A pointer to member function test case. struct X diff --git a/gcc/testsuite/g++.old-deja/g++.mike/net21.C b/gcc/testsuite/g++.old-deja/g++.mike/net21.C index 02e40b0..430bb74 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/net21.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/net21.C @@ -1,3 +1,4 @@ +// { dg-do run } // Make sure we can initialize complex (MI ambiguous) vtables. extern "C" int printf(const char *, ...); diff --git a/gcc/testsuite/g++.old-deja/g++.mike/net22.C b/gcc/testsuite/g++.old-deja/g++.mike/net22.C index ff37d87..de39a52 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/net22.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/net22.C @@ -1,13 +1,14 @@ +// { dg-do assemble } class Parent { public: Parent() {} Parent( char *s ) {} }; -class Child : public Parent { // ERROR - called +class Child : public Parent { // { dg-error "" } called }; int main() { - Child c( "String initializer" ); // ERROR - bad + Child c( "String initializer" ); // { dg-error "" } bad return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.mike/net23.C b/gcc/testsuite/g++.old-deja/g++.mike/net23.C index 2fe7d4c..97120ea 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/net23.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/net23.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } class environment { public: diff --git a/gcc/testsuite/g++.old-deja/g++.mike/net24.C b/gcc/testsuite/g++.old-deja/g++.mike/net24.C index 682fb08..471785f 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/net24.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/net24.C @@ -1,3 +1,3 @@ -// Build don't link: +// { dg-do assemble } char HexDigit(unsigned char ch) { return ch < 'f'; } diff --git a/gcc/testsuite/g++.old-deja/g++.mike/net25.C b/gcc/testsuite/g++.old-deja/g++.mike/net25.C index 5635677..6e7dade 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/net25.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/net25.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } void shake_zero() { diff --git a/gcc/testsuite/g++.old-deja/g++.mike/net26.C b/gcc/testsuite/g++.old-deja/g++.mike/net26.C index ed43df8..8d03278 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/net26.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/net26.C @@ -1,3 +1,4 @@ +// { dg-do run } // A test case found by InterViews testing... extern "C" int printf(const char *, ...); diff --git a/gcc/testsuite/g++.old-deja/g++.mike/net27.C b/gcc/testsuite/g++.old-deja/g++.mike/net27.C index afe975c..8b17153 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/net27.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/net27.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } class path { public: diff --git a/gcc/testsuite/g++.old-deja/g++.mike/net28.C b/gcc/testsuite/g++.old-deja/g++.mike/net28.C index 3b72482..5cac856 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/net28.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/net28.C @@ -1,10 +1,10 @@ +// { dg-do assemble } // From reinhard@ifki50.informatik.fh-muenchen.de against gcc 2.5.0. // shows an InterViews problem on RS6000 and i386. Doesn't happen on // SPARC. // From fbrowser.c. -// Build don't link: class test { }; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/net29.C b/gcc/testsuite/g++.old-deja/g++.mike/net29.C index 6635241..1cce5a2 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/net29.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/net29.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // This is a test case for the recent libg++ make check problem. -// Build don't link: class SubString { public: diff --git a/gcc/testsuite/g++.old-deja/g++.mike/net3.C b/gcc/testsuite/g++.old-deja/g++.mike/net3.C index e6dbdcb..7c89fac 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/net3.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/net3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Here is another program from the net. class BOOL { diff --git a/gcc/testsuite/g++.old-deja/g++.mike/net30.C b/gcc/testsuite/g++.old-deja/g++.mike/net30.C index 52f7b28..2a96ed7 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/net30.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/net30.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } class X { public: diff --git a/gcc/testsuite/g++.old-deja/g++.mike/net31.C b/gcc/testsuite/g++.old-deja/g++.mike/net31.C index 05617a8..6565a36 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/net31.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/net31.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } class foo_a { protected: @@ -40,7 +40,7 @@ foo_b& foo_c<TP>::bug_func(int x) { static foo_b retval(m); retval.bar_a(m); for (register int i = 0; i < m; i++) - retval(i) = (*(operator()(i)))(x); // ERROR - + retval(i) = (*(operator()(i)))(x); // { dg-error "" } return retval; } @@ -62,7 +62,7 @@ class foo_e : public foo_a, public foo_d<foo_a> { }; void foo_e::setfoo_c() { - bar_b(0) = func; // ERROR - + bar_b(0) = func; // { dg-error "" } } template class foo_c<foo_a>; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/net32.C b/gcc/testsuite/g++.old-deja/g++.mike/net32.C index 4ac8a94..43c1ed1 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/net32.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/net32.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } class Co_obj { public: diff --git a/gcc/testsuite/g++.old-deja/g++.mike/net34.C b/gcc/testsuite/g++.old-deja/g++.mike/net34.C index 0756e2e..19a7e16 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/net34.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/net34.C @@ -1,4 +1,5 @@ -// Special g++ Options: +// { dg-do run } +// { dg-options "" } #include <iostream> diff --git a/gcc/testsuite/g++.old-deja/g++.mike/net35.C b/gcc/testsuite/g++.old-deja/g++.mike/net35.C index 332bf42..bded913 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/net35.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/net35.C @@ -1,3 +1,4 @@ +// { dg-do run } extern "C" int printf(const char *, ...); class A { diff --git a/gcc/testsuite/g++.old-deja/g++.mike/net36.C b/gcc/testsuite/g++.old-deja/g++.mike/net36.C index c9d0fe9..7d21d56 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/net36.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/net36.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } class X; @@ -11,9 +11,9 @@ typedef void (A::*handler) (X*); class B { public: - void setHandler(handler); // ERROR - candidate + void setHandler(handler); // { dg-error "" } candidate }; void f(B* b) { - b->setHandler(A::handlerFn); // ERROR - + b->setHandler(A::handlerFn); // { dg-error "" } } diff --git a/gcc/testsuite/g++.old-deja/g++.mike/net37.C b/gcc/testsuite/g++.old-deja/g++.mike/net37.C index 1ce7834..a23dfbc 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/net37.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/net37.C @@ -1,3 +1,4 @@ +// { dg-do run } class B { public: int bi; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/net38.C b/gcc/testsuite/g++.old-deja/g++.mike/net38.C index 2b7c0c4..de00a15 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/net38.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/net38.C @@ -1,3 +1,4 @@ +// { dg-do run } struct A { virtual int a () { return 0; } }; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/net39.C b/gcc/testsuite/g++.old-deja/g++.mike/net39.C index 00ad1c6..6554b33 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/net39.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/net39.C @@ -1,3 +1,4 @@ +// { dg-do run } void *vp; class silly { diff --git a/gcc/testsuite/g++.old-deja/g++.mike/net4.C b/gcc/testsuite/g++.old-deja/g++.mike/net4.C index 4cf8e7a..cc6712f 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/net4.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/net4.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // Message-Id: <m0lLuUK-0000fRC@nix.appli.se> // Date: Wed, 4 Mar 92 12:50 MET // From: niklas@appli.se (Niklas Hallqvist) @@ -21,7 +22,6 @@ // a patch enclosed below is needed. I'm not sure if it causes any // unanticipated side-effects, but it seem to work well for me. -// Build don't link: struct O { struct M { diff --git a/gcc/testsuite/g++.old-deja/g++.mike/net40.C b/gcc/testsuite/g++.old-deja/g++.mike/net40.C index db0df8a..2a87a0c 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/net40.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/net40.C @@ -1,3 +1,4 @@ +// { dg-do run } #include <stddef.h> #include <stdlib.h> diff --git a/gcc/testsuite/g++.old-deja/g++.mike/net41.C b/gcc/testsuite/g++.old-deja/g++.mike/net41.C index 2c29e9b..4180778 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/net41.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/net41.C @@ -1,3 +1,4 @@ +// { dg-do run } int main() { int i = ~ false; } diff --git a/gcc/testsuite/g++.old-deja/g++.mike/net42.C b/gcc/testsuite/g++.old-deja/g++.mike/net42.C index 1229795..1205812 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/net42.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/net42.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } typedef void (*__sighandler_t)(int); diff --git a/gcc/testsuite/g++.old-deja/g++.mike/net43.C b/gcc/testsuite/g++.old-deja/g++.mike/net43.C index 3a34c8f..234295f 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/net43.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/net43.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } class foo { public: diff --git a/gcc/testsuite/g++.old-deja/g++.mike/net44.C b/gcc/testsuite/g++.old-deja/g++.mike/net44.C index 5b6a0ad..bc45b48 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/net44.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/net44.C @@ -1,8 +1,9 @@ +// { dg-do assemble } // Make sure we don't dump core -enum request { q, w, e}; // ERROR - +enum request { q, w, e}; // { dg-error "" } -class request { // ERROR - +class request { // { dg-error "" } public: int a; request( int b) { diff --git a/gcc/testsuite/g++.old-deja/g++.mike/net45.C b/gcc/testsuite/g++.old-deja/g++.mike/net45.C index fca48e9..9d423aa 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/net45.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/net45.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class T1, class T2> struct pair { diff --git a/gcc/testsuite/g++.old-deja/g++.mike/net46.C b/gcc/testsuite/g++.old-deja/g++.mike/net46.C index bacee85..1740228 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/net46.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/net46.C @@ -1,3 +1,4 @@ +// { dg-do run } #include <iostream> #include <cstdlib> #include <cstddef> diff --git a/gcc/testsuite/g++.old-deja/g++.mike/net47.C b/gcc/testsuite/g++.old-deja/g++.mike/net47.C index fc4a81f..0262110 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/net47.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/net47.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -w -fpermissive +// { dg-do assemble } +// { dg-options "-w -fpermissive" } class foo {}; class bar : foo { diff --git a/gcc/testsuite/g++.old-deja/g++.mike/net48.C b/gcc/testsuite/g++.old-deja/g++.mike/net48.C index a2d6743..bc0220a 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/net48.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/net48.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } char *a="aê"; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/net6.C b/gcc/testsuite/g++.old-deja/g++.mike/net6.C index 6a3aef1..d96b5dd 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/net6.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/net6.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: +// { dg-do assemble } +// { dg-options "" } struct X {}; -X x = X(); // gets bogus error +X x = X(); // { dg-bogus "" } diff --git a/gcc/testsuite/g++.old-deja/g++.mike/net7.C b/gcc/testsuite/g++.old-deja/g++.mike/net7.C index 1465502..f0ef4c0 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/net7.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/net7.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: +// { dg-do assemble } +// { dg-options "" } // This should compile. diff --git a/gcc/testsuite/g++.old-deja/g++.mike/net8.C b/gcc/testsuite/g++.old-deja/g++.mike/net8.C index 1282317..09dfe1a 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/net8.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/net8.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -pedantic-errors +// { dg-do assemble } +// { dg-options "-pedantic-errors" } class Base { public: @@ -11,22 +11,22 @@ public: int bar; }; -void func(Base&); // ERROR - +void func(Base&); // { dg-error "" } void func2(const Derived& d) { - func(d); // ERROR - this is bad + func(d); // { dg-error "" } this is bad } void foo (int& a) -{ // ERROR - +{ // { dg-error "" } } int main () { int b; const int*const a = &b; - *a = 10; // ERROR - it's const - foo (*a); // ERROR - it's const + *a = 10; // { dg-error "" } it's const + foo (*a); // { dg-error "" } it's const return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.mike/net9.C b/gcc/testsuite/g++.old-deja/g++.mike/net9.C index 7d876dc..774690c 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/net9.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/net9.C @@ -1,15 +1,15 @@ -// Build don't link: -// Special g++ Options: -pedantic-errors +// { dg-do assemble } +// { dg-options "-pedantic-errors" } const int ci=10, *pc = &ci, *const cpc = pc, **ppc; int i, *p, *const cp = &i; int main() { - ci = 1; // ERROR - bad - ci++; // ERROR - bad - *pc = 2; // ERROR - bad - cp = &ci; // ERROR - bad - cpc++; // ERROR - bad - p = pc; // ERROR - bad + ci = 1; // { dg-error "" } bad + ci++; // { dg-error "" } bad + *pc = 2; // { dg-error "" } bad + cp = &ci; // { dg-error "" } bad + cpc++; // { dg-error "" } bad + p = pc; // { dg-error "" } bad } diff --git a/gcc/testsuite/g++.old-deja/g++.mike/ns1.C b/gcc/testsuite/g++.old-deja/g++.mike/ns1.C index c347d2d..c92ea94 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/ns1.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/ns1.C @@ -1,3 +1,4 @@ +// { dg-do run } namespace Foo { int bar() { return 0; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/ns10.C b/gcc/testsuite/g++.old-deja/g++.mike/ns10.C index a6b1c3a..73e3cfd 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/ns10.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/ns10.C @@ -1,3 +1,4 @@ +// { dg-do run } namespace Foo { int bar() { return 0; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/ns11.C b/gcc/testsuite/g++.old-deja/g++.mike/ns11.C index bde7723..c9d2c7b 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/ns11.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/ns11.C @@ -1,3 +1,4 @@ +// { dg-do run } class Foo { }; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/ns12.C b/gcc/testsuite/g++.old-deja/g++.mike/ns12.C index 79444ae..76e1872 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/ns12.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/ns12.C @@ -1,3 +1,4 @@ +// { dg-do run } namespace { int i = 10; enum fish { one = 1, two = 2, red = 3, blue = 4 }; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/ns13.C b/gcc/testsuite/g++.old-deja/g++.mike/ns13.C index 5482a43..23a1046 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/ns13.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/ns13.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } namespace N { struct C { diff --git a/gcc/testsuite/g++.old-deja/g++.mike/ns14.C b/gcc/testsuite/g++.old-deja/g++.mike/ns14.C index 3c3ad3f..463131d 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/ns14.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/ns14.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } namespace Jazz { int horn( int h ) { return 1; } diff --git a/gcc/testsuite/g++.old-deja/g++.mike/ns15.C b/gcc/testsuite/g++.old-deja/g++.mike/ns15.C index 247aab1..567db4c 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/ns15.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/ns15.C @@ -1,5 +1,4 @@ -// Build don't link: -// excess errors test - XFAIL xstormy16-*-* +// { dg-do assemble { xfail xstormy16-*-* } } #include <stdio.h> #include <stdlib.h> diff --git a/gcc/testsuite/g++.old-deja/g++.mike/ns2.C b/gcc/testsuite/g++.old-deja/g++.mike/ns2.C index 8e2a171..8b5aedc 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/ns2.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/ns2.C @@ -1,3 +1,4 @@ +// { dg-do run } namespace N { int i; } diff --git a/gcc/testsuite/g++.old-deja/g++.mike/ns3.C b/gcc/testsuite/g++.old-deja/g++.mike/ns3.C index 77da5af..eb40fe4 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/ns3.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/ns3.C @@ -1,4 +1,5 @@ -int i; // ERROR - +// { dg-do assemble } +int i; // { dg-error "" } -namespace i { // ERROR - +namespace i { // { dg-error "" } } diff --git a/gcc/testsuite/g++.old-deja/g++.mike/ns4.C b/gcc/testsuite/g++.old-deja/g++.mike/ns4.C index 7c359cf..b1e7ee9 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/ns4.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/ns4.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } namespace i { } diff --git a/gcc/testsuite/g++.old-deja/g++.mike/ns5.C b/gcc/testsuite/g++.old-deja/g++.mike/ns5.C index d138ff3..9d806ca 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/ns5.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/ns5.C @@ -1,5 +1,6 @@ +// { dg-do assemble } namespace A { int i = 1; } -int j = i; // ERROR - +int j = i; // { dg-error "" } diff --git a/gcc/testsuite/g++.old-deja/g++.mike/ns6.C b/gcc/testsuite/g++.old-deja/g++.mike/ns6.C index dc08247..275e7ba 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/ns6.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/ns6.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } namespace A { int i = 1; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/ns7.C b/gcc/testsuite/g++.old-deja/g++.mike/ns7.C index ff7cda6..57008db 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/ns7.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/ns7.C @@ -1,9 +1,9 @@ -// Build don't link: +// { dg-do assemble } namespace A { int i = 1; } namespace B { - int j = i; // ERROR - + int j = i; // { dg-error "" } } diff --git a/gcc/testsuite/g++.old-deja/g++.mike/ns8.C b/gcc/testsuite/g++.old-deja/g++.mike/ns8.C index dc08247..275e7ba 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/ns8.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/ns8.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } namespace A { int i = 1; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/ns9.C b/gcc/testsuite/g++.old-deja/g++.mike/ns9.C index 8d640e7..84f7a13 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/ns9.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/ns9.C @@ -1,3 +1,4 @@ +// { dg-do run } namespace Foo { int bar() { return 0; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/offset1.C b/gcc/testsuite/g++.old-deja/g++.mike/offset1.C index 6a259d8..b0ddc7b 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/offset1.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/offset1.C @@ -1,3 +1,4 @@ +// { dg-do run } extern "C" int printf(const char *, ...); void *vp; int fail = 0; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/opr-as1.C b/gcc/testsuite/g++.old-deja/g++.mike/opr-as1.C index 935b0ba..9133d74 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/opr-as1.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/opr-as1.C @@ -1,3 +1,4 @@ +// { dg-do run } // Shows a problem with the default op= not being an implementation... class C { diff --git a/gcc/testsuite/g++.old-deja/g++.mike/opr-dot1.C b/gcc/testsuite/g++.old-deja/g++.mike/opr-dot1.C index acef6ad9..a761a40 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/opr-dot1.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/opr-dot1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } typedef struct base1 { int x; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p10148.C b/gcc/testsuite/g++.old-deja/g++.mike/p10148.C index 074724a..20fbf09 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p10148.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p10148.C @@ -1,3 +1,4 @@ +// { dg-do run } // prms-id: 10148 int fail = 1; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p10247.C b/gcc/testsuite/g++.old-deja/g++.mike/p10247.C index c69bc90..76eaebf 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p10247.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p10247.C @@ -1,6 +1,7 @@ +// { dg-do assemble } // prms-id: 10247 class a { public: - int operator++(int) { return operator()++ ; } // ERROR - + int operator++(int) { return operator()++ ; } // { dg-error "" } }; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p10416.C b/gcc/testsuite/g++.old-deja/g++.mike/p10416.C index c2441c1..af82bd4 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p10416.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p10416.C @@ -1,6 +1,5 @@ -// Build don't link: -// Special g++ Options: -fexceptions -// excess errors test - XFAIL sparc64-*-elf arm-*-pe +// { dg-do assemble { xfail sparc64-*-elf arm-*-pe } } +// { dg-options "-fexceptions" } // prms-id: 10416 class not_ok { diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p10511.C b/gcc/testsuite/g++.old-deja/g++.mike/p10511.C index abe12e4..2adce91 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p10511.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p10511.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // prms-id: 10511 class S { diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p10769a.C b/gcc/testsuite/g++.old-deja/g++.mike/p10769a.C index cb49ab7..89cc31d 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p10769a.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p10769a.C @@ -1,4 +1,5 @@ -// Special g++ Options: -Wno-pmf-conversions +// { dg-do run } +// { dg-options "-Wno-pmf-conversions" } // prms-id: 10769 #define PMF2PF(PMF) ((void (*)())(PMF)) @@ -31,7 +32,7 @@ void A::main() { void (A::*mPtr)() = &A::f1a; (*(void (*)(A*))PMF2PF(mPtr))(&a); - (*(void (*)(A*))PMF2PF(f2a))(&a); // gets bogus error XFAIL *-*-* + (*(void (*)(A*))PMF2PF(f2a))(&a); // { dg-bogus "" "" { xfail *-*-* } } } int main() { @@ -40,6 +41,6 @@ int main() { void (A::*mPtr)() = &A::f1b; (*(void (*)(A*))PMF2PF(a.*mPtr))(&a); - (*(void (*)(A*))PMF2PF(a.f2a))(&a); // gets bogus error XFAIL *-*-* + (*(void (*)(A*))PMF2PF(a.f2a))(&a); // { dg-bogus "" "" { xfail *-*-* } } return ok != 3+3+5+5+7+7; } diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p10769b.C b/gcc/testsuite/g++.old-deja/g++.mike/p10769b.C index c9f859d..1ab1cbb 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p10769b.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p10769b.C @@ -1,4 +1,5 @@ -// Special g++ Options: +// { dg-do assemble } +// { dg-options "" } // prms-id: 10769 #define PMF2PF(PMF) ((void (*)())(PMF)) @@ -16,10 +17,10 @@ public: void A::main() { void (B::*mPtrB)(B*); - (*(void (*)(A*))PMF2PF(mPtrB))(&b); // ERROR - + (*(void (*)(A*))PMF2PF(mPtrB))(&b); // { dg-error "" } } int main() { void (A::*mPtr)() = &A::f1a; - (*(void (*)(A*))PMF2PF(mPtr))(&a); // ERROR - + (*(void (*)(A*))PMF2PF(mPtr))(&a); // { dg-error "" } } diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p10849a.C b/gcc/testsuite/g++.old-deja/g++.mike/p10849a.C index d6d4656..96bb064 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p10849a.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p10849a.C @@ -1,3 +1,4 @@ +// { dg-do run } // prms-id: 10849 struct A diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p10951.C b/gcc/testsuite/g++.old-deja/g++.mike/p10951.C index d53775f..352b1a9 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p10951.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p10951.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // prms-id: 10951 inline int m1(const int& a) { diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p11012.C b/gcc/testsuite/g++.old-deja/g++.mike/p11012.C index 407c83a..b851f2c 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p11012.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p11012.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -Wno-pmf-conversions +// { dg-do assemble } +// { dg-options "-Wno-pmf-conversions" } // prms-id: 11012 class Foo { diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p11110.C b/gcc/testsuite/g++.old-deja/g++.mike/p11110.C index 7bb77d2..6be0a08 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p11110.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p11110.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // prms-id: 11110 class data; @@ -5,7 +6,7 @@ class data; class conatiner { public: virtual void* first (); - virtual data* contents (void* i); // ERROR - candidates + virtual data* contents (void* i); // { dg-error "" } candidates }; class user { @@ -16,5 +17,5 @@ private: }; data* user::data1() const { - return (_c.contents (_c.first)); // ERROR - + return (_c.contents (_c.first)); // { dg-error "" } } diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p11142.C b/gcc/testsuite/g++.old-deja/g++.mike/p11142.C index a22ca45..9fee770 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p11142.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p11142.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -fexceptions -O -g +// { dg-do assemble } +// { dg-options "-fexceptions -O -g" } // prms-id: 11142 class RWxmsg { diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p11144.C b/gcc/testsuite/g++.old-deja/g++.mike/p11144.C index 98b9fb0..69fbcda 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p11144.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p11144.C @@ -1,4 +1,5 @@ -// Special g++ Options: -O +// { dg-do run } +// { dg-options "-O" } // prms-id: 11144 class Id { diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p11482.C b/gcc/testsuite/g++.old-deja/g++.mike/p11482.C index f03a422..ff5e7ba 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p11482.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p11482.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // prms-id: 11482 void *vp; @@ -6,5 +6,5 @@ void *vp; enum E { bad, ok } e; void foo() { - e = (E)vp; // ERROR - + e = (E)vp; // { dg-error "" } } diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p11667.C b/gcc/testsuite/g++.old-deja/g++.mike/p11667.C index 5ae0453..802c0cf 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p11667.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p11667.C @@ -1,5 +1,5 @@ -// Special g++ Options: -fexceptions -// excess errors test - XFAIL sparc64-*-elf arm-*-pe +// { dg-do run { xfail sparc64-*-elf arm-*-pe } } +// { dg-options "-fexceptions" } // prms-id: 11667 extern "C" int printf(const char *,...); diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p12306.C b/gcc/testsuite/g++.old-deja/g++.mike/p12306.C index d156c6f..6309016 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p12306.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p12306.C @@ -1,3 +1,4 @@ +// { dg-do run } // prms-id: 12306 void *ptr1, *ptr2; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p12306a.C b/gcc/testsuite/g++.old-deja/g++.mike/p12306a.C index bbcade4..8e47837 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p12306a.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p12306a.C @@ -1,3 +1,4 @@ +// { dg-do run } // prms-id: 12306 // a net report of the same problem as 12306 diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p1248.C b/gcc/testsuite/g++.old-deja/g++.mike/p1248.C index 2ecd071..d54e555 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p1248.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p1248.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed pure-virt extern "C" int printf (const char *, ...); class Base { diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p1567.C b/gcc/testsuite/g++.old-deja/g++.mike/p1567.C index 0b35bd9..4f02d84 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p1567.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p1567.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed vtable extern "C" int printf (const char *, ...); extern "C" void exit(int); diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p16146.C b/gcc/testsuite/g++.old-deja/g++.mike/p16146.C index 070dc2e..733e5ec 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p16146.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p16146.C @@ -1,3 +1,4 @@ +// { dg-do run } // prms-id: 16146 extern "C" int printf (const char *, ...); diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p1862.C b/gcc/testsuite/g++.old-deja/g++.mike/p1862.C index 401b370..9cb8fb8 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p1862.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p1862.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS vtable extern "C" int printf (const char *, ...); diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p1989.C b/gcc/testsuite/g++.old-deja/g++.mike/p1989.C index 7e18869..30c7e51 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p1989.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p1989.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // prms-id: 1989 #define TRUE true @@ -196,7 +196,7 @@ Pix List_DLS<T>::search(const T& item) const { for (Pix x=first(); 0 != x; next(x)) { - if (item == operator()(x)) // ERROR - const subversion + if (item == operator()(x)) // { dg-error "" } const subversion return x; } return 0; @@ -334,9 +334,9 @@ struct vertex { T item; List_DL<vertex<T> *> fanout; - vertex(): item(), fanout() // gets bogus error + vertex(): item(), fanout() // { dg-bogus "" } { }; - vertex(const T& i): item(), fanout() // gets bogus error + vertex(const T& i): item(), fanout() // { dg-bogus "" } { }; }; @@ -485,8 +485,8 @@ class STRLIdentifier { char buf[10]; }; -extern int operator==(vertex<STRLIdentifier*>&, vertex<STRLIdentifier*>&); // ERROR - const subversion -extern int operator==(STRLIdentifier&, STRLIdentifier&); // ERROR - fn ref in err msg +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 x(List_DLSp<STRLIdentifier *>); diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p2394.C b/gcc/testsuite/g++.old-deja/g++.mike/p2394.C index ce335c4..6581f9f 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p2394.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p2394.C @@ -1,3 +1,4 @@ +// { dg-do run } // prms-id: 2394 class Foo { diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p2431.C b/gcc/testsuite/g++.old-deja/g++.mike/p2431.C index 17a76fa..897adfd 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p2431.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p2431.C @@ -1,9 +1,9 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed infinite_loop class A { public: - A(A &); // ERROR - candidates are + A(A &); // { dg-error "" } candidates are }; class B @@ -18,6 +18,6 @@ class C C() { B b; - A a = b;// ERROR - + A a = b;// { dg-error "" } } }; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p2573.C b/gcc/testsuite/g++.old-deja/g++.mike/p2573.C index 9e3ddee..0906979 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p2573.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p2573.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // prms-id: 2573 class X { @@ -8,7 +9,7 @@ public: }; char *X::add() { - char *f1 = (char *) &key; // ERROR - - char *f2 = (char *) &vkey; // ERROR - + char *f1 = (char *) &key; // { dg-error "" } + char *f2 = (char *) &vkey; // { dg-error "" } return f1; } diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p2736.C b/gcc/testsuite/g++.old-deja/g++.mike/p2736.C index 43d81e4..a0a8b31 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p2736.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p2736.C @@ -1,3 +1,4 @@ +// { dg-do run } // This is a poor test case, it is meant to ensure that function local // statics are destroyed at the right time. See PR 2736 for details. // prms-id: 2736 diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p2746.C b/gcc/testsuite/g++.old-deja/g++.mike/p2746.C index fdc37d13..1bc1ce3 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p2746.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p2746.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed scope pt class Link { public: diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p2793.C b/gcc/testsuite/g++.old-deja/g++.mike/p2793.C index 73bf23f..68fee7d 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p2793.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p2793.C @@ -1,6 +1,6 @@ -// Build don't link: +// { dg-do assemble } // prms-id: 2793 -void f(char&) { // ERROR - referenced by error below - f('c'); // ERROR - +void f(char&) { // { dg-error "" } referenced by error below + f('c'); // { dg-error "" } } diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p2806.C b/gcc/testsuite/g++.old-deja/g++.mike/p2806.C index 401b5ec..71d5139 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p2806.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p2806.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed template<class T> class List diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p2846.C b/gcc/testsuite/g++.old-deja/g++.mike/p2846.C index 2849491..bce20bb 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p2846.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p2846.C @@ -1,3 +1,4 @@ +// { dg-do run } // prms-id: 2846 extern "C" int printf(const char *, ...); diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p2846a.C b/gcc/testsuite/g++.old-deja/g++.mike/p2846a.C index 8606e42..8825de4 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p2846a.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p2846a.C @@ -1,3 +1,4 @@ +// { dg-do run } // Shows that problem of initializing one object's vtable pointer from // another object's vtable pointer when doing a default copy of it // and the vtable pointer involved is the main one. diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p2846b.C b/gcc/testsuite/g++.old-deja/g++.mike/p2846b.C index acba70d6..57422fe 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p2846b.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p2846b.C @@ -1,3 +1,4 @@ +// { dg-do run } // Shows that problem of initializing one object's secondary base from // another object via a user defined copy constructor for that base, // the pointer for the secondary vtable is not set after implicit diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p2855.C b/gcc/testsuite/g++.old-deja/g++.mike/p2855.C index 9c99bd7..def0a1f 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p2855.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p2855.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -Wcast-qual +// { dg-do assemble } +// { dg-options "-Wcast-qual" } // prms-id: 2855 class Ctest { @@ -16,6 +16,6 @@ Ctest::operator const char *() const int main() { Ctest obj; - char* temp = (char *)obj; // WARNING - + char* temp = (char *)obj; // { dg-warning "" } temp[0] = '\0'; } diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p2960.C b/gcc/testsuite/g++.old-deja/g++.mike/p2960.C index 4206e75..510decd 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p2960.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p2960.C @@ -1,3 +1,4 @@ +// { dg-do run } // prms-id: 2960 extern "C" int printf(const char *, ...); diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p3041.C b/gcc/testsuite/g++.old-deja/g++.mike/p3041.C index fd83eaf..189d2f3 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p3041.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p3041.C @@ -1,3 +1,4 @@ +// { dg-do run } // prms-id: 3041 class A { diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p3060c.C b/gcc/testsuite/g++.old-deja/g++.mike/p3060c.C index e26b802..1332c62 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p3060c.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p3060c.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // A new problem with my pointer to member function work. -// Build don't link: // prms-id: 3060 class Foo @@ -11,7 +11,7 @@ class Foo operator int (); }; -int Foo::operator int() { return x; } // WARNING - can't specify return type +int Foo::operator int() { return x; } // { dg-warning "" } can't specify return type Foo foo(10, 11); diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p3060d.C b/gcc/testsuite/g++.old-deja/g++.mike/p3060d.C index 5cf4fdd..26026c3 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p3060d.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p3060d.C @@ -1,3 +1,4 @@ +// { dg-do run } // This is a test case to make sure the explicit cast on a pointer to // a member function works ok. // prms-id: 3060 diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p3068.C b/gcc/testsuite/g++.old-deja/g++.mike/p3068.C index 2436c8b..65dab70 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p3068.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p3068.C @@ -1,3 +1,4 @@ +// { dg-do run } // prms-id: 3068 extern "C" int printf(const char *, ...); diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p3070.C b/gcc/testsuite/g++.old-deja/g++.mike/p3070.C index c927873..b292d41 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p3070.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p3070.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Caused an Internal Compiler Error. Works now. // prms-id: 3070 diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p3139.C b/gcc/testsuite/g++.old-deja/g++.mike/p3139.C index 192fa72..6910178 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p3139.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p3139.C @@ -1,3 +1,4 @@ +// { dg-do run } // prms-id: 3139 extern "C" int printf(const char *, ...); diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p3524a.C b/gcc/testsuite/g++.old-deja/g++.mike/p3524a.C index 0995f35..1b0afede 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p3524a.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p3524a.C @@ -1,7 +1,7 @@ +// { dg-do assemble } // Make sure we can initialize a reference to a templated type, that // requires a conversion from a derived type to a base type. -// Build don't link: // prms-id: 3524 struct cc2Vector diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p3524b.C b/gcc/testsuite/g++.old-deja/g++.mike/p3524b.C index c645d4c..34d1060 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p3524b.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p3524b.C @@ -1,7 +1,7 @@ +// { dg-do assemble } // Make sure we can cast to a templated type, that requires a conversion by // constructor, from a derived type to a base type. -// Build don't link: // prms-id: 3524 template <class T> diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p3524c.C b/gcc/testsuite/g++.old-deja/g++.mike/p3524c.C index d901e19..2f5d23b 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p3524c.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p3524c.C @@ -1,7 +1,7 @@ +// { dg-do assemble } // Make sure we can cast to a templated type, that requires a conversion by // constructor, from a non-aggregate type. -// Build don't link: // prms-id: 3524 template <class T> diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p3538a.C b/gcc/testsuite/g++.old-deja/g++.mike/p3538a.C index 6335c96..1da61f3 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p3538a.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p3538a.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // This tests for the compiler_error in binfo_value. // prms-id: 3538 @@ -25,7 +25,7 @@ class ccHandleBase : public ccObjectInfo {}; class cc_CircleHdl : public virtual ccHandleBase, public ccObjectInfo -{ // WARNING - +{ // { dg-warning "" } public: virtual const ccObjectInfo& ri (int); }; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p3538b.C b/gcc/testsuite/g++.old-deja/g++.mike/p3538b.C index b9bead0..e9fcb0c 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p3538b.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p3538b.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // prms-id: 3538 // This tests for an ambiguous conversion of the this pointer (going @@ -27,7 +27,7 @@ class ccHandleBase : public ccObjectInfo {}; class cc_CircleHdl : public virtual ccHandleBase, public ccObjectInfo -{ // WARNING - +{ // { dg-warning "" } public: virtual const ccObjectInfo& repInvariant (int); }; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p3570.C b/gcc/testsuite/g++.old-deja/g++.mike/p3570.C index 1213a96..78ce6b4 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p3570.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p3570.C @@ -1,3 +1,4 @@ +// { dg-do run } // prms-id: 3570 extern "C" int printf(const char *, ...); diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p3579.C b/gcc/testsuite/g++.old-deja/g++.mike/p3579.C index 3729650..90a1344 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p3579.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p3579.C @@ -1,3 +1,4 @@ +// { dg-do run } // prms-id: 3579 extern "C" int printf(const char *, ...); diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p3708.C b/gcc/testsuite/g++.old-deja/g++.mike/p3708.C index c34c20c..56e4bcb 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p3708.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p3708.C @@ -1,3 +1,4 @@ +// { dg-do run } // prms-id: 3708 extern "C" int printf (const char *, ...); diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p3708a.C b/gcc/testsuite/g++.old-deja/g++.mike/p3708a.C index 6eeac35..dff53b5 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p3708a.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p3708a.C @@ -1,3 +1,4 @@ +// { dg-do run } // prms-id: 3708 extern "C" int printf (const char *, ...); diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p3708b.C b/gcc/testsuite/g++.old-deja/g++.mike/p3708b.C index 9816cc4..2cccc46 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p3708b.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p3708b.C @@ -1,3 +1,4 @@ +// { dg-do run } // prms-id: 3708 extern "C" int printf (const char *, ...); diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p3764.C b/gcc/testsuite/g++.old-deja/g++.mike/p3764.C index d052755..5a833b3 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p3764.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p3764.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // prms-id: 3764 class Menu; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p3836.C b/gcc/testsuite/g++.old-deja/g++.mike/p3836.C index c62530f..77f859b 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p3836.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p3836.C @@ -1,6 +1,7 @@ +// { dg-do assemble } // prms-id: 3836 -void f(int &i) { // ERROR - ref line +void f(int &i) { // { dg-error "" } ref line i = 10; } @@ -8,7 +9,7 @@ int main() { int i=1, j=2; f(i); - f((int)j); // ERROR - passing in to non-const + f((int)j); // { dg-error "" } passing in to non-const if (j != 2) return 1; } diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p4068.C b/gcc/testsuite/g++.old-deja/g++.mike/p4068.C index fbdf02e..1e65adc 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p4068.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p4068.C @@ -1,3 +1,4 @@ +// { dg-do run } // prms-id: 4068 struct A { diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p4104.C b/gcc/testsuite/g++.old-deja/g++.mike/p4104.C index 7559034..0f61cd2 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p4104.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p4104.C @@ -1,3 +1,4 @@ +// { dg-do run } // prms-id: 4104 template <class T> diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p4173.C b/gcc/testsuite/g++.old-deja/g++.mike/p4173.C index 7d07ffd..e07bc06 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p4173.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p4173.C @@ -1,9 +1,9 @@ +// { dg-do assemble } +// { dg-options "-Wall -ansi -pedantic-errors" } // This error happens because lvalue is not done well in the C++ front-end. // NOPs should be lvalues if their arguments are. // NON_LVALUE_EXPRs shouldn't be. -// Special g++ Options: -Wall -ansi -pedantic-errors -// Build don't link: // prms-id: 4173 enum TypeKind { @@ -22,5 +22,5 @@ TypeKind c; int main() { a.kind = b.kind = c; - (a.kind = c) = b.kind; // gets bogus error + (a.kind = c) = b.kind; // { dg-bogus "" } } diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p418.C b/gcc/testsuite/g++.old-deja/g++.mike/p418.C index 6e868c7..4128840 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p418.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p418.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // prms-id: 418 class Base { @@ -11,8 +11,8 @@ public: int bar; }; -void func(Base&); // ERROR - referenced by error below +void func(Base&); // { dg-error "" } referenced by error below void func2(const Derived& d) { - func(d); // ERROR - should be error because of const + func(d); // { dg-error "" } should be error because of const } diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p4238.C b/gcc/testsuite/g++.old-deja/g++.mike/p4238.C index 2499a6d..48d30ce 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p4238.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p4238.C @@ -1,7 +1,7 @@ +// { dg-do assemble } // This showed a problem with default op= -// Build don't link: // prms-id: 4238 struct sigcontext { int sc_wbuf[31][25]; -}; // gets bogus error - default op= seems broken +}; // { dg-bogus "" } default op= seems broken diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p4246.C b/gcc/testsuite/g++.old-deja/g++.mike/p4246.C index a610f70..c81ae75 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p4246.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p4246.C @@ -1,3 +1,4 @@ +// { dg-do run } // prms-id: 4246 extern "C" void abort (); diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p4263.C b/gcc/testsuite/g++.old-deja/g++.mike/p4263.C index 65d5150..7a49c2b 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p4263.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p4263.C @@ -1,12 +1,13 @@ +// { dg-do assemble } // prms-id: 4263 enum OT {A_type, B_Type}; enum AT {A, B}; /* These are not ok. */ -OT t = A; // ERROR - -OT e2 = 1; // ERROR - -OT e3 = 1.1; // ERROR - +OT t = A; // { dg-error "" } +OT e2 = 1; // { dg-error "" } +OT e3 = 1.1; // { dg-error "" } /* These are ok. */ int i = A; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p438.C b/gcc/testsuite/g++.old-deja/g++.mike/p438.C index 9afab63..c2bdce3 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p438.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p438.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // prms-id: 438 class D; @@ -12,12 +12,12 @@ class C class D { public: - void a(C& b); // ERROR - referenced below + void a(C& b); // { dg-error "" } referenced below }; void C::test() const { D d; - d.a(*this); // ERROR - *this is const, so should get error + d.a(*this); // { dg-error "" } *this is const, so should get error } diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p4484.C b/gcc/testsuite/g++.old-deja/g++.mike/p4484.C index 64aab16..b0ec0c9 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p4484.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p4484.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // prms-id: 4484 class A { diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p4511.C b/gcc/testsuite/g++.old-deja/g++.mike/p4511.C index e8555da..af9b386 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p4511.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p4511.C @@ -1,3 +1,4 @@ +// { dg-do run } // prms-id: 4511 int bad; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p4619.C b/gcc/testsuite/g++.old-deja/g++.mike/p4619.C index 8b77258..866146a 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p4619.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p4619.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // prms-id: 4619 int main() { diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p4623.C b/gcc/testsuite/g++.old-deja/g++.mike/p4623.C index a2c62cf..f602c9f 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p4623.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p4623.C @@ -1,3 +1,4 @@ +// { dg-do run } // prms-id: 4623 class base { diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p4667.C b/gcc/testsuite/g++.old-deja/g++.mike/p4667.C index 751a566..e8eee21 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p4667.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p4667.C @@ -1,3 +1,4 @@ +// { dg-do run } // prms-id: 4667 int counter = 0; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p4671.C b/gcc/testsuite/g++.old-deja/g++.mike/p4671.C index 68f3ee1..54b182c 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p4671.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p4671.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // prms-id: 4671 class ccUnwind { diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p4677.C b/gcc/testsuite/g++.old-deja/g++.mike/p4677.C index 463033c..92f0f39 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p4677.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p4677.C @@ -1,9 +1,9 @@ -// Build don't link: +// { dg-do assemble } // prms-id: 4677 struct A { A(double d) { } }; -struct B { B(A) { } } bad = 1; // ERROR - +struct B { B(A) { } } bad = 1; // { dg-error "" } B good (1); diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p4693.C b/gcc/testsuite/g++.old-deja/g++.mike/p4693.C index b0d0d88..67d040e 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p4693.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p4693.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // prms-id: 4693 class a { diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p4736a.C b/gcc/testsuite/g++.old-deja/g++.mike/p4736a.C index a6e3aef..f50dbcd 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p4736a.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p4736a.C @@ -1,3 +1,4 @@ +// { dg-do run } // prms-id: 4736 int did_fail = 1; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p4736b.C b/gcc/testsuite/g++.old-deja/g++.mike/p4736b.C index 0978f0b..c2fce17 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p4736b.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p4736b.C @@ -1,3 +1,4 @@ +// { dg-do run } // prms-id: 4736 class Rep { diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p4736c.C b/gcc/testsuite/g++.old-deja/g++.mike/p4736c.C index f76b06a..d260b3a 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p4736c.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p4736c.C @@ -1,3 +1,4 @@ +// { dg-do run } // prms-id: 4736 int did_fail; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p4750.C b/gcc/testsuite/g++.old-deja/g++.mike/p4750.C index b404cc0..ccf462b 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p4750.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p4750.C @@ -1,6 +1,5 @@ -// Build don't link: -// Skip if not native -// Special g++ Options: -fpic -pedantic-errors -S +// { dg-do assemble { target native } } +// { dg-options "-fpic -pedantic-errors -S" } // prms-id: 4750 extern const int FRAME_VEC_MAX; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p5469.C b/gcc/testsuite/g++.old-deja/g++.mike/p5469.C index 9af2010..8c82c7e 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p5469.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p5469.C @@ -1,3 +1,4 @@ +// { dg-do run } // prms-id: 5469 int count; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p5469a.C b/gcc/testsuite/g++.old-deja/g++.mike/p5469a.C index 0783f77..03a3984 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p5469a.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p5469a.C @@ -1,3 +1,4 @@ +// { dg-do run } // prms-id: 5469 int count; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p5571.C b/gcc/testsuite/g++.old-deja/g++.mike/p5571.C index ec350ea..fa42920 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p5571.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p5571.C @@ -1,3 +1,4 @@ +// { dg-do run } // prms-id: 5571 int err = 0; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p5611.C b/gcc/testsuite/g++.old-deja/g++.mike/p5611.C index 557d2cc..cd173c3 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p5611.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p5611.C @@ -1,3 +1,4 @@ +// { dg-do run } // prms-id: 5611 int main(void) diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p5673.C b/gcc/testsuite/g++.old-deja/g++.mike/p5673.C index d972ab0..759d5d8 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p5673.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p5673.C @@ -1,3 +1,4 @@ +// { dg-do run } // prms-id: 5673 class A { diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p5718.C b/gcc/testsuite/g++.old-deja/g++.mike/p5718.C index 8858d38..f021d95 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p5718.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p5718.C @@ -1,3 +1,4 @@ +// { dg-do run } // prms-id: 5718 class Base { @@ -25,7 +26,7 @@ void testFunct(Derived * arg) { Mixin temp; - (Mixin &)(*arg) = temp; // gets bogus error + (Mixin &)(*arg) = temp; // { dg-bogus "" } } diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p5793.C b/gcc/testsuite/g++.old-deja/g++.mike/p5793.C index 53469cd..db6e658 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p5793.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p5793.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // prms-id: 5793 class temp_string { diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p5840.C b/gcc/testsuite/g++.old-deja/g++.mike/p5840.C index 34dd37d..1cd0330 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p5840.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p5840.C @@ -1,3 +1,4 @@ +// { dg-do run } // prms-id: 5840 class Signal { diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p5958.C b/gcc/testsuite/g++.old-deja/g++.mike/p5958.C index 20d45f2..666a449 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p5958.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p5958.C @@ -1,4 +1,5 @@ -// Special g++ Options: -ansi +// { dg-do run } +// { dg-options "-ansi" } // prms-id: 5958 class A { }; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p6004.C b/gcc/testsuite/g++.old-deja/g++.mike/p6004.C index b692365..2b262bd 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p6004.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p6004.C @@ -1,4 +1,5 @@ -// Special g++ Options: +// { dg-do run } +// { dg-options "" } // prms-id: 6004 class A { diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p6058.C b/gcc/testsuite/g++.old-deja/g++.mike/p6058.C index 1c0c622..3146e54 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p6058.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p6058.C @@ -1,18 +1,18 @@ -// Build don't link: -// Special g++ Options: -fexceptions -pedantic-errors +// { dg-do assemble } +// { dg-options "-fexceptions -pedantic-errors" } // prms-id: 6058 -void bar(struct s1 { } a) { (void)a; } // ERROR - +void bar(struct s1 { } a) { (void)a; } // { dg-error "" } struct s2*fooey() { try { - static_cast<struct s3 { } *>(0); // ERROR - - const_cast<struct s4 { } *>((s4*)0); // ERROR - - reinterpret_cast<struct s5 { } *>((s3*)0); // ERROR - - dynamic_cast<struct s6 { } *>((s6*)0); // ERROR - - (struct s7 { } *)(int*)0xffedec; // ERROR - - } catch (struct s8 { } s) { // ERROR - + static_cast<struct s3 { } *>(0); // { dg-error "" } + const_cast<struct s4 { } *>((s4*)0); // { dg-error "" } + reinterpret_cast<struct s5 { } *>((s3*)0); // { dg-error "" } + dynamic_cast<struct s6 { } *>((s6*)0); // { dg-error "" } + (struct s7 { } *)(int*)0xffedec; // { dg-error "" } + } catch (struct s8 { } s) { // { dg-error "" } } return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p6149.C b/gcc/testsuite/g++.old-deja/g++.mike/p6149.C index 578ee8b..d7b8196 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p6149.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p6149.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // prms-id: 6149 -int a[3 - sizeof(double)]; // ERROR - +int a[3 - sizeof(double)]; // { dg-error "" } diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p6311.C b/gcc/testsuite/g++.old-deja/g++.mike/p6311.C index a0ef8c8..309a083 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p6311.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p6311.C @@ -1,3 +1,4 @@ +// { dg-do run } // prms-id: 6311 struct Foo { diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p646.C b/gcc/testsuite/g++.old-deja/g++.mike/p646.C index 226ac3a..6d5abcd 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p646.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p646.C @@ -1,3 +1,5 @@ +// { dg-do assemble } +// { dg-options "-Wno-deprecated -Wreturn-type" } // GROUPS passed i960 /* Bug Id: bnr @@ -6,7 +8,6 @@ */ -// Special g++ Options: -Wno-deprecated -Wreturn-type extern "C" { @@ -100,7 +101,7 @@ warn_return_1 () { foo f; printf ("returning 1\n"); -} // WARNING - control reaches end +} // { dg-warning "" } control reaches end int warn_return_arg (int arg) @@ -108,7 +109,7 @@ warn_return_arg (int arg) foo f; printf ("returning %d\n", arg); arg; -} // WARNING - control reaches end +} // { dg-warning "" } control reaches end int warn_return_sum (int x, int y) @@ -116,23 +117,23 @@ warn_return_sum (int x, int y) foo f; printf ("returning %d+%d\n", x, y); x + y; -} // WARNING - control reaches end +} // { dg-warning "" } control reaches end foo warn_return_foo () { foo f; printf ("returning foo\n"); -} // WARNING - control reaches end +} // { dg-warning "" } control reaches end foo warn_foo_parm_returns_foo (foo f) { f; -} // WARNING - control reaches end +} // { dg-warning "" } control reaches end main () -{ // WARNING - no type +{ // { dg-warning "" } no type int ii = return_1 (); if (ii != 1) abort_because ("wrong value returned"); diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p6578.C b/gcc/testsuite/g++.old-deja/g++.mike/p6578.C index 2b19e86..d738f3c 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p6578.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p6578.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // prms-id: 6578 struct A { diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p658.C b/gcc/testsuite/g++.old-deja/g++.mike/p658.C index b9137fb..1a4fefd 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p658.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p658.C @@ -1,3 +1,4 @@ +// { dg-do run } // prms-id: 658 #include <iostream> diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p6610a.C b/gcc/testsuite/g++.old-deja/g++.mike/p6610a.C index 2ec79fa..4870e07 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p6610a.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p6610a.C @@ -1,3 +1,4 @@ +// { dg-do run } // prms-id: 6610 // There is a bug in vtable thunks with multiple/virtual inheritance. diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p6610b.C b/gcc/testsuite/g++.old-deja/g++.mike/p6610b.C index 8ec637e..664a0ca 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p6610b.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p6610b.C @@ -1,3 +1,4 @@ +// { dg-do run } // prms-id: 6610 int fail = 1; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p6611.C b/gcc/testsuite/g++.old-deja/g++.mike/p6611.C index 3d972cb..9a2a28e 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p6611.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p6611.C @@ -1,3 +1,4 @@ +// { dg-do run } // prms-id: 6611 class COMPLEX { diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p6746.C b/gcc/testsuite/g++.old-deja/g++.mike/p6746.C index 764310f..11829f8 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p6746.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p6746.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // prms-id: 6746 class call_trace { diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p6901.C b/gcc/testsuite/g++.old-deja/g++.mike/p6901.C index 8329294..0d55c8d 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p6901.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p6901.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // prms-id: 6901 void green() { diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p6927.C b/gcc/testsuite/g++.old-deja/g++.mike/p6927.C index 7a0ec42..22b4875 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p6927.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p6927.C @@ -1,3 +1,4 @@ +// { dg-do run } // prms-id: 6927 class Object { diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p700.C b/gcc/testsuite/g++.old-deja/g++.mike/p700.C index 814604f..ef1d5bf 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p700.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p700.C @@ -1,4 +1,5 @@ -// Special g++ Options: -Wno-deprecated +// { dg-do assemble } +// { dg-options "-Wno-deprecated" } // prms-id: 700 //# 1 "../../../../libg++/etc/benchmarks/dhrystone.cc" @@ -222,7 +223,7 @@ inline void Int::operator >>=(const int b) inline int& operator = (int& a, const Int & b) -{ a = b.Int::val(); return a;} // WARNING - +{ a = b.Int::val(); return a;} // { dg-warning "" } inline int& operator += (int& a, const Int & b) { a += b.Int::val(); return a; } inline int& operator -= (int& a, const Int & b) @@ -249,73 +250,73 @@ inline int& operator >>=(int& a, const Int & b) //# 289 "../../../../libg++/etc/benchmarks/Int.h" -inline Int operator - (const Int & a) return r(a) // ERROR - -{ r.negate(); } // ERROR - -inline Int operator ~ (const Int & a) return r(a) // ERROR - -{ r.complement(); } // ERROR - - -inline Int operator + (const Int & a, const Int & b) return r(a) // ERROR - -{ r += b.Int::val(); } // ERROR - -inline Int operator - (const Int & a, const Int & b) return r(a) // ERROR - -{ r -= b.Int::val(); } // ERROR - -inline Int operator * (const Int & a, const Int & b) return r(a) // ERROR - -{ r *= b.Int::val(); } // ERROR - -inline Int operator / (const Int & a, const Int & b) return r(a) // ERROR - -{ r /= b.Int::val(); } // ERROR - -inline Int operator % (const Int & a, const Int & b) return r(a) // ERROR - -{ r %= b.Int::val(); } // ERROR - -inline Int operator << (const Int & a, const Int & b) return r(a) // ERROR - -{ r <<= b.Int::val(); } // ERROR - -inline Int operator >> (const Int & a, const Int & b) return r(a) // ERROR - -{ r >>= b.Int::val(); } // ERROR - -inline Int operator & (const Int & a, const Int & b) return r(a) // ERROR - -{ r &= b.Int::val(); } // ERROR - -inline Int operator | (const Int & a, const Int & b) return r(a) // ERROR - -{ r |= b.Int::val(); } // ERROR - -inline Int operator ^ (const Int & a, const Int & b) return r(a) // ERROR - -{ r ^= b.Int::val(); } // ERROR - - -inline Int operator + (const Int & a, const int b) return r(a) // ERROR - -{ r += b; } // ERROR - -inline Int operator - (const Int & a, const int b) return r(a) // ERROR - -{ r -= b; } // ERROR - -inline Int operator * (const Int & a, const int b) return r(a) // ERROR - -{ r *= b; } // ERROR - -inline Int operator / (const Int & a, const int b) return r(a) // ERROR - -{ r /= b; } // ERROR - -inline Int operator % (const Int & a, const int b) return r(a) // ERROR - -{ r %= b; } // ERROR - -inline Int operator << (const Int & a, const int b) return r(a) // ERROR - -{ r <<= b; } // ERROR - -inline Int operator >> (const Int & a, const int b) return r(a) // ERROR - -{ r >>= b; } // ERROR - -inline Int operator & (const Int & a, const int b) return r(a) // ERROR - -{ r &= b; } // ERROR - -inline Int operator | (const Int & a, const int b) return r(a) // ERROR - -{ r |= b; } // ERROR - -inline Int operator ^ (const Int & a, const int b) return r(a) // ERROR - -{ r ^= b; } // ERROR - - -inline Int operator + (const int a, const Int & b) return r(a) // ERROR - -{ r += b.Int::val(); } // ERROR - -inline Int operator - (const int a, const Int & b) return r(a) // ERROR - -{ r -= b.Int::val(); } // ERROR - -inline Int operator * (const int a, const Int & b) return r(a) // ERROR - -{ r *= b.Int::val(); } // ERROR - -inline Int operator / (const int a, const Int & b) return r(a) // ERROR - -{ r /= b.Int::val(); } // ERROR - -inline Int operator % (const int a, const Int & b) return r(a) // ERROR - -{ r %= b.Int::val(); } // ERROR - -inline Int operator << (const int a, const Int & b) return r(a) // ERROR - -{ r <<= b.Int::val(); } // ERROR - -inline Int operator >> (const int a, const Int & b) return r(a) // ERROR - -{ r >>= b.Int::val(); } // ERROR - -inline Int operator & (const int a, const Int & b) return r(a) // ERROR - -{ r &= b.Int::val(); } // ERROR - -inline Int operator | (const int a, const Int & b) return r(a) // ERROR - -{ r |= b.Int::val(); } // ERROR - -inline Int operator ^ (const int a, const Int & b) return r(a) // ERROR - -{ r ^= b.Int::val(); } // ERROR - +inline Int operator - (const Int & a) return r(a) // { dg-error "" } +{ r.negate(); } // { dg-error "" } +inline Int operator ~ (const Int & a) return r(a) // { dg-error "" } +{ r.complement(); } // { dg-error "" } + +inline Int operator + (const Int & a, const Int & b) return r(a) // { dg-error "" } +{ r += b.Int::val(); } // { dg-error "" } +inline Int operator - (const Int & a, const Int & b) return r(a) // { dg-error "" } +{ r -= b.Int::val(); } // { dg-error "" } +inline Int operator * (const Int & a, const Int & b) return r(a) // { dg-error "" } +{ r *= b.Int::val(); } // { dg-error "" } +inline Int operator / (const Int & a, const Int & b) return r(a) // { dg-error "" } +{ r /= b.Int::val(); } // { dg-error "" } +inline Int operator % (const Int & a, const Int & b) return r(a) // { dg-error "" } +{ r %= b.Int::val(); } // { dg-error "" } +inline Int operator << (const Int & a, const Int & b) return r(a) // { dg-error "" } +{ r <<= b.Int::val(); } // { dg-error "" } +inline Int operator >> (const Int & a, const Int & b) return r(a) // { dg-error "" } +{ r >>= b.Int::val(); } // { dg-error "" } +inline Int operator & (const Int & a, const Int & b) return r(a) // { dg-error "" } +{ r &= b.Int::val(); } // { dg-error "" } +inline Int operator | (const Int & a, const Int & b) return r(a) // { dg-error "" } +{ r |= b.Int::val(); } // { dg-error "" } +inline Int operator ^ (const Int & a, const Int & b) return r(a) // { dg-error "" } +{ r ^= b.Int::val(); } // { dg-error "" } + +inline Int operator + (const Int & a, const int b) return r(a) // { dg-error "" } +{ r += b; } // { dg-error "" } +inline Int operator - (const Int & a, const int b) return r(a) // { dg-error "" } +{ r -= b; } // { dg-error "" } +inline Int operator * (const Int & a, const int b) return r(a) // { dg-error "" } +{ r *= b; } // { dg-error "" } +inline Int operator / (const Int & a, const int b) return r(a) // { dg-error "" } +{ r /= b; } // { dg-error "" } +inline Int operator % (const Int & a, const int b) return r(a) // { dg-error "" } +{ r %= b; } // { dg-error "" } +inline Int operator << (const Int & a, const int b) return r(a) // { dg-error "" } +{ r <<= b; } // { dg-error "" } +inline Int operator >> (const Int & a, const int b) return r(a) // { dg-error "" } +{ r >>= b; } // { dg-error "" } +inline Int operator & (const Int & a, const int b) return r(a) // { dg-error "" } +{ r &= b; } // { dg-error "" } +inline Int operator | (const Int & a, const int b) return r(a) // { dg-error "" } +{ r |= b; } // { dg-error "" } +inline Int operator ^ (const Int & a, const int b) return r(a) // { dg-error "" } +{ r ^= b; } // { dg-error "" } + +inline Int operator + (const int a, const Int & b) return r(a) // { dg-error "" } +{ r += b.Int::val(); } // { dg-error "" } +inline Int operator - (const int a, const Int & b) return r(a) // { dg-error "" } +{ r -= b.Int::val(); } // { dg-error "" } +inline Int operator * (const int a, const Int & b) return r(a) // { dg-error "" } +{ r *= b.Int::val(); } // { dg-error "" } +inline Int operator / (const int a, const Int & b) return r(a) // { dg-error "" } +{ r /= b.Int::val(); } // { dg-error "" } +inline Int operator % (const int a, const Int & b) return r(a) // { dg-error "" } +{ r %= b.Int::val(); } // { dg-error "" } +inline Int operator << (const int a, const Int & b) return r(a) // { dg-error "" } +{ r <<= b.Int::val(); } // { dg-error "" } +inline Int operator >> (const int a, const Int & b) return r(a) // { dg-error "" } +{ r >>= b.Int::val(); } // { dg-error "" } +inline Int operator & (const int a, const Int & b) return r(a) // { dg-error "" } +{ r &= b.Int::val(); } // { dg-error "" } +inline Int operator | (const int a, const Int & b) return r(a) // { dg-error "" } +{ r |= b.Int::val(); } // { dg-error "" } +inline Int operator ^ (const int a, const Int & b) return r(a) // { dg-error "" } +{ r ^= b.Int::val(); } // { dg-error "" } @@ -561,7 +562,7 @@ inline void Char::operator >>=(const char b) inline char& operator = (char& a, const Char & b) -{ a = b.Char::val(); return a;} // WARNING - +{ a = b.Char::val(); return a;} // { dg-warning "" } inline char& operator += (char& a, const Char & b) { a += b.Char::val(); return a; } inline char& operator -= (char& a, const Char & b) @@ -588,73 +589,73 @@ inline char& operator >>=(char& a, const Char & b) //# 291 "../../../../libg++/etc/benchmarks/Char.h" -inline Char operator - (const Char & a) return r(a) // ERROR - -{ r.negate(); } // ERROR - -inline Char operator ~ (const Char & a) return r(a) // ERROR - -{ r.complement(); } // ERROR - - -inline Char operator + (const Char & a, const Char & b) return r(a) // ERROR - -{ r += b.Char::val(); } // ERROR - -inline Char operator - (const Char & a, const Char & b) return r(a) // ERROR - -{ r -= b.Char::val(); } // ERROR - -inline Char operator * (const Char & a, const Char & b) return r(a) // ERROR - -{ r *= b.Char::val(); } // ERROR - -inline Char operator / (const Char & a, const Char & b) return r(a) // ERROR - -{ r /= b.Char::val(); } // ERROR - -inline Char operator % (const Char & a, const Char & b) return r(a) // ERROR - -{ r %= b.Char::val(); } // ERROR - -inline Char operator << (const Char & a, const Char & b) return r(a) // ERROR - -{ r <<= b.Char::val(); } // ERROR - -inline Char operator >> (const Char & a, const Char & b) return r(a) // ERROR - -{ r >>= b.Char::val(); } // ERROR - -inline Char operator & (const Char & a, const Char & b) return r(a) // ERROR - -{ r &= b.Char::val(); } // ERROR - -inline Char operator | (const Char & a, const Char & b) return r(a) // ERROR - -{ r |= b.Char::val(); } // ERROR - -inline Char operator ^ (const Char & a, const Char & b) return r(a) // ERROR - -{ r ^= b.Char::val(); } // ERROR - - -inline Char operator + (const Char & a, const char b) return r(a) // ERROR - -{ r += b; } // ERROR - -inline Char operator - (const Char & a, const char b) return r(a) // ERROR - -{ r -= b; } // ERROR - -inline Char operator * (const Char & a, const char b) return r(a) // ERROR - -{ r *= b; } // ERROR - -inline Char operator / (const Char & a, const char b) return r(a) // ERROR - -{ r /= b; } // ERROR - -inline Char operator % (const Char & a, const char b) return r(a) // ERROR - -{ r %= b; } // ERROR - -inline Char operator << (const Char & a, const char b) return r(a) // ERROR - -{ r <<= b; } // ERROR - -inline Char operator >> (const Char & a, const char b) return r(a) // ERROR - -{ r >>= b; } // ERROR - -inline Char operator & (const Char & a, const char b) return r(a) // ERROR - -{ r &= b; } // ERROR - -inline Char operator | (const Char & a, const char b) return r(a) // ERROR - -{ r |= b; } // ERROR - -inline Char operator ^ (const Char & a, const char b) return r(a) // ERROR - -{ r ^= b; } // ERROR - - -inline Char operator + (const char a, const Char & b) return r(a) // ERROR - -{ r += b.Char::val(); } // ERROR - -inline Char operator - (const char a, const Char & b) return r(a) // ERROR - -{ r -= b.Char::val(); } // ERROR - -inline Char operator * (const char a, const Char & b) return r(a) // ERROR - -{ r *= b.Char::val(); } // ERROR - -inline Char operator / (const char a, const Char & b) return r(a) // ERROR - -{ r /= b.Char::val(); } // ERROR - -inline Char operator % (const char a, const Char & b) return r(a) // ERROR - -{ r %= b.Char::val(); } // ERROR - -inline Char operator << (const char a, const Char & b) return r(a) // ERROR - -{ r <<= b.Char::val(); } // ERROR - -inline Char operator >> (const char a, const Char & b) return r(a) // ERROR - -{ r >>= b.Char::val(); } // ERROR - -inline Char operator & (const char a, const Char & b) return r(a) // ERROR - -{ r &= b.Char::val(); } // ERROR - -inline Char operator | (const char a, const Char & b) return r(a) // ERROR - -{ r |= b.Char::val(); } // ERROR - -inline Char operator ^ (const char a, const Char & b) return r(a) // ERROR - -{ r ^= b.Char::val(); } // ERROR - +inline Char operator - (const Char & a) return r(a) // { dg-error "" } +{ r.negate(); } // { dg-error "" } +inline Char operator ~ (const Char & a) return r(a) // { dg-error "" } +{ r.complement(); } // { dg-error "" } + +inline Char operator + (const Char & a, const Char & b) return r(a) // { dg-error "" } +{ r += b.Char::val(); } // { dg-error "" } +inline Char operator - (const Char & a, const Char & b) return r(a) // { dg-error "" } +{ r -= b.Char::val(); } // { dg-error "" } +inline Char operator * (const Char & a, const Char & b) return r(a) // { dg-error "" } +{ r *= b.Char::val(); } // { dg-error "" } +inline Char operator / (const Char & a, const Char & b) return r(a) // { dg-error "" } +{ r /= b.Char::val(); } // { dg-error "" } +inline Char operator % (const Char & a, const Char & b) return r(a) // { dg-error "" } +{ r %= b.Char::val(); } // { dg-error "" } +inline Char operator << (const Char & a, const Char & b) return r(a) // { dg-error "" } +{ r <<= b.Char::val(); } // { dg-error "" } +inline Char operator >> (const Char & a, const Char & b) return r(a) // { dg-error "" } +{ r >>= b.Char::val(); } // { dg-error "" } +inline Char operator & (const Char & a, const Char & b) return r(a) // { dg-error "" } +{ r &= b.Char::val(); } // { dg-error "" } +inline Char operator | (const Char & a, const Char & b) return r(a) // { dg-error "" } +{ r |= b.Char::val(); } // { dg-error "" } +inline Char operator ^ (const Char & a, const Char & b) return r(a) // { dg-error "" } +{ r ^= b.Char::val(); } // { dg-error "" } + +inline Char operator + (const Char & a, const char b) return r(a) // { dg-error "" } +{ r += b; } // { dg-error "" } +inline Char operator - (const Char & a, const char b) return r(a) // { dg-error "" } +{ r -= b; } // { dg-error "" } +inline Char operator * (const Char & a, const char b) return r(a) // { dg-error "" } +{ r *= b; } // { dg-error "" } +inline Char operator / (const Char & a, const char b) return r(a) // { dg-error "" } +{ r /= b; } // { dg-error "" } +inline Char operator % (const Char & a, const char b) return r(a) // { dg-error "" } +{ r %= b; } // { dg-error "" } +inline Char operator << (const Char & a, const char b) return r(a) // { dg-error "" } +{ r <<= b; } // { dg-error "" } +inline Char operator >> (const Char & a, const char b) return r(a) // { dg-error "" } +{ r >>= b; } // { dg-error "" } +inline Char operator & (const Char & a, const char b) return r(a) // { dg-error "" } +{ r &= b; } // { dg-error "" } +inline Char operator | (const Char & a, const char b) return r(a) // { dg-error "" } +{ r |= b; } // { dg-error "" } +inline Char operator ^ (const Char & a, const char b) return r(a) // { dg-error "" } +{ r ^= b; } // { dg-error "" } + +inline Char operator + (const char a, const Char & b) return r(a) // { dg-error "" } +{ r += b.Char::val(); } // { dg-error "" } +inline Char operator - (const char a, const Char & b) return r(a) // { dg-error "" } +{ r -= b.Char::val(); } // { dg-error "" } +inline Char operator * (const char a, const Char & b) return r(a) // { dg-error "" } +{ r *= b.Char::val(); } // { dg-error "" } +inline Char operator / (const char a, const Char & b) return r(a) // { dg-error "" } +{ r /= b.Char::val(); } // { dg-error "" } +inline Char operator % (const char a, const Char & b) return r(a) // { dg-error "" } +{ r %= b.Char::val(); } // { dg-error "" } +inline Char operator << (const char a, const Char & b) return r(a) // { dg-error "" } +{ r <<= b.Char::val(); } // { dg-error "" } +inline Char operator >> (const char a, const Char & b) return r(a) // { dg-error "" } +{ r >>= b.Char::val(); } // { dg-error "" } +inline Char operator & (const char a, const Char & b) return r(a) // { dg-error "" } +{ r &= b.Char::val(); } // { dg-error "" } +inline Char operator | (const char a, const Char & b) return r(a) // { dg-error "" } +{ r |= b.Char::val(); } // { dg-error "" } +inline Char operator ^ (const char a, const Char & b) return r(a) // { dg-error "" } +{ r ^= b.Char::val(); } // { dg-error "" } diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p701.C b/gcc/testsuite/g++.old-deja/g++.mike/p701.C index f4e7f93..2c23ddc 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p701.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p701.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // prms-id: 701 extern "C" @@ -8,7 +8,7 @@ extern "C" void Munge(int& x) -{ // ERROR - referenced below +{ // { dg-error "" } referenced below x = 2; } @@ -24,7 +24,7 @@ class A void A::Safe() const { - Munge(i); // ERROR - should not be able to modify a const object + Munge(i); // { dg-error "" } should not be able to modify a const object } int main() diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p710.C b/gcc/testsuite/g++.old-deja/g++.mike/p710.C index 4e9e602..7fdd5b0 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p710.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p710.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed delete /* Bug Id: diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p7180.C b/gcc/testsuite/g++.old-deja/g++.mike/p7180.C index da75bd6..55b7e10 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p7180.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p7180.C @@ -1,3 +1,4 @@ +// { dg-do run } // prms-id: 7180 class String { diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p7325.C b/gcc/testsuite/g++.old-deja/g++.mike/p7325.C index e481ccd..621adeb 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p7325.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p7325.C @@ -1,7 +1,7 @@ +// { dg-do run { xfail *-*-* } } // I hate this type of test case. I'm not sure how to code it better. // See the PR for what this tests. // prms-id: 7325 -// execution test - XFAIL *-*-* int fail = 0; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p7476.C b/gcc/testsuite/g++.old-deja/g++.mike/p7476.C index acddf05..04d7788 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p7476.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p7476.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // prms-id: 7476 class HeapTracked { @@ -16,5 +16,5 @@ void HeapTracked::isObjectAllocation(HeapTracked *ptr) void HeapTracked::isObjectAllocation(const HeapTracked *ptr) { const_cast<void*>(dynamic_cast<const void*>(ptr)); - dynamic_cast<void*>(ptr); // ERROR - + dynamic_cast<void*>(ptr); // { dg-error "" } } diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p755.C b/gcc/testsuite/g++.old-deja/g++.mike/p755.C index a8f4476..bf4302b 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p755.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p755.C @@ -1,3 +1,4 @@ +// { dg-do run } // It checks to see if you can define your own global new operator. // prms-id: 755 diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p755a.C b/gcc/testsuite/g++.old-deja/g++.mike/p755a.C index 29d58b8..bc23d57 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p755a.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p755a.C @@ -1,3 +1,4 @@ +// { dg-do run } // It checks to see if you can define your own global delete operator. // prms-id: 755 diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p7626.C b/gcc/testsuite/g++.old-deja/g++.mike/p7626.C index 8e38667..32c950d 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p7626.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p7626.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // prms-id: 7626 int fail; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p7635.C b/gcc/testsuite/g++.old-deja/g++.mike/p7635.C index 4cafa0e..ac31af2 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p7635.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p7635.C @@ -1,6 +1,7 @@ +// { dg-do assemble } // prms-id: 7635 class DaycountBasis { mutable const int * p; - mutable int * const q; // ERROR - + mutable int * const q; // { dg-error "" } }; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p7651.C b/gcc/testsuite/g++.old-deja/g++.mike/p7651.C index 487b0d5..6e0aede 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p7651.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p7651.C @@ -1,3 +1,4 @@ +// { dg-do run } // prms-id: 7651 int fail = 0; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p783.C b/gcc/testsuite/g++.old-deja/g++.mike/p783.C index c84e4ca..0c04d64 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p783.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p783.C @@ -1,3 +1,4 @@ +// { dg-do run } // prms-id: 783 extern "C" int printf (const char *, ...); diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p783a.C b/gcc/testsuite/g++.old-deja/g++.mike/p783a.C index 167c9d9..17609d5 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p783a.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p783a.C @@ -1,3 +1,4 @@ +// { dg-do run } // Copying into an object directly is a lose according to tiemann. // Deleting an object many times is a lose. // prms-id: 783 diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p783b.C b/gcc/testsuite/g++.old-deja/g++.mike/p783b.C index b434d76f..0aacb32 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p783b.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p783b.C @@ -1,3 +1,4 @@ +// { dg-do run } // This one check for objects being destroyed twice. The bug it is // looking for is the extra dtor call on C() even though it is never // built. diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p784.C b/gcc/testsuite/g++.old-deja/g++.mike/p784.C index f83baf2..bdf5dbb 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p784.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p784.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -w +// { dg-do assemble } +// { dg-options "-w" } // prms-id: 784 //# 1 "GctSymbol.GctSymbol.CHMap.cc" @@ -1602,74 +1602,74 @@ inline void String:: operator +=(char y) -inline String operator + (const String& x, const String& y) return r; // ERROR - +inline String operator + (const String& x, const String& y) return r; // { dg-error "" } { - cat(x, y, r); // ERROR - + cat(x, y, r); // { dg-error "" } } -inline String operator + (const String& x, const SubString& y) return r; // ERROR - +inline String operator + (const String& x, const SubString& y) return r; // { dg-error "" } { - cat(x, y, r); // ERROR - + cat(x, y, r); // { dg-error "" } } -inline String operator + (const String& x, const char* y) return r; // ERROR - +inline String operator + (const String& x, const char* y) return r; // { dg-error "" } { - cat(x, y, r); // ERROR - + cat(x, y, r); // { dg-error "" } } -inline String operator + (const String& x, char y) return r; // ERROR - +inline String operator + (const String& x, char y) return r; // { dg-error "" } { - cat(x, y, r); // ERROR - + cat(x, y, r); // { dg-error "" } } -inline String operator + (const SubString& x, const String& y) return r; // ERROR - +inline String operator + (const SubString& x, const String& y) return r; // { dg-error "" } { - cat(x, y, r); // ERROR - + cat(x, y, r); // { dg-error "" } } -inline String operator + (const SubString& x, const SubString& y) return r; // ERROR - +inline String operator + (const SubString& x, const SubString& y) return r; // { dg-error "" } { - cat(x, y, r); // ERROR - + cat(x, y, r); // { dg-error "" } } -inline String operator + (const SubString& x, const char* y) return r; // ERROR - +inline String operator + (const SubString& x, const char* y) return r; // { dg-error "" } { - cat(x, y, r); // ERROR - + cat(x, y, r); // { dg-error "" } } -inline String operator + (const SubString& x, char y) return r; // ERROR - +inline String operator + (const SubString& x, char y) return r; // { dg-error "" } { - cat(x, y, r); // ERROR - + cat(x, y, r); // { dg-error "" } } -inline String operator + (const char* x, const String& y) return r; // ERROR - +inline String operator + (const char* x, const String& y) return r; // { dg-error "" } { - cat(x, y, r); // ERROR - + cat(x, y, r); // { dg-error "" } } -inline String operator + (const char* x, const SubString& y) return r; // ERROR - +inline String operator + (const char* x, const SubString& y) return r; // { dg-error "" } { - cat(x, y, r); // ERROR - + cat(x, y, r); // { dg-error "" } } -inline String reverse(const String& x) return r; // ERROR - +inline String reverse(const String& x) return r; // { dg-error "" } { - r.rep = Sreverse(x.rep, r.rep); // ERROR - + r.rep = Sreverse(x.rep, r.rep); // { dg-error "" } } -inline String upcase(const String& x) return r; // ERROR - +inline String upcase(const String& x) return r; // { dg-error "" } { - r.rep = Supcase(x.rep, r.rep); // ERROR - + r.rep = Supcase(x.rep, r.rep); // { dg-error "" } } -inline String downcase(const String& x) return r; // ERROR - +inline String downcase(const String& x) return r; // { dg-error "" } { - r.rep = Sdowncase(x.rep, r.rep); // ERROR - + r.rep = Sdowncase(x.rep, r.rep); // { dg-error "" } } -inline String capitalize(const String& x) return r; // ERROR - +inline String capitalize(const String& x) return r; // { dg-error "" } { - r.rep = Scapitalize(x.rep, r.rep); // ERROR - + r.rep = Scapitalize(x.rep, r.rep); // { dg-error "" } } //# 883 "/projects/gnu-cygnus/gnu-cygnus-8/common/g++-include/String.h" @@ -2282,7 +2282,7 @@ public: // This constructor defines cp as the buffer to use for the // stream (instead of one of its own devising); it does NOT // initialize the ostrstream to contain cp (of length n). - tostrstream(char *cp, int n, int mode=ios::out): ostrtream(cp, n, mode) // ERROR - + tostrstream(char *cp, int n, int mode=ios::out): ostrtream(cp, n, mode) // { dg-error "" } { } char *str() { @@ -3653,5 +3653,5 @@ GctSymbolGctSymbolCHMap::GctSymbolGctSymbolCHMap(GctSymbolGctSymbolCHMap& a) :Gc tab = (GctSymbolGctSymbolCHNode**)(new GctSymbolGctSymbolCHNodePtr[size = a.size]); for (unsigned int i = 0; i < size; ++i) tab[i] = index_to_CHptr(i+1); count = 0; - for (Pix p = a.first(); p; a.next(p)) (*this)[a.key(p)] = a.contents(p); // gets bogus error - type `GctSymbol' is derived from private `String' + for (Pix p = a.first(); p; a.next(p)) (*this)[a.key(p)] = a.contents(p); // { dg-bogus "" } type `GctSymbol' is derived from private `String' } diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p786.C b/gcc/testsuite/g++.old-deja/g++.mike/p786.C index b7d19fd..ebe89c6 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p786.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p786.C @@ -1,3 +1,4 @@ +// { dg-do run } // prms-id: 786 extern "C" int printf (const char *, ...); diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p7865.C b/gcc/testsuite/g++.old-deja/g++.mike/p7865.C index 2cac1d5..8727e15 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p7865.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p7865.C @@ -1,3 +1,4 @@ +// { dg-do run } // prms-id: 7865 int count; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p7868.C b/gcc/testsuite/g++.old-deja/g++.mike/p7868.C index d79e2aa..48bdf8b 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p7868.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p7868.C @@ -1,18 +1,18 @@ -// Build don't link: +// { dg-do assemble } // prms-id: 7868 struct DIAGTYP { }; struct DIAGTYP1 { - struct DIAGTYP; // ERROR - forward declaration - void bar() { new struct DIAGTYP; } // ERROR - undefined + struct DIAGTYP; // { dg-error "" } forward declaration + void bar() { new struct DIAGTYP; } // { dg-error "" } undefined void foo() { new struct DIAGTYP1; } }; int main () { - struct DIAGTYP; // ERROR - forward declaration + struct DIAGTYP; // { dg-error "" } forward declaration struct DIAGTYP *lerror_desc; - lerror_desc= new struct DIAGTYP; // ERROR - undefined + lerror_desc= new struct DIAGTYP; // { dg-error "" } undefined } void foo () { diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p789.C b/gcc/testsuite/g++.old-deja/g++.mike/p789.C index f511b39..24dbf6e 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p789.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p789.C @@ -1,3 +1,4 @@ +// { dg-do run } // prms-id: 789 extern "C" int printf (const char *, ...); diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p789a.C b/gcc/testsuite/g++.old-deja/g++.mike/p789a.C index b90cc76..bee0228 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p789a.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p789a.C @@ -1,3 +1,4 @@ +// { dg-do run } // global and local multidimensional array objects are not getting // constructors called on any dimension, other than the first. Also, // the destructors are not being called. Seems odd, they probably diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p7912.C b/gcc/testsuite/g++.old-deja/g++.mike/p7912.C index e5a563c..e5584ec 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p7912.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p7912.C @@ -1,5 +1,5 @@ -// Special g++ Options: -fexceptions -// excess errors test - XFAIL sparc64-*-elf arm-*-pe +// { dg-do run { xfail sparc64-*-elf arm-*-pe } } +// { dg-options "-fexceptions" } // prms-id: 7912 int count = 0; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p8009.C b/gcc/testsuite/g++.old-deja/g++.mike/p8009.C index e8a124b..b082d65 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p8009.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p8009.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // prms-id: 8009 class A { @@ -9,4 +10,4 @@ class B : public A { B(); }; -B::B() : i (-1) {} // ERROR - +B::B() : i (-1) {} // { dg-error "" } diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p8018.C b/gcc/testsuite/g++.old-deja/g++.mike/p8018.C index 37035bc..f085b6e 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p8018.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p8018.C @@ -1,3 +1,4 @@ +// { dg-do run } // prms-id: 8018 class RefCount { diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p8039.C b/gcc/testsuite/g++.old-deja/g++.mike/p8039.C index fe58d09..4dfb556 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p8039.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p8039.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // prms-id: 8039 class C { @@ -10,5 +11,5 @@ extern void bar(int*); int main() { int (C::*mfp)() = &C::func; - bar((int*)mfp); // ERROR - no clear semantics + bar((int*)mfp); // { dg-error "" } no clear semantics } diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p807.C b/gcc/testsuite/g++.old-deja/g++.mike/p807.C index 00c49e7..7b343a5 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p807.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p807.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // prms-id: 807 extern "C" int printf(const char*, ...); @@ -23,12 +24,12 @@ class B }; -int foo(B& b); // ERROR - referenced below +int foo(B& b); // { dg-error "" } referenced below int main() { AX a; - foo(a); // ERROR - Ambiguous B(a) or a.operator B() // See ARM 12.3.2 + foo(a); // { dg-error "" } Ambiguous B(a) or a.operator B() // See ARM 12.3.2 } diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p807a.C b/gcc/testsuite/g++.old-deja/g++.mike/p807a.C index 2c8a149f..748231c 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p807a.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p807a.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // prms-id: 807 // See ARM page 275 Section 12.3.2 @@ -10,13 +10,13 @@ class B; class A { public: - A(B&); // ERROR - fn ref in err msg + A(B&); // { dg-error "" } fn ref in err msg }; class B { public: - operator A(); // ERROR - fn ref in err msg + operator A(); // { dg-error "" } fn ref in err msg }; B b; -A a = b; // ERROR - should fail as it is ambigious. +A a = b; // { dg-error "" } should fail as it is ambigious. diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p811.C b/gcc/testsuite/g++.old-deja/g++.mike/p811.C index 07ab940..ba6c629 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p811.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p811.C @@ -1,6 +1,6 @@ +// { dg-do assemble } +// { dg-options "" } // This test case caused the compiler to abort at one point in time. -// Build don't link: -// Special g++ Options: // prms-id: 811 class ostream; class streambuf; @@ -512,25 +512,25 @@ class Y { public: Y() {} virtual const char *stringify() = 0; - virtual char *stringify2() const = 0; // ERROR - + virtual char *stringify2() const = 0; // { dg-error "" } }; class X: public Y { public: X(): Y() {} - char *stringify(); // ERROR - ok - const char *stringify2() const; // ERROR - ok + char *stringify(); // { dg-error "" } ok + const char *stringify2() const; // { dg-error "" } ok }; char * X::stringify() const -{ // ERROR - ok +{ // { dg-error "" } ok return "stringify"; } const char * X::stringify2() -{ // ERROR - ok +{ // { dg-error "" } ok return "stringify2"; } diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p8154.C b/gcc/testsuite/g++.old-deja/g++.mike/p8154.C index b68ea5d..8b0c70d 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p8154.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p8154.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: +// { dg-do assemble } +// { dg-options "" } // prms-id: 8154 class QvFieldData; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p8155.C b/gcc/testsuite/g++.old-deja/g++.mike/p8155.C index 5be1491..7938471 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p8155.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p8155.C @@ -1,3 +1,4 @@ +// { dg-do run } // prms-id: 8155 int fail = 1; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p8175.C b/gcc/testsuite/g++.old-deja/g++.mike/p8175.C index 8ae4058..23006e7 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p8175.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p8175.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // prms-id: 8175 class AtoBoolC { @@ -11,4 +12,4 @@ struct TestCase { AtoBoolC is_call_on_unack; }; -static TestCase the_cases[] = { { 0 } }; // ERROR - +static TestCase the_cases[] = { { 0 } }; // { dg-error "" } diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p8269.C b/gcc/testsuite/g++.old-deja/g++.mike/p8269.C index f886fe7..3b97d1e 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p8269.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p8269.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // prms-id: 8269 typedef char* const char_ptr; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p8460.C b/gcc/testsuite/g++.old-deja/g++.mike/p8460.C index d4b3e8f..4e0f0d2 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p8460.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p8460.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // prms-id: 8460 class A { @@ -13,5 +13,5 @@ int main() { A a; - a.A(1); // ERROR - cannot find name this way + a.A(1); // { dg-error "" } cannot find name this way } diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p8483.C b/gcc/testsuite/g++.old-deja/g++.mike/p8483.C index 8e6293f..08b5161 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p8483.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p8483.C @@ -1,3 +1,4 @@ +// { dg-do run } // prms-id: 8483 int count; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p8620.C b/gcc/testsuite/g++.old-deja/g++.mike/p8620.C index dc6f017..8064c82 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p8620.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p8620.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // prms-id: 8620 struct S { diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p8786.C b/gcc/testsuite/g++.old-deja/g++.mike/p8786.C index 0565fb2..577111e 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p8786.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p8786.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -O +// { dg-do assemble } +// { dg-options "-O" } // prms-id: 8786 class B { diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p8804.C b/gcc/testsuite/g++.old-deja/g++.mike/p8804.C index df787b8f..d3a2401 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p8804.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p8804.C @@ -1,3 +1,4 @@ +// { dg-do run } // prms-id: 8804 extern "C" int printf (const char *, ...); diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p8825.C b/gcc/testsuite/g++.old-deja/g++.mike/p8825.C index 11de74e..f674899 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p8825.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p8825.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // prms-id: 8825 class A { diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p9068.C b/gcc/testsuite/g++.old-deja/g++.mike/p9068.C index 67e879f..ab2d034 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p9068.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p9068.C @@ -1,7 +1,8 @@ +// { dg-do assemble } // prms-id: 9068 struct ostream { - void operator<< (int); // ERROR - fn ref in err msg + void operator<< (int); // { dg-error "" } fn ref in err msg }; class C { @@ -12,7 +13,7 @@ public: void foo (ostream& lhs, const C& rhs) { - lhs << rhs.i; // ERROR - no such i for any opr << () + lhs << rhs.i; // { dg-error "" } no such i for any opr << () } int& C::i () { diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p9129.C b/gcc/testsuite/g++.old-deja/g++.mike/p9129.C index c8d5485..54cf53e 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p9129.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p9129.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -ansi -pedantic-errors +// { dg-do assemble } +// { dg-options "-ansi -pedantic-errors" } // prms-id: 9129 class Foo { @@ -8,5 +8,5 @@ public: }; int (Foo::*pA)() = { &Foo::DoSomething }; -int (Foo::*X[1])(int) = { { &Foo::DoSomething } }; // ERROR - -int (Foo::*Y[])(int) = { { &Foo::DoSomething, &Foo::DoSomething, 0 } }; // ERROR - +int (Foo::*X[1])(int) = { { &Foo::DoSomething } }; // { dg-error "" } +int (Foo::*Y[])(int) = { { &Foo::DoSomething, &Foo::DoSomething, 0 } }; // { dg-error "" } diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p9206.C b/gcc/testsuite/g++.old-deja/g++.mike/p9206.C index 5c4b578..a5452e1 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p9206.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p9206.C @@ -1,3 +1,4 @@ +// { dg-do run } // prms-id: 9206 class X { diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p9506.C b/gcc/testsuite/g++.old-deja/g++.mike/p9506.C index 7c6e47b..db16e37 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p9506.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p9506.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // prms-id: 9506 char * volatile p; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p9706.C b/gcc/testsuite/g++.old-deja/g++.mike/p9706.C index def5299..0ed15e4 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p9706.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p9706.C @@ -1,5 +1,5 @@ -// Special g++ Options: -fexceptions -// excess errors test - XFAIL sparc64-*-elf arm-*-pe +// { dg-do run { xfail sparc64-*-elf arm-*-pe } } +// { dg-options "-fexceptions" } // prms-id: 9706 #include <stdlib.h> diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p9732a.C b/gcc/testsuite/g++.old-deja/g++.mike/p9732a.C index 13c8989..9af5a90 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p9732a.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p9732a.C @@ -1,3 +1,4 @@ +// { dg-do run } // prms-id: 9732 class A { diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p9732b.C b/gcc/testsuite/g++.old-deja/g++.mike/p9732b.C index d4d200a..b10727e 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p9732b.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p9732b.C @@ -1,3 +1,4 @@ +// { dg-do run } // prms-id: 9732 int count; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p9732c.C b/gcc/testsuite/g++.old-deja/g++.mike/p9732c.C index 9ec773c..f4ce833 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p9732c.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p9732c.C @@ -1,5 +1,5 @@ -// Build don't link: +// { dg-do assemble } // prms-id: 9732 struct foo {}; -foo& x() { return foo(); } // WARNING - +foo& x() { return foo(); } // { dg-warning "" } diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p991.C b/gcc/testsuite/g++.old-deja/g++.mike/p991.C index 037227c..fd71dde 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p991.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p991.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // prms-id: 991 class Complex { diff --git a/gcc/testsuite/g++.old-deja/g++.mike/parse1.C b/gcc/testsuite/g++.old-deja/g++.mike/parse1.C index 12e26cf..621bb09 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/parse1.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/parse1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } enum { name1 }; struct name0 { }; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/pmd1.C b/gcc/testsuite/g++.old-deja/g++.mike/pmd1.C index 260dc09..8fddb22 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/pmd1.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/pmd1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } class A; struct XX { int A::*py; }; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/pmf1.C b/gcc/testsuite/g++.old-deja/g++.mike/pmf1.C index a39512f..15460eb 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/pmf1.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/pmf1.C @@ -1,3 +1,4 @@ +// { dg-do run } // extern "C" printf(const char *, ...); class X diff --git a/gcc/testsuite/g++.old-deja/g++.mike/pmf2.C b/gcc/testsuite/g++.old-deja/g++.mike/pmf2.C index e50f472..209c5eb 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/pmf2.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/pmf2.C @@ -1,3 +1,4 @@ +// { dg-do run } extern "C" int printf(const char *, ...); class A_table { diff --git a/gcc/testsuite/g++.old-deja/g++.mike/pmf3.C b/gcc/testsuite/g++.old-deja/g++.mike/pmf3.C index b38f0b7..8dee927 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/pmf3.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/pmf3.C @@ -1,3 +1,4 @@ +// { dg-do assemble } struct Fooey { void f(char* pX); void f(int in); @@ -5,15 +6,15 @@ struct Fooey { void h(double dx); }; -void Fooey::f(char*) { } // ERROR - candidate -void Fooey::f(int) { } // ERROR - candidate -void Fooey::f(float) { } // ERROR - candidate +void Fooey::f(char*) { } // { dg-error "" } candidate +void Fooey::f(int) { } // { dg-error "" } candidate +void Fooey::f(float) { } // { dg-error "" } candidate void Fooey::h(double zahl) { } int main() { Fooey Blah; void (Fooey::*pointer)(double); - pointer = &Fooey::f; // ERROR - don't call Fooey::h + pointer = &Fooey::f; // { dg-error "" } don't call Fooey::h (Blah.*pointer)(42.5); return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.mike/pmf4.C b/gcc/testsuite/g++.old-deja/g++.mike/pmf4.C index 02e5b10..944993a 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/pmf4.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/pmf4.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } class NF { }; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/pmf6.C b/gcc/testsuite/g++.old-deja/g++.mike/pmf6.C index 6848781..12d1ebe 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/pmf6.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/pmf6.C @@ -1,12 +1,13 @@ -// Special g++ Options: +// { dg-do assemble } +// { dg-options "" } class S { public: void (S::*pmf)(); void foo() { - pmf(); // WARNING - + pmf(); // { dg-warning "" } } static void foo1(S* sp) { - (sp->pmf)(); // ERROR - + (sp->pmf)(); // { dg-error "" } } }; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/pmf7.C b/gcc/testsuite/g++.old-deja/g++.mike/pmf7.C index ceea3bf..bc380db 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/pmf7.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/pmf7.C @@ -1,3 +1,4 @@ +// { dg-do run } class A; typedef int (A::*f_ptr) (void); diff --git a/gcc/testsuite/g++.old-deja/g++.mike/pmf8.C b/gcc/testsuite/g++.old-deja/g++.mike/pmf8.C index 41a4c01..10f67c6 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/pmf8.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/pmf8.C @@ -1,3 +1,4 @@ +// { dg-do run } int fail; class A *ptr_a; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/pmf9.C b/gcc/testsuite/g++.old-deja/g++.mike/pmf9.C index 9a35230..17e58b4 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/pmf9.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/pmf9.C @@ -1,3 +1,4 @@ +// { dg-do run } class K { public: int f(int i) { return i; } diff --git a/gcc/testsuite/g++.old-deja/g++.mike/pt1.C b/gcc/testsuite/g++.old-deja/g++.mike/pt1.C index 2ef8556..5ab78e7 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/pt1.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/pt1.C @@ -1,3 +1,4 @@ +// { dg-do run } template <class T, class V> class A { public: @@ -23,7 +24,7 @@ public: }; template <class T, class V> -B<T, V>::B (T at, V av) : A<T, V> (at, av) { } // gets bogus error - +B<T, V>::B (T at, V av) : A<T, V> (at, av) { } // { dg-bogus "" } int main () { int i = 2; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/pt2.C b/gcc/testsuite/g++.old-deja/g++.mike/pt2.C index 7c96cab..e2f77ec 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/pt2.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/pt2.C @@ -1,3 +1,4 @@ +// { dg-do run } class A { public: }; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/pt3.C b/gcc/testsuite/g++.old-deja/g++.mike/pt3.C index a61d902..201b108 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/pt3.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/pt3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template<class Repr> class syHandle diff --git a/gcc/testsuite/g++.old-deja/g++.mike/pt4.C b/gcc/testsuite/g++.old-deja/g++.mike/pt4.C index 7c1563e..4068cec 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/pt4.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/pt4.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <char* c> struct B { B() { } }; -B<0> bnull; // ERROR - could not convert template argument +B<0> bnull; // { dg-error "" } could not convert template argument diff --git a/gcc/testsuite/g++.old-deja/g++.mike/ref1.C b/gcc/testsuite/g++.old-deja/g++.mike/ref1.C index 054c985..802ede3 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/ref1.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/ref1.C @@ -1,3 +1,4 @@ +// { dg-do run } int count; struct base { diff --git a/gcc/testsuite/g++.old-deja/g++.mike/rtti1.C b/gcc/testsuite/g++.old-deja/g++.mike/rtti1.C index 3403abf..19aa389 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/rtti1.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/rtti1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } #include <typeinfo> #include <iostream> diff --git a/gcc/testsuite/g++.old-deja/g++.mike/rtti2.C b/gcc/testsuite/g++.old-deja/g++.mike/rtti2.C index 0c8b8b0..1f5944a 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/rtti2.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/rtti2.C @@ -1,3 +1,4 @@ +// { dg-do run } #include <typeinfo> int main() { diff --git a/gcc/testsuite/g++.old-deja/g++.mike/rtti3.C b/gcc/testsuite/g++.old-deja/g++.mike/rtti3.C index a250a26..d2d48d1 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/rtti3.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/rtti3.C @@ -1,3 +1,4 @@ +// { dg-do run } class base { public: virtual ~base() {} diff --git a/gcc/testsuite/g++.old-deja/g++.mike/s24939.C b/gcc/testsuite/g++.old-deja/g++.mike/s24939.C index 3ed8fd1..915cfe2 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/s24939.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/s24939.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } class A; @@ -6,7 +6,7 @@ class B { public: B(); private: - A a; // ERROR - + A a; // { dg-error "" } }; class A { }; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/s35520.C b/gcc/testsuite/g++.old-deja/g++.mike/s35520.C index ddc6f4b..cb73482 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/s35520.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/s35520.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } static void kbdNormal() { } void (*keyHandler)() = kbdNormal; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/s9959.C b/gcc/testsuite/g++.old-deja/g++.mike/s9959.C index 654f7d5..896620b 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/s9959.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/s9959.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } class A { protected: diff --git a/gcc/testsuite/g++.old-deja/g++.mike/scast1.C b/gcc/testsuite/g++.old-deja/g++.mike/scast1.C index 11666b4..9a905d0 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/scast1.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/scast1.C @@ -1,7 +1,8 @@ +// { dg-do assemble } class A {}; class C {}; int main() { A* a = 0; - C* c = static_cast<C*>(a); // ERROR - bad static cast + C* c = static_cast<C*>(a); // { dg-error "" } bad static cast } diff --git a/gcc/testsuite/g++.old-deja/g++.mike/temp.C b/gcc/testsuite/g++.old-deja/g++.mike/temp.C index 5a1ce67..0a5ce58 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/temp.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/temp.C @@ -1,3 +1,4 @@ +// { dg-do run } extern "C" int printf(const char *, ...); extern "C" const char *getenv(const char *); diff --git a/gcc/testsuite/g++.old-deja/g++.mike/thunk1.C b/gcc/testsuite/g++.old-deja/g++.mike/thunk1.C index fc5e9b5..8a7be62 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/thunk1.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/thunk1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } struct C1 { diff --git a/gcc/testsuite/g++.old-deja/g++.mike/thunk2.C b/gcc/testsuite/g++.old-deja/g++.mike/thunk2.C index 20f1379..fa864b4 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/thunk2.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/thunk2.C @@ -1,3 +1,4 @@ +// { dg-do run } #include <typeinfo> int state; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/thunk3.C b/gcc/testsuite/g++.old-deja/g++.mike/thunk3.C index 16a5be8..053e035 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/thunk3.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/thunk3.C @@ -1,3 +1,4 @@ +// { dg-do run } int state; int fail; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/unroll1.C b/gcc/testsuite/g++.old-deja/g++.mike/unroll1.C index 90f37f1..e3e7cd5 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/unroll1.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/unroll1.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -g -O -funroll-loops +// { dg-do assemble } +// { dg-options "-g -O -funroll-loops" } struct A { inline ~A() { } diff --git a/gcc/testsuite/g++.old-deja/g++.mike/virt1.C b/gcc/testsuite/g++.old-deja/g++.mike/virt1.C index 2848317..f8ee4ed 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/virt1.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/virt1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } struct S0 { virtual void f1 () { } }; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/virt2.C b/gcc/testsuite/g++.old-deja/g++.mike/virt2.C index 612d07e..8cbe4d1 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/virt2.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/virt2.C @@ -1,3 +1,4 @@ +// { dg-do run } struct S0 { virtual int is_kind_of_S1 () const { return 0; } virtual void dummy () { } diff --git a/gcc/testsuite/g++.old-deja/g++.mike/virt3.C b/gcc/testsuite/g++.old-deja/g++.mike/virt3.C index 3d482fe..72ad999 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/virt3.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/virt3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } class B { public: @@ -10,7 +10,7 @@ class D : private B { int Di; }; -class E : public virtual D, public B { // WARNING - direct base inaccessible due to ambiguity +class E : public virtual D, public B { // { dg-warning "" } direct base inaccessible due to ambiguity int Ei; }; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/virt4.C b/gcc/testsuite/g++.old-deja/g++.mike/virt4.C index 9750af6..2d8b042 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/virt4.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/virt4.C @@ -1,4 +1,5 @@ -// Special g++ Options: +// { dg-do run } +// { dg-options "" } void Foo () {} diff --git a/gcc/testsuite/g++.old-deja/g++.mike/virt5.C b/gcc/testsuite/g++.old-deja/g++.mike/virt5.C index dac85cc..cee8b3c 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/virt5.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/virt5.C @@ -1,3 +1,4 @@ +// { dg-do run } // Ensure that virtual base upcast and downcasting works on this // conversions during virtual function dispatch at ctor/dtor time // when dynamic vtable fixups for deltas are needed. diff --git a/gcc/testsuite/g++.old-deja/g++.mike/virt6.C b/gcc/testsuite/g++.old-deja/g++.mike/virt6.C index 26e26dd..db13bb2 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/virt6.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/virt6.C @@ -1,3 +1,4 @@ +// { dg-do run } // This testcase ensures that we can build vtable names for complex MI // classes. diff --git a/gcc/testsuite/g++.old-deja/g++.mike/vtable1.C b/gcc/testsuite/g++.old-deja/g++.mike/vtable1.C index 260f93d..fc07a9e 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/vtable1.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/vtable1.C @@ -1,5 +1,5 @@ -// Build don't run: -// Special g++ Options: -fno-implement-inlines +// { dg-do link } +// { dg-options "-fno-implement-inlines " } struct type { virtual void m1(); virtual void m2() { } diff --git a/gcc/testsuite/g++.old-deja/g++.mike/warn1.C b/gcc/testsuite/g++.old-deja/g++.mike/warn1.C index e155379..78d2edf 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/warn1.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/warn1.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -Wall +// { dg-do assemble } +// { dg-options "-Wall" } typedef char * charptr; typedef __SIZE_TYPE__ size_t; @@ -9,6 +9,6 @@ int *pp=&i; void foo() { } int main() { - charptr(*pp)++; // WARNING - + charptr(*pp)++; // { dg-warning "" } return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.mike/warn2.C b/gcc/testsuite/g++.old-deja/g++.mike/warn2.C index f865f1e..d505b29 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/warn2.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/warn2.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -Wall +// { dg-do assemble } +// { dg-options "-Wall" } enum Boolean { Ok = 0, @@ -20,7 +20,7 @@ extern void foo(); int main () { - if (fn1() == Ok) { // WARNING - + if (fn1() == Ok) { // { dg-warning "" } foo(); } } diff --git a/gcc/testsuite/g++.old-deja/g++.mike/warn3.C b/gcc/testsuite/g++.old-deja/g++.mike/warn3.C index d5ed383..74fe170 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/warn3.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/warn3.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -Wall +// { dg-do assemble } +// { dg-options "-Wall" } class B { public: @@ -7,6 +7,6 @@ public: }; class D : public B { - int member; // WARNING - reordered - D() : member(0), B(member) { } // WARNING - reordered + int member; // { dg-warning "" } reordered + D() : member(0), B(member) { } // { dg-warning "" } reordered }; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/warn4.C b/gcc/testsuite/g++.old-deja/g++.mike/warn4.C index 9b959b0..d94de45 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/warn4.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/warn4.C @@ -1 +1,2 @@ -void foo (int a, int a) { } // ERROR - +// { dg-do assemble } +void foo (int a, int a) { } // { dg-error "" } diff --git a/gcc/testsuite/g++.old-deja/g++.mike/warn5.C b/gcc/testsuite/g++.old-deja/g++.mike/warn5.C index 742c4bc..84d665c 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/warn5.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/warn5.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -Wpointer-arith +// { dg-do assemble } +// { dg-options "-Wpointer-arith" } double X(const double x) { return x; } double Y() { return 1.0; } @@ -12,10 +12,10 @@ struct A { typedef void (A::*pmf)(); -static int mememe = &A::foo - &A::bar; // WARNING - -pmf b = &A::foo-1; // WARNING - +static int mememe = &A::foo - &A::bar; // { dg-warning "" } +pmf b = &A::foo-1; // { dg-warning "" } int main() { double y; - y=X(Y-Z); // WARNING - + y=X(Y-Z); // { dg-warning "" } } diff --git a/gcc/testsuite/g++.old-deja/g++.mike/warn6.C b/gcc/testsuite/g++.old-deja/g++.mike/warn6.C index 381a3424..9c694d6 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/warn6.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/warn6.C @@ -1,8 +1,8 @@ -// Build don't link: -// Special g++ Options: -Woverloaded-virtual +// { dg-do assemble } +// { dg-options "-Woverloaded-virtual" } struct B4 { - virtual void bothfardiff(float); // WARNING - was hidden + virtual void bothfardiff(float); // { dg-warning "" } was hidden }; struct B3 : public B4 { @@ -16,13 +16,13 @@ struct B { virtual void bothsame(int); - virtual void bothdiff(float); // WARNING - was hidden + virtual void bothdiff(float); // { dg-warning "" } was hidden virtual void both2same(int); virtual void both2same(float); virtual void both12diff(int); - virtual void both12diff(float); // WARNING - was hidden + virtual void both12diff(float); // { dg-warning "" } was hidden }; struct D : public B, public B2, public B3 { @@ -30,13 +30,13 @@ struct D : public B, public B2, public B3 { virtual void bothsame(int); - virtual void bothdiff(int); // WARNING - + virtual void bothdiff(int); // { dg-warning "" } virtual void both2same(int); virtual void both2same(float); - virtual void both12diff(int); // WARNING - + virtual void both12diff(int); // { dg-warning "" } - virtual void bothfardiff(int); // WARNING - + virtual void bothfardiff(int); // { dg-warning "" } }; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/warn7.C b/gcc/testsuite/g++.old-deja/g++.mike/warn7.C index 6772f95..3fb7889 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/warn7.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/warn7.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -Wall +// { dg-do assemble } +// { dg-options "-Wall" } const int& foo() { extern int bar; diff --git a/gcc/testsuite/g++.old-deja/g++.mike/warn8.C b/gcc/testsuite/g++.old-deja/g++.mike/warn8.C index d9a4484..46818fa 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/warn8.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/warn8.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } struct foo { bool test(); @@ -10,10 +10,10 @@ void test() { bool (foo::* pmf)() = &foo::test; bool (*pf)() = func; - if (A.test) ; // ERROR - - if (func) ; // WARNING - - if (bool(A.test)) ; // ERROR - - if (bool(func)) ; // WARNING - + if (A.test) ; // { dg-error "" } + if (func) ; // { dg-warning "" } + if (bool(A.test)) ; // { dg-error "" } + if (bool(func)) ; // { dg-warning "" } if (pmf) ; if (pf) ; } diff --git a/gcc/testsuite/g++.old-deja/g++.niklas/t113.C b/gcc/testsuite/g++.old-deja/g++.niklas/t113.C index fdbf455..aa984d4 100644 --- a/gcc/testsuite/g++.old-deja/g++.niklas/t113.C +++ b/gcc/testsuite/g++.old-deja/g++.niklas/t113.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed niklas explicit-construct virtual-base struct A {}; struct B : virtual A { B(); }; diff --git a/gcc/testsuite/g++.old-deja/g++.niklas/t114.C b/gcc/testsuite/g++.old-deja/g++.niklas/t114.C index c5b458a..9cb4abf 100644 --- a/gcc/testsuite/g++.old-deja/g++.niklas/t114.C +++ b/gcc/testsuite/g++.old-deja/g++.niklas/t114.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed niklas explicit-construct struct A { A(); }; struct B { B(A&); }; diff --git a/gcc/testsuite/g++.old-deja/g++.niklas/t115.C b/gcc/testsuite/g++.old-deja/g++.niklas/t115.C index 7ec5b46..46f7575 100644 --- a/gcc/testsuite/g++.old-deja/g++.niklas/t115.C +++ b/gcc/testsuite/g++.old-deja/g++.niklas/t115.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed niklas virtual-base struct A { A(); virtual void f(); }; struct B : virtual A { B(); }; diff --git a/gcc/testsuite/g++.old-deja/g++.niklas/t118.C b/gcc/testsuite/g++.old-deja/g++.niklas/t118.C index 255747f..2319a33 100644 --- a/gcc/testsuite/g++.old-deja/g++.niklas/t118.C +++ b/gcc/testsuite/g++.old-deja/g++.niklas/t118.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS niklas pt template <class T> class C1 {}; class C1<int> C1_int_object; diff --git a/gcc/testsuite/g++.old-deja/g++.niklas/t119.C b/gcc/testsuite/g++.old-deja/g++.niklas/t119.C index 522e514..8b411d8 100644 --- a/gcc/testsuite/g++.old-deja/g++.niklas/t119.C +++ b/gcc/testsuite/g++.old-deja/g++.niklas/t119.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed niklas i386 unsigned long foo(unsigned long x) { diff --git a/gcc/testsuite/g++.old-deja/g++.niklas/t120.C b/gcc/testsuite/g++.old-deja/g++.niklas/t120.C index c041580..89fd8e6 100644 --- a/gcc/testsuite/g++.old-deja/g++.niklas/t120.C +++ b/gcc/testsuite/g++.old-deja/g++.niklas/t120.C @@ -1,5 +1,5 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed niklas ellipsis typedef void (*T) (...); void f (); -struct S { void g (T); void h() { g(f); } };// ERROR - +struct S { void g (T); void h() { g(f); } };// { dg-error "" } diff --git a/gcc/testsuite/g++.old-deja/g++.niklas/t121.C b/gcc/testsuite/g++.old-deja/g++.niklas/t121.C index e99c940..d25c79f 100644 --- a/gcc/testsuite/g++.old-deja/g++.niklas/t121.C +++ b/gcc/testsuite/g++.old-deja/g++.niklas/t121.C @@ -1,5 +1,5 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed niklas ellipsis void f (); -void g1 (void (*) (...)); void h1 () { g1 (f); }// ERROR - .* -struct S { void g2 (void (*) (...)); void h2 () { g2 (f); } };// ERROR - +void g1 (void (*) (...)); void h1 () { g1 (f); }// { dg-error "" } .* +struct S { void g2 (void (*) (...)); void h2 () { g2 (f); } };// { dg-error "" } diff --git a/gcc/testsuite/g++.old-deja/g++.niklas/t122.C b/gcc/testsuite/g++.old-deja/g++.niklas/t122.C index a4ec045..4decaf1 100644 --- a/gcc/testsuite/g++.old-deja/g++.niklas/t122.C +++ b/gcc/testsuite/g++.old-deja/g++.niklas/t122.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed niklas dwarf struct S { S(); }; diff --git a/gcc/testsuite/g++.old-deja/g++.niklas/t123.C b/gcc/testsuite/g++.old-deja/g++.niklas/t123.C index 37db787..b2019f5 100644 --- a/gcc/testsuite/g++.old-deja/g++.niklas/t123.C +++ b/gcc/testsuite/g++.old-deja/g++.niklas/t123.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed niklas dwarf struct S { S(); }; void f(S) {} diff --git a/gcc/testsuite/g++.old-deja/g++.niklas/t124.C b/gcc/testsuite/g++.old-deja/g++.niklas/t124.C index ba1aa55..7e48fc0 100644 --- a/gcc/testsuite/g++.old-deja/g++.niklas/t124.C +++ b/gcc/testsuite/g++.old-deja/g++.niklas/t124.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed niklas nested-types static-members struct A { diff --git a/gcc/testsuite/g++.old-deja/g++.niklas/t125.C b/gcc/testsuite/g++.old-deja/g++.niklas/t125.C index e5947ef..90fb2b9 100644 --- a/gcc/testsuite/g++.old-deja/g++.niklas/t125.C +++ b/gcc/testsuite/g++.old-deja/g++.niklas/t125.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed niklas nested-types static-members struct A { diff --git a/gcc/testsuite/g++.old-deja/g++.niklas/t126.C b/gcc/testsuite/g++.old-deja/g++.niklas/t126.C index 7313a6a..00b1ca6 100644 --- a/gcc/testsuite/g++.old-deja/g++.niklas/t126.C +++ b/gcc/testsuite/g++.old-deja/g++.niklas/t126.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed niklas nested-types static-members struct A { diff --git a/gcc/testsuite/g++.old-deja/g++.niklas/t127.C b/gcc/testsuite/g++.old-deja/g++.niklas/t127.C index a53d2d4..0499faa 100644 --- a/gcc/testsuite/g++.old-deja/g++.niklas/t127.C +++ b/gcc/testsuite/g++.old-deja/g++.niklas/t127.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed niklas nested-types struct A { struct B { ~B (); }; }; A::B::~B () {} diff --git a/gcc/testsuite/g++.old-deja/g++.niklas/t128.C b/gcc/testsuite/g++.old-deja/g++.niklas/t128.C index 9865b8c..4fe96eb 100644 --- a/gcc/testsuite/g++.old-deja/g++.niklas/t128.C +++ b/gcc/testsuite/g++.old-deja/g++.niklas/t128.C @@ -1,5 +1,5 @@ -// Build don't link: +// { dg-do assemble } // GROUPS niklas uncaught default-construct struct A { A (int); }; -struct B : A {}; // ERROR - without ctor // ERROR - candidates -void f () { B (0); }// ERROR - .* +struct B : A {}; // { dg-error "" } without ctor // ERROR - candidates +void f () { B (0); }// { dg-error "" } .* diff --git a/gcc/testsuite/g++.old-deja/g++.niklas/t129.C b/gcc/testsuite/g++.old-deja/g++.niklas/t129.C index 11e316a..66ffbce 100644 --- a/gcc/testsuite/g++.old-deja/g++.niklas/t129.C +++ b/gcc/testsuite/g++.old-deja/g++.niklas/t129.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed niklas nested-types struct X { struct A { A (int); }; diff --git a/gcc/testsuite/g++.old-deja/g++.niklas/t130.C b/gcc/testsuite/g++.old-deja/g++.niklas/t130.C index 7b2fb43..1df6760 100644 --- a/gcc/testsuite/g++.old-deja/g++.niklas/t130.C +++ b/gcc/testsuite/g++.old-deja/g++.niklas/t130.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed niklas nested-types struct A; struct B { struct A { A(int); }; struct C : A { C() : A (0) {} }; }; diff --git a/gcc/testsuite/g++.old-deja/g++.niklas/t131.C b/gcc/testsuite/g++.old-deja/g++.niklas/t131.C index 75283a8..b29b654 100644 --- a/gcc/testsuite/g++.old-deja/g++.niklas/t131.C +++ b/gcc/testsuite/g++.old-deja/g++.niklas/t131.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed niklas static-members struct A { static A a; }; A f () { return A::a; } diff --git a/gcc/testsuite/g++.old-deja/g++.niklas/t132.C b/gcc/testsuite/g++.old-deja/g++.niklas/t132.C index 18cd01c..0465389 100644 --- a/gcc/testsuite/g++.old-deja/g++.niklas/t132.C +++ b/gcc/testsuite/g++.old-deja/g++.niklas/t132.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed niklas construct-destruct struct S { S (); ~S (); }; void f () { while (1) S s; } diff --git a/gcc/testsuite/g++.old-deja/g++.niklas/t133.C b/gcc/testsuite/g++.old-deja/g++.niklas/t133.C index f79c6db..b9ad346 100644 --- a/gcc/testsuite/g++.old-deja/g++.niklas/t133.C +++ b/gcc/testsuite/g++.old-deja/g++.niklas/t133.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed niklas nested-types struct A { struct B { void operator = (const B&); }; }; void A::B::operator = (const B&) {} diff --git a/gcc/testsuite/g++.old-deja/g++.niklas/t134.C b/gcc/testsuite/g++.old-deja/g++.niklas/t134.C index faa1555..67273a4 100644 --- a/gcc/testsuite/g++.old-deja/g++.niklas/t134.C +++ b/gcc/testsuite/g++.old-deja/g++.niklas/t134.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed niklas static-members extern "C" int f (); struct A { static void f () {} }; diff --git a/gcc/testsuite/g++.old-deja/g++.niklas/t135.C b/gcc/testsuite/g++.old-deja/g++.niklas/t135.C index 138c278..5e826f1 100644 --- a/gcc/testsuite/g++.old-deja/g++.niklas/t135.C +++ b/gcc/testsuite/g++.old-deja/g++.niklas/t135.C @@ -1,23 +1,22 @@ -// Build don't link: +// { dg-do assemble } // GROUPS niklas pt friend -// excess errors test - XFAIL *-*-* template <class T> class C1 -{ +{ // { dg-error "" } public: void diddle_C2 (); }; class C2 { - int data_member; - friend class C1; + int data_member; // { dg-error "" } + friend class C1; // { dg-error "" } }; class C2 C2_object; template <class T> void C1<T>::diddle_C2 () { - C2_object.data_member = 99; + C2_object.data_member = 99; // { dg-error "" } } C1<int> C1_int_object; diff --git a/gcc/testsuite/g++.old-deja/g++.niklas/t136.C b/gcc/testsuite/g++.old-deja/g++.niklas/t136.C index 4890f61..24f8a57 100644 --- a/gcc/testsuite/g++.old-deja/g++.niklas/t136.C +++ b/gcc/testsuite/g++.old-deja/g++.niklas/t136.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS niklas overloading extern "C" void f (char*); void f (const char*) {} diff --git a/gcc/testsuite/g++.old-deja/g++.niklas/t137.C b/gcc/testsuite/g++.old-deja/g++.niklas/t137.C index 9a64f0f..d7c5ca9 100644 --- a/gcc/testsuite/g++.old-deja/g++.niklas/t137.C +++ b/gcc/testsuite/g++.old-deja/g++.niklas/t137.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed niklas nested-types struct A { struct B { void f (); }; diff --git a/gcc/testsuite/g++.old-deja/g++.niklas/t138.C b/gcc/testsuite/g++.old-deja/g++.niklas/t138.C index 0f30d95..e3d210f 100644 --- a/gcc/testsuite/g++.old-deja/g++.niklas/t138.C +++ b/gcc/testsuite/g++.old-deja/g++.niklas/t138.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed niklas hiding struct A; void f (A*); diff --git a/gcc/testsuite/g++.old-deja/g++.niklas/t139.C b/gcc/testsuite/g++.old-deja/g++.niklas/t139.C index 702d065..9d7729b 100644 --- a/gcc/testsuite/g++.old-deja/g++.niklas/t139.C +++ b/gcc/testsuite/g++.old-deja/g++.niklas/t139.C @@ -1,6 +1,6 @@ +// { dg-do assemble } +// { dg-options "-w" } // GROUPS passed niklas hiding ARM -// Build don't link: -// Special g++ Options: -w struct stat {}; stat gstat; int stat (struct stat*); diff --git a/gcc/testsuite/g++.old-deja/g++.niklas/t140.C b/gcc/testsuite/g++.old-deja/g++.niklas/t140.C index f840c62..ba803c7 100644 --- a/gcc/testsuite/g++.old-deja/g++.niklas/t140.C +++ b/gcc/testsuite/g++.old-deja/g++.niklas/t140.C @@ -1,3 +1,4 @@ +// { dg-do run } // GROUPS passed niklas hiding local-types extern "C" int printf (const char*, ...); int val = 1; diff --git a/gcc/testsuite/g++.old-deja/g++.niklas/t141.C b/gcc/testsuite/g++.old-deja/g++.niklas/t141.C index d85e97e..c4bf966 100644 --- a/gcc/testsuite/g++.old-deja/g++.niklas/t141.C +++ b/gcc/testsuite/g++.old-deja/g++.niklas/t141.C @@ -1,6 +1,6 @@ -// Build don't link: -// Special g++ Options: -Wshadow +// { dg-do assemble } +// { dg-options "-Wshadow" } // GROUPS passed niklas scoping ARM class X { X (int); }; -void X (int);// ERROR - .*hides constructor.* +void X (int);// { dg-error "" } .*hides constructor.* void f () { X (1); } diff --git a/gcc/testsuite/g++.old-deja/g++.ns/alias1.C b/gcc/testsuite/g++.old-deja/g++.ns/alias1.C index 797e2b2..e46d74d 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/alias1.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/alias1.C @@ -1,3 +1,4 @@ +// { dg-do run } namespace foo{ int eine_funktion(int) { diff --git a/gcc/testsuite/g++.old-deja/g++.ns/alias2.C b/gcc/testsuite/g++.old-deja/g++.ns/alias2.C index 95b2a23..5671283 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/alias2.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/alias2.C @@ -1,8 +1,8 @@ -//Build don't link: +// { dg-do assemble } namespace NS1 { int a; } -namespace NS2 = NonExistant; //ERROR - +namespace NS2 = NonExistant; //{ dg-error "" } diff --git a/gcc/testsuite/g++.old-deja/g++.ns/alias3.C b/gcc/testsuite/g++.old-deja/g++.ns/alias3.C index 3b8de0c..45f0049 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/alias3.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/alias3.C @@ -1,3 +1,4 @@ +// { dg-do run } namespace A{ struct X{}; void f(X&); diff --git a/gcc/testsuite/g++.old-deja/g++.ns/alias4.C b/gcc/testsuite/g++.old-deja/g++.ns/alias4.C index 16c4dca..5bff439 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/alias4.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/alias4.C @@ -1,13 +1,14 @@ -namespace A = B; // ERROR - unknown namespace +// { dg-do assemble } +namespace A = B; // { dg-error "" } unknown namespace namespace C{} namespace D = C; -namespace D { // ERROR - reopening namespace with alias +namespace D { // { dg-error "" } reopening namespace with alias void f(); } -void C::f(){} // ERROR - previous definition +void C::f(){} // { dg-error "" } previous definition -void D::f(){} // ERROR - redefinition +void D::f(){} // { dg-error "" } redefinition -namespace E = C::F; // ERROR - unknown namespace +namespace E = C::F; // { dg-error "" } unknown namespace diff --git a/gcc/testsuite/g++.old-deja/g++.ns/alias5.C b/gcc/testsuite/g++.old-deja/g++.ns/alias5.C index 797e2b2..e46d74d 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/alias5.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/alias5.C @@ -1,3 +1,4 @@ +// { dg-do run } namespace foo{ int eine_funktion(int) { diff --git a/gcc/testsuite/g++.old-deja/g++.ns/alias6.C b/gcc/testsuite/g++.old-deja/g++.ns/alias6.C index b0799ab..31b10bf 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/alias6.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/alias6.C @@ -1,3 +1,4 @@ +// { dg-do run } // Check namespace aliases inside blocks namespace A { int i; diff --git a/gcc/testsuite/g++.old-deja/g++.ns/alias7.C b/gcc/testsuite/g++.old-deja/g++.ns/alias7.C index ce1ebb8..3145e4a 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/alias7.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/alias7.C @@ -1,4 +1,4 @@ -//Build don't link: +// { dg-do assemble } namespace A{ namespace B{int i;} using namespace B; diff --git a/gcc/testsuite/g++.old-deja/g++.ns/anon1.C b/gcc/testsuite/g++.old-deja/g++.ns/anon1.C index c4a242a..97d3d90 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/anon1.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/anon1.C @@ -1,3 +1,4 @@ +// { dg-do run } namespace{ void f(); } diff --git a/gcc/testsuite/g++.old-deja/g++.ns/bogus1.C b/gcc/testsuite/g++.old-deja/g++.ns/bogus1.C index 373688a..4b927a3 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/bogus1.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/bogus1.C @@ -1,10 +1,10 @@ -// Build don't link: +// { dg-do assemble } namespace N {} -void f(int N::k); // ERROR - +void f(int N::k); // { dg-error "" } class Foo { - int N::j; // ERROR - invalid use of `::' + int N::j; // { dg-error "" } invalid use of `::' }; diff --git a/gcc/testsuite/g++.old-deja/g++.ns/crash1.C b/gcc/testsuite/g++.old-deja/g++.ns/crash1.C index 5a002bd..eac605b 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/crash1.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/crash1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class T> struct S1 {}; @@ -8,5 +8,5 @@ namespace N { struct S2 { - typedef N::S1<int> S2_T; // ERROR - parse error + typedef N::S1<int> S2_T; // { dg-error "" } parse error }; diff --git a/gcc/testsuite/g++.old-deja/g++.ns/crash2.C b/gcc/testsuite/g++.old-deja/g++.ns/crash2.C index a4b1ba3..0731646 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/crash2.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/crash2.C @@ -1,12 +1,11 @@ -// Build don't link: +// { dg-do assemble { xfail *-*-* } } // Submitted by bjornw@fairplay.no -// crash test - XFAIL *-*-* namespace hei { class CSomeClass {}; extern CSomeClass SomeClass; } -hei::CSomeClass hei::CSomeClass; // ERROR - should be hei::SomeClass - XFAIL *-*-* +hei::CSomeClass hei::CSomeClass; // { dg-error "" "" { xfail *-*-* } } should be hei::SomeClass - diff --git a/gcc/testsuite/g++.old-deja/g++.ns/crash3.C b/gcc/testsuite/g++.old-deja/g++.ns/crash3.C index dbffae1..37211d0 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/crash3.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/crash3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } namespace N { template <class T> struct S; @@ -6,5 +6,5 @@ namespace N { void f() { - N::S(); // ERROR - invalid use of template + N::S(); // { dg-error "" } invalid use of template } diff --git a/gcc/testsuite/g++.old-deja/g++.ns/crash4.C b/gcc/testsuite/g++.old-deja/g++.ns/crash4.C index 6245023..a3c1740 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/crash4.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/crash4.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Geoffrey Furnish <furnish@actel.com> namespace N { diff --git a/gcc/testsuite/g++.old-deja/g++.ns/extern1.C b/gcc/testsuite/g++.old-deja/g++.ns/extern1.C index 906b97b..c5b7ea7 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/extern1.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/extern1.C @@ -1,4 +1,4 @@ -// Build don't run: +// { dg-do link } // Based on a testcase by eyal.ben-david@aks.com diff --git a/gcc/testsuite/g++.old-deja/g++.ns/friend1.C b/gcc/testsuite/g++.old-deja/g++.ns/friend1.C index 859a84e..7bdea05 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/friend1.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/friend1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } namespace A{ void f(int); } diff --git a/gcc/testsuite/g++.old-deja/g++.ns/friend2.C b/gcc/testsuite/g++.old-deja/g++.ns/friend2.C index 7d4a6c8..ad6a7d1 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/friend2.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/friend2.C @@ -1,4 +1,4 @@ -//Build don't link: +// { dg-do assemble } namespace A{ void foo(); } diff --git a/gcc/testsuite/g++.old-deja/g++.ns/invalid1.C b/gcc/testsuite/g++.old-deja/g++.ns/invalid1.C index 9ec2adf..38e4d33 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/invalid1.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/invalid1.C @@ -1,12 +1,12 @@ -//Build don't link: +// { dg-do assemble } namespace x { } void f(int); int main() { - x(); // ERROR - calling a namespace - x=4; // ERROR - assigning to a namespace - f(x); // ERROR - passing a namespace as parameter + x(); // { dg-error "" } calling a namespace + x=4; // { dg-error "" } assigning to a namespace + f(x); // { dg-error "" } passing a namespace as parameter } diff --git a/gcc/testsuite/g++.old-deja/g++.ns/koenig1.C b/gcc/testsuite/g++.old-deja/g++.ns/koenig1.C index bd721fe..4b4ddb1 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/koenig1.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/koenig1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } class ostream; extern ostream cout; namespace foo diff --git a/gcc/testsuite/g++.old-deja/g++.ns/koenig2.C b/gcc/testsuite/g++.old-deja/g++.ns/koenig2.C index 629cd38..16d22a2 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/koenig2.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/koenig2.C @@ -1,6 +1,6 @@ -// Build don't link: +// { dg-do assemble } +// { dg-options "" } // Check association of {error} for Koenig lookup -// Special g++ Options: struct QString { operator void * (); }; int foo() diff --git a/gcc/testsuite/g++.old-deja/g++.ns/koenig3.C b/gcc/testsuite/g++.old-deja/g++.ns/koenig3.C index e039df6..58b1d57 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/koenig3.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/koenig3.C @@ -1,3 +1,4 @@ +// { dg-do run } //Check association of member pointer in overload resolution. struct A { int m_val; diff --git a/gcc/testsuite/g++.old-deja/g++.ns/koenig4.C b/gcc/testsuite/g++.old-deja/g++.ns/koenig4.C index 009327c..d26bd13 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/koenig4.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/koenig4.C @@ -1,3 +1,4 @@ +// { dg-do run } void f(); void f(int); diff --git a/gcc/testsuite/g++.old-deja/g++.ns/koenig5.C b/gcc/testsuite/g++.old-deja/g++.ns/koenig5.C index e5500cb..84af9f1 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/koenig5.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/koenig5.C @@ -1,15 +1,16 @@ +// { dg-do assemble } // To find function pointers in Koenig lookup is ok as long as we only find one. namespace A{ - void foo(); // ERROR - + void foo(); // { dg-error "" } struct X{}; void (*bar)(X*)=0; } using A::X; -void (*foo)(X*)=0; // ERROR - +void (*foo)(X*)=0; // { dg-error "" } void g() { - foo(new X); // ERROR - both objects and functions found + foo(new X); // { dg-error "" } both objects and functions found bar(new X); // ok } diff --git a/gcc/testsuite/g++.old-deja/g++.ns/koenig6.C b/gcc/testsuite/g++.old-deja/g++.ns/koenig6.C index dc54903..f77d975 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/koenig6.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/koenig6.C @@ -1,3 +1,4 @@ +// { dg-do assemble } namespace A{ struct X{}; @@ -8,5 +9,5 @@ namespace A{ int main() { A::X x; - bar(&foo(x)); // WARNING - address of temporary + bar(&foo(x)); // { dg-warning "" } address of temporary } diff --git a/gcc/testsuite/g++.old-deja/g++.ns/koenig7.C b/gcc/testsuite/g++.old-deja/g++.ns/koenig7.C index 2565a9e..61b68d8 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/koenig7.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/koenig7.C @@ -1,3 +1,4 @@ +// { dg-do run } // Test for Koenig lookup involving overloaded functions. namespace N1 { diff --git a/gcc/testsuite/g++.old-deja/g++.ns/koenig8.C b/gcc/testsuite/g++.old-deja/g++.ns/koenig8.C index c7d6b4b..351da51 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/koenig8.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/koenig8.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 1999 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 15 Dec 1999 <nathan@acm.org> diff --git a/gcc/testsuite/g++.old-deja/g++.ns/koenig9.C b/gcc/testsuite/g++.old-deja/g++.ns/koenig9.C index b8014a5..78b0e8b 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/koenig9.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/koenig9.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Theodore.Papadopoulo 23 Jun 2000 <Theodore.Papadopoulo@sophia.inria.fr> @@ -9,5 +9,5 @@ void foo(const char*,...); inline void bar() { - foo("",count); // ERROR - multiple overloaded count functions + foo("",count); // { dg-error "" } multiple overloaded count functions } diff --git a/gcc/testsuite/g++.old-deja/g++.ns/lookup1.C b/gcc/testsuite/g++.old-deja/g++.ns/lookup1.C index 6b6f0cc..bb0dd0a 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/lookup1.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/lookup1.C @@ -1,3 +1,3 @@ -// Build don't link: +// { dg-do assemble } typedef int __quad_t; typedef __quad_t __qaddr_t; diff --git a/gcc/testsuite/g++.old-deja/g++.ns/lookup2.C b/gcc/testsuite/g++.old-deja/g++.ns/lookup2.C index 0143290..fff53fa9 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/lookup2.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/lookup2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class charT> struct basic_string { diff --git a/gcc/testsuite/g++.old-deja/g++.ns/lookup3.C b/gcc/testsuite/g++.old-deja/g++.ns/lookup3.C index 3ace233..1159a11 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/lookup3.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/lookup3.C @@ -1,3 +1,4 @@ +// { dg-do run } namespace A{ int i; int f(); diff --git a/gcc/testsuite/g++.old-deja/g++.ns/lookup4.C b/gcc/testsuite/g++.old-deja/g++.ns/lookup4.C index 208a9d6..e4b4be3 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/lookup4.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/lookup4.C @@ -1,4 +1,4 @@ -//Build don't link: +// { dg-do assemble } namespace X{ typedef int foo; const int bar=2; diff --git a/gcc/testsuite/g++.old-deja/g++.ns/lookup5.C b/gcc/testsuite/g++.old-deja/g++.ns/lookup5.C index c83b50a..914f3b3 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/lookup5.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/lookup5.C @@ -1,18 +1,18 @@ -// Build don't link: +// { dg-do assemble } namespace A{ void f(); } namespace B{ using namespace A; - void f(int); // ERROR - referenced below + void f(int); // { dg-error "" } referenced below } using namespace B; void g() { - ::f(); // ERROR - A::f is not found + ::f(); // { dg-error "" } A::f is not found } using namespace A; diff --git a/gcc/testsuite/g++.old-deja/g++.ns/main1.C b/gcc/testsuite/g++.old-deja/g++.ns/main1.C index 0e5a07f..e002d32 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/main1.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/main1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // main is only reserved in the global namespace [basic.start.main]/3 diff --git a/gcc/testsuite/g++.old-deja/g++.ns/new1.C b/gcc/testsuite/g++.old-deja/g++.ns/new1.C index 9ffd247..27eb6d5 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/new1.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/new1.C @@ -1,3 +1,4 @@ +// { dg-do run } // Test whether N::operator new is different from ::operator new #include <new> #include <cstdlib> diff --git a/gcc/testsuite/g++.old-deja/g++.ns/ns1.C b/gcc/testsuite/g++.old-deja/g++.ns/ns1.C index f835716..3fa883c 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/ns1.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/ns1.C @@ -1,3 +1,4 @@ +// { dg-do run } namespace foo{ int eine_funktion(int) { diff --git a/gcc/testsuite/g++.old-deja/g++.ns/ns10.C b/gcc/testsuite/g++.old-deja/g++.ns/ns10.C index 3eb70a8..bbdfb08 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/ns10.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/ns10.C @@ -1,4 +1,4 @@ -//Build don't link: +// { dg-do assemble } namespace bb { int f(int); @@ -7,7 +7,7 @@ namespace bb { void foo(int bar) { - int i=bb:f(bar); // ERROR - namespace + int i=bb:f(bar); // { dg-error "" } namespace } } } diff --git a/gcc/testsuite/g++.old-deja/g++.ns/ns11.C b/gcc/testsuite/g++.old-deja/g++.ns/ns11.C index ffc5acb..2dc0344 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/ns11.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/ns11.C @@ -1,19 +1,20 @@ +// { dg-do assemble } // Build don't link // Check [namespace.memdef]/2 namespace A{ void f(int); void f(int,int); - int i; // ERROR - .* + int i; // { dg-error "" } .* } -void A::f(){} // ERROR - should have been declared before +void A::f(){} // { dg-error "" } should have been declared before namespace B{ - void A::f(int){} // ERROR - B does not surround A + void A::f(int){} // { dg-error "" } B does not surround A } -int A::i; // ERROR - redefinition +int A::i; // { dg-error "" } redefinition void A::f(int,int){} // ok diff --git a/gcc/testsuite/g++.old-deja/g++.ns/ns12.C b/gcc/testsuite/g++.old-deja/g++.ns/ns12.C index 40f5b7c..c546891 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/ns12.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/ns12.C @@ -1,3 +1,4 @@ +// { dg-do run } namespace fred { int barney(); diff --git a/gcc/testsuite/g++.old-deja/g++.ns/ns13.C b/gcc/testsuite/g++.old-deja/g++.ns/ns13.C index 0b8c38a..6f91328 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/ns13.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/ns13.C @@ -1,3 +1,4 @@ +// { dg-do run } namespace std{ void f(){} void g(); diff --git a/gcc/testsuite/g++.old-deja/g++.ns/ns14.C b/gcc/testsuite/g++.old-deja/g++.ns/ns14.C index 4049139..00b901a 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/ns14.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/ns14.C @@ -1,3 +1,4 @@ +// { dg-do run } namespace std{ int f(){ diff --git a/gcc/testsuite/g++.old-deja/g++.ns/ns15.C b/gcc/testsuite/g++.old-deja/g++.ns/ns15.C index cbb6292..bfe5100 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/ns15.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/ns15.C @@ -1,2 +1,2 @@ -//Build don't link: +// { dg-do assemble } namespace std {} diff --git a/gcc/testsuite/g++.old-deja/g++.ns/ns16.C b/gcc/testsuite/g++.old-deja/g++.ns/ns16.C index 1f04ae8..5860dcb 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/ns16.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/ns16.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } class Y { public: diff --git a/gcc/testsuite/g++.old-deja/g++.ns/ns17.C b/gcc/testsuite/g++.old-deja/g++.ns/ns17.C index 2357c5f..033b0af 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/ns17.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/ns17.C @@ -1,4 +1,4 @@ -//Build don't link: +// { dg-do assemble } namespace foo { class c @@ -7,7 +7,7 @@ namespace foo } int -foo::c:fn () // ERROR - syntax error +foo::c:fn () // { dg-error "" } syntax error { } diff --git a/gcc/testsuite/g++.old-deja/g++.ns/ns18.C b/gcc/testsuite/g++.old-deja/g++.ns/ns18.C index 445ef6b..192fa42 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/ns18.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/ns18.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Theo Papadopoulo <Theodore.Papadopoulo@sophia.inria.fr> namespace Bname { diff --git a/gcc/testsuite/g++.old-deja/g++.ns/ns19.C b/gcc/testsuite/g++.old-deja/g++.ns/ns19.C index d08ec87..77e7738 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/ns19.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/ns19.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Chip Salzenberg <chip@valinux.com> namespace N { diff --git a/gcc/testsuite/g++.old-deja/g++.ns/ns2.C b/gcc/testsuite/g++.old-deja/g++.ns/ns2.C index e0d1bda..0f65cbc 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/ns2.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/ns2.C @@ -1,3 +1,4 @@ +// { dg-do run } namespace foo{ struct X{ int i; diff --git a/gcc/testsuite/g++.old-deja/g++.ns/ns3.C b/gcc/testsuite/g++.old-deja/g++.ns/ns3.C index a1c8f53..6cb289b 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/ns3.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/ns3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } namespace foo{ void eine_funktion(int) {} diff --git a/gcc/testsuite/g++.old-deja/g++.ns/ns4.C b/gcc/testsuite/g++.old-deja/g++.ns/ns4.C index f720da3..c2b8fee 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/ns4.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/ns4.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } namespace A{ enum foo{a,b,c}; } diff --git a/gcc/testsuite/g++.old-deja/g++.ns/ns5.C b/gcc/testsuite/g++.old-deja/g++.ns/ns5.C index f35b247..8ee4c40 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/ns5.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/ns5.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } namespace X{ class Y{}; } diff --git a/gcc/testsuite/g++.old-deja/g++.ns/ns6.C b/gcc/testsuite/g++.old-deja/g++.ns/ns6.C index ba2508c..211df81 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/ns6.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/ns6.C @@ -1,3 +1,4 @@ +// { dg-do run } namespace A{ int i; namespace B{ diff --git a/gcc/testsuite/g++.old-deja/g++.ns/ns7.C b/gcc/testsuite/g++.old-deja/g++.ns/ns7.C index 9afc97c..ee834c5 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/ns7.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/ns7.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } namespace A{ struct X{ int i; diff --git a/gcc/testsuite/g++.old-deja/g++.ns/ns8.C b/gcc/testsuite/g++.old-deja/g++.ns/ns8.C index 4d1ab40..7ef3dee 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/ns8.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/ns8.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } namespace B{ void f(); } diff --git a/gcc/testsuite/g++.old-deja/g++.ns/ns9.C b/gcc/testsuite/g++.old-deja/g++.ns/ns9.C index a8803b8..9b181e4 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/ns9.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/ns9.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } namespace bb { int f(int); @@ -7,7 +7,7 @@ namespace bb { void foo(int bar) { - return bb:f(bar); //ERROR - syntax error + return bb:f(bar); //{ dg-error "" } syntax error } } } diff --git a/gcc/testsuite/g++.old-deja/g++.ns/overload1.C b/gcc/testsuite/g++.old-deja/g++.ns/overload1.C index 55d66a1..d177e02 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/overload1.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/overload1.C @@ -1,3 +1,4 @@ +// { dg-do run } // Unqualified lookup should find all functions. // Duplicates are ignored as long as they lose during overload resolution. namespace A{ diff --git a/gcc/testsuite/g++.old-deja/g++.ns/overload2.C b/gcc/testsuite/g++.old-deja/g++.ns/overload2.C index 500d780..a6ea943 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/overload2.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/overload2.C @@ -1,12 +1,13 @@ +// { dg-do assemble } namespace A{ - void f(); // ERROR - .* + void f(); // { dg-error "" } .* } using namespace A; -void f(); // ERROR - .* +void f(); // { dg-error "" } .* void g() { - f(); // ERROR - ambiguous, ::f or A::f ? + f(); // { dg-error "" } ambiguous, ::f or A::f ? } diff --git a/gcc/testsuite/g++.old-deja/g++.ns/overload3.C b/gcc/testsuite/g++.old-deja/g++.ns/overload3.C index 1e0143a..4183553 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/overload3.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/overload3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } namespace A{ void f(); diff --git a/gcc/testsuite/g++.old-deja/g++.ns/overload4.C b/gcc/testsuite/g++.old-deja/g++.ns/overload4.C index ad96157..2608175 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/overload4.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/overload4.C @@ -1,8 +1,8 @@ -// Build don't link: +// { dg-do assemble } namespace A{ void f(); } using A::f; -void f(); // ERROR - duplicate declaration +void f(); // { dg-error "" } duplicate declaration diff --git a/gcc/testsuite/g++.old-deja/g++.ns/overload5.C b/gcc/testsuite/g++.old-deja/g++.ns/overload5.C index 24a0a6d..ee86c8b 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/overload5.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/overload5.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } namespace A{ void f(){} } @@ -6,7 +6,7 @@ namespace A{ using A::f; void f(int); -void f(){} // ERROR - conflict +void f(){} // { dg-error "" } conflict void g() { diff --git a/gcc/testsuite/g++.old-deja/g++.ns/scoped1.C b/gcc/testsuite/g++.old-deja/g++.ns/scoped1.C index 63aa471..32c2090 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/scoped1.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/scoped1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 10 Aug 2000 <nathan@codesourcery.com> @@ -22,5 +22,5 @@ void foo (eo &ref) ref.mlp::base::reset (); ref.base::reset (); ref.reset (); - ref.mlp::reset (); // ERROR - not an aggregate type + ref.mlp::reset (); // { dg-error "" } not an aggregate type } diff --git a/gcc/testsuite/g++.old-deja/g++.ns/template1.C b/gcc/testsuite/g++.old-deja/g++.ns/template1.C index 593df9e..61fd72f 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/template1.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/template1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } namespace foo { template <class T> diff --git a/gcc/testsuite/g++.old-deja/g++.ns/template10.C b/gcc/testsuite/g++.old-deja/g++.ns/template10.C index 709844e..4238225 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/template10.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/template10.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Manuel Menezes de Sequeira <mms@torga.iscte.pt> namespace N { diff --git a/gcc/testsuite/g++.old-deja/g++.ns/template11.C b/gcc/testsuite/g++.old-deja/g++.ns/template11.C index ac78084..4363773 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/template11.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/template11.C @@ -1,3 +1,4 @@ +// { dg-do run } void foo(){} namespace Bar{ diff --git a/gcc/testsuite/g++.old-deja/g++.ns/template12.C b/gcc/testsuite/g++.old-deja/g++.ns/template12.C index 5a6869c..32dfe0f 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/template12.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/template12.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Templates can be defined outside of the namespace if the have been declared // inside namespace bar diff --git a/gcc/testsuite/g++.old-deja/g++.ns/template13.C b/gcc/testsuite/g++.old-deja/g++.ns/template13.C index 722666f..d7e4b79 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/template13.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/template13.C @@ -1,23 +1,22 @@ -// Build don't link: +// { dg-do assemble { xfail *-*-* } } // Templates defined outside must be declared inside -// crash test - XFAIL *-*-* namespace bar { template<class T> void foo(); // trick it to provide some prior declaration - template<class T>class X; // ERROR - previous declaration + template<class T>class X; // { dg-error "" } previous declaration } template <typename T> T const bar::foo(T const &a) -{ // ERROR - not declared in bar - XFAIL *-*-* +{ // { dg-error "" "" { xfail *-*-* } } not declared in bar - return a; } template<> void bar::foo<int>() -{ // ERROR - not declared in bar - XFAIL *-*-* +{ // { dg-error "" "" { xfail *-*-* } } not declared in bar - } template<class T,class U> -class bar::X{}; // ERROR - does not match declaration +class bar::X{}; // { dg-error "" } does not match declaration diff --git a/gcc/testsuite/g++.old-deja/g++.ns/template14.C b/gcc/testsuite/g++.old-deja/g++.ns/template14.C index 90e5312..437a8af 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/template14.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/template14.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Alex Samuel <samuel@codesourcery.com> namespace Outer diff --git a/gcc/testsuite/g++.old-deja/g++.ns/template15.C b/gcc/testsuite/g++.old-deja/g++.ns/template15.C index ac78130..ea0a677 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/template15.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/template15.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Mark Mitchell <mark@codesourcery.com> namespace X { template <class T> void f () {} } diff --git a/gcc/testsuite/g++.old-deja/g++.ns/template16.C b/gcc/testsuite/g++.old-deja/g++.ns/template16.C index 9d53679..c07cb44 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/template16.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/template16.C @@ -1,7 +1,7 @@ +// { dg-do assemble } // Test that pushing into a namespace for a definition doesn't affect // template instantiations. -// Build don't link: namespace N { template <class T> void f () { } diff --git a/gcc/testsuite/g++.old-deja/g++.ns/template17.C b/gcc/testsuite/g++.old-deja/g++.ns/template17.C index a441ebe..010a1b0 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/template17.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/template17.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // // Copyright (C) 2001, 2003 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 29 Apr 2001 <nathan@codesourcery.com> diff --git a/gcc/testsuite/g++.old-deja/g++.ns/template18.C b/gcc/testsuite/g++.old-deja/g++.ns/template18.C index 4b3f720..f5a4755 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/template18.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/template18.C @@ -1,4 +1,4 @@ -// Build don't run: +// { dg-do link } // Origin: Andrey Slepuhin <pooh@msu.ru> namespace A diff --git a/gcc/testsuite/g++.old-deja/g++.ns/template2.C b/gcc/testsuite/g++.old-deja/g++.ns/template2.C index bb7c1dc..c88293e 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/template2.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/template2.C @@ -1,4 +1,4 @@ -//Build don't link: +// { dg-do assemble } //Inheritance from templates which are namespace members namespace foo { diff --git a/gcc/testsuite/g++.old-deja/g++.ns/template3.C b/gcc/testsuite/g++.old-deja/g++.ns/template3.C index 761656f..d6b51a9 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/template3.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/template3.C @@ -1,3 +1,4 @@ +// { dg-do run } //Check instantiation of templates outside their namespace namespace A{ template <class T>void g(){} diff --git a/gcc/testsuite/g++.old-deja/g++.ns/template4.C b/gcc/testsuite/g++.old-deja/g++.ns/template4.C index dd32444..0291417 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/template4.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/template4.C @@ -1,3 +1,4 @@ +// { dg-do run } namespace NS { template <typename T> diff --git a/gcc/testsuite/g++.old-deja/g++.ns/template5.C b/gcc/testsuite/g++.old-deja/g++.ns/template5.C index d9b487b..8338fef 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/template5.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/template5.C @@ -1,3 +1,4 @@ +// { dg-do run } //Check whether namespace-scoped template instantiations //are mangled differently. diff --git a/gcc/testsuite/g++.old-deja/g++.ns/template6.C b/gcc/testsuite/g++.old-deja/g++.ns/template6.C index f0137b4..7d85403 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/template6.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/template6.C @@ -1,4 +1,4 @@ -//Build don't link: +// { dg-do assemble } //reported by Theodore Papadopoulo (Theodore.Papadopoulo@sophia.inria.fr) namespace A { @@ -13,12 +13,12 @@ namespace A { }; template <> - const unsigned B<int,int>::count = 2; // ERROR - duplicate init + const unsigned B<int,int>::count = 2; // { dg-error "" } duplicate init } } int main() { - unsigned kk = A::B<int,int>::count; // ERROR - not a template: syntax error + unsigned kk = A::B<int,int>::count; // { dg-error "" } not a template: syntax error } diff --git a/gcc/testsuite/g++.old-deja/g++.ns/template7.C b/gcc/testsuite/g++.old-deja/g++.ns/template7.C index 3c85735..97e3ee5 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/template7.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/template7.C @@ -1,6 +1,5 @@ -// Build don't link: +// { dg-do assemble { xfail *-*-* } } -// crash test - XFAIL *-*-* // Based on bug report by Eric NICOLAS <nicolas@bnp-eng.remcomp.com> @@ -9,5 +8,5 @@ namespace foo { } void baz() { - foo::bar(); // ERROR - template used as expression + foo::bar(); // { dg-error "" } template used as expression } diff --git a/gcc/testsuite/g++.old-deja/g++.ns/template8.C b/gcc/testsuite/g++.old-deja/g++.ns/template8.C index 758f192..232bb9e 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/template8.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/template8.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } namespace X { template <class T> class foo; } diff --git a/gcc/testsuite/g++.old-deja/g++.ns/template9.C b/gcc/testsuite/g++.old-deja/g++.ns/template9.C index 1b50a5f..3914746 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/template9.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/template9.C @@ -1,3 +1,4 @@ +// { dg-do run } // Produces ICE 980519. // Test case from Dirk Engelmann <Dirk.Engelmann@IWR.Uni-Heidelberg.De> diff --git a/gcc/testsuite/g++.old-deja/g++.ns/type1.C b/gcc/testsuite/g++.old-deja/g++.ns/type1.C index 21398f9..a7d4c81 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/type1.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/type1.C @@ -1,9 +1,9 @@ +// { dg-do assemble } // Test that using an elaborated-type-specifier in a namespace to refer // to a class outside the namespace does not cause its name to be considered // declared in the namespace. // Contributed by Jason Merrill <jason@cygnus.com> -// Build don't link: struct A { }; diff --git a/gcc/testsuite/g++.old-deja/g++.ns/type2.C b/gcc/testsuite/g++.old-deja/g++.ns/type2.C index d8407b1..49bb8b2 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/type2.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/type2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // // Copyright (C) 2001 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 11 April 2001 <nathan@codesourcery.com> diff --git a/gcc/testsuite/g++.old-deja/g++.ns/undef1.C b/gcc/testsuite/g++.old-deja/g++.ns/undef1.C index d13b8e7..f88c076 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/undef1.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/undef1.C @@ -1,5 +1,5 @@ -//Build don't link: +// { dg-do assemble } namespace A{ } -struct Y: A::S<int>{}; //ERROR - no such type +struct Y: A::S<int>{}; //{ dg-error "" } no such type diff --git a/gcc/testsuite/g++.old-deja/g++.ns/using1.C b/gcc/testsuite/g++.old-deja/g++.ns/using1.C index 489faac..71c4b01 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/using1.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/using1.C @@ -1,3 +1,3 @@ -// Build don't link: -using namespace bb; // ERROR - .* +// { dg-do assemble } +using namespace bb; // { dg-error "" } .* diff --git a/gcc/testsuite/g++.old-deja/g++.ns/using10.C b/gcc/testsuite/g++.old-deja/g++.ns/using10.C index cd5cd47..64c353f 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/using10.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/using10.C @@ -1,4 +1,4 @@ -//Build don't link: +// { dg-do assemble } //Based on a report by Helmut Jarausch <jarausch@IGPM.Rwth-Aachen.DE> template<class> class foo{}; diff --git a/gcc/testsuite/g++.old-deja/g++.ns/using11.C b/gcc/testsuite/g++.old-deja/g++.ns/using11.C index 23943f2..e00d3b1 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/using11.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/using11.C @@ -1,9 +1,9 @@ -// Build don't link: +// { dg-do assemble } class joey { public: typedef int SVec; }; -using joey::SVec; // ERROR - joey is not a namespace +using joey::SVec; // { dg-error "" } joey is not a namespace diff --git a/gcc/testsuite/g++.old-deja/g++.ns/using12.C b/gcc/testsuite/g++.old-deja/g++.ns/using12.C index edc863b..057457c 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/using12.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/using12.C @@ -1,19 +1,19 @@ -// Build don't link: +// { dg-do assemble } // Origin: Brendan Kehoe <brendan@cygnus.com> namespace foo { - void x (bool); // ERROR - candidates - void x (char); // ERROR - candidates - void x (int); // ERROR - candidates - void x (double); // ERROR - candidates + void x (bool); // { dg-error "" } candidates + void x (char); // { dg-error "" } candidates + void x (int); // { dg-error "" } candidates + void x (double); // { dg-error "" } candidates } -namespace baz { void x (int); } // ERROR - candidates +namespace baz { void x (int); } // { dg-error "" } candidates void fn (int i) { using foo::x; using baz::x; - x(i); // ERROR - ambiguous + x(i); // { dg-error "" } ambiguous } diff --git a/gcc/testsuite/g++.old-deja/g++.ns/using13.C b/gcc/testsuite/g++.old-deja/g++.ns/using13.C index c1e96ad..29867de 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/using13.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/using13.C @@ -1,3 +1,4 @@ +// { dg-do run } namespace A{ void foo(int){} } diff --git a/gcc/testsuite/g++.old-deja/g++.ns/using14.C b/gcc/testsuite/g++.old-deja/g++.ns/using14.C index 522f8ae..a5f9847 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/using14.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/using14.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Mark Mitchell <mark@codesourcery.com> extern "C" void f (); diff --git a/gcc/testsuite/g++.old-deja/g++.ns/using2.C b/gcc/testsuite/g++.old-deja/g++.ns/using2.C index 879e0c5..f65f230 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/using2.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/using2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } void f(); namespace A{ using ::f; diff --git a/gcc/testsuite/g++.old-deja/g++.ns/using3.C b/gcc/testsuite/g++.old-deja/g++.ns/using3.C index a8c1761..93549a2 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/using3.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/using3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } typedef unsigned int atypedef; struct astruct{}; diff --git a/gcc/testsuite/g++.old-deja/g++.ns/using4.C b/gcc/testsuite/g++.old-deja/g++.ns/using4.C index f3197be..72332f1 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/using4.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/using4.C @@ -1,5 +1,6 @@ +// { dg-do assemble } //Build don't link #include <vector> namespace csp { -using namespace std::vector; // ERROR - vector is not a namespace +using namespace std::vector; // { dg-error "" } vector is not a namespace } diff --git a/gcc/testsuite/g++.old-deja/g++.ns/using5.C b/gcc/testsuite/g++.old-deja/g++.ns/using5.C index 37fc6a8..ea7d84c 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/using5.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/using5.C @@ -1,6 +1,6 @@ -// Build don't link: +// { dg-do assemble } namespace a { class b { - using std::c; //ERROR - namespace using on class level + using std::c; //{ dg-error "" } namespace using on class level }; } diff --git a/gcc/testsuite/g++.old-deja/g++.ns/using6.C b/gcc/testsuite/g++.old-deja/g++.ns/using6.C index b770950..68cf2da 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/using6.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/using6.C @@ -1,4 +1,4 @@ -//Build don't link: +// { dg-do assemble } #include <vector> namespace csp { diff --git a/gcc/testsuite/g++.old-deja/g++.ns/using7.C b/gcc/testsuite/g++.old-deja/g++.ns/using7.C index a449284..6617bc6 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/using7.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/using7.C @@ -1,3 +1,4 @@ +// { dg-do run } namespace X{ void f(int){} } diff --git a/gcc/testsuite/g++.old-deja/g++.ns/using8.C b/gcc/testsuite/g++.old-deja/g++.ns/using8.C index 2234f58..1d5e58b 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/using8.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/using8.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } namespace M { int i; } diff --git a/gcc/testsuite/g++.old-deja/g++.ns/using9.C b/gcc/testsuite/g++.old-deja/g++.ns/using9.C index e664ccd..9de6b31 100644 --- a/gcc/testsuite/g++.old-deja/g++.ns/using9.C +++ b/gcc/testsuite/g++.old-deja/g++.ns/using9.C @@ -1,6 +1,6 @@ +// { dg-do assemble } // Test for proper merging of functions from multiple using directives. -// Build don't link: namespace standard { void print(int) {} diff --git a/gcc/testsuite/g++.old-deja/g++.oliva/ctor1.C b/gcc/testsuite/g++.old-deja/g++.oliva/ctor1.C index d6f1d0c..d8ad0c7 100644 --- a/gcc/testsuite/g++.old-deja/g++.oliva/ctor1.C +++ b/gcc/testsuite/g++.old-deja/g++.oliva/ctor1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 1999 Free Software Foundation @@ -6,7 +6,7 @@ // based on bug report by Harri Porten <porten@tu-harburg.de> struct A { - A() : x; // ERROR - missing body + A() : x; // { dg-error "" } missing body }; struct B { diff --git a/gcc/testsuite/g++.old-deja/g++.oliva/delete1.C b/gcc/testsuite/g++.old-deja/g++.oliva/delete1.C index d8ddefe..e6ab00b 100644 --- a/gcc/testsuite/g++.old-deja/g++.oliva/delete1.C +++ b/gcc/testsuite/g++.old-deja/g++.oliva/delete1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 1999, 2001 Free Software Foundation @@ -13,19 +13,19 @@ struct foo { foo() {} private: - void operator delete(void *) {} // ERROR - private + void operator delete(void *) {} // { dg-error "" } private } foo_; struct bar : foo { ~bar() { - delete this; // ERROR - delete is private + delete this; // { dg-error "" } delete is private // An implicit invocation of delete is emitted in destructors, but // it should only be checked in virtual destructors - } // gets bogus error - not virtual + } // { dg-bogus "" } not virtual } bar_; struct baz : foo { - virtual ~baz() {} // ERROR - delete is private in vdtor + virtual ~baz() {} // { dg-error "" } delete is private in vdtor } baz_; -struct bad : baz {} bad_; // ERROR - delete is private in vdtor +struct bad : baz {} bad_; // { dg-error "" } delete is private in vdtor diff --git a/gcc/testsuite/g++.old-deja/g++.oliva/delete2.C b/gcc/testsuite/g++.old-deja/g++.oliva/delete2.C index 06ebe3d5..4a5cda4 100644 --- a/gcc/testsuite/g++.old-deja/g++.oliva/delete2.C +++ b/gcc/testsuite/g++.old-deja/g++.oliva/delete2.C @@ -1,3 +1,4 @@ +// { dg-do run } // Copyright (C) 1999 Free Software Foundation // by Alexandre Oliva <oliva@lsd.ic.unicamp.br> diff --git a/gcc/testsuite/g++.old-deja/g++.oliva/delete3.C b/gcc/testsuite/g++.old-deja/g++.oliva/delete3.C index 0907317..39b6fbe 100644 --- a/gcc/testsuite/g++.old-deja/g++.oliva/delete3.C +++ b/gcc/testsuite/g++.old-deja/g++.oliva/delete3.C @@ -1,3 +1,4 @@ +// { dg-do run } // Copyright (C) 1999 Free Software Foundation // by Alexandre Oliva <oliva@lsd.ic.unicamp.br> diff --git a/gcc/testsuite/g++.old-deja/g++.oliva/delete4.C b/gcc/testsuite/g++.old-deja/g++.oliva/delete4.C index 18ce2d3..83084a1 100644 --- a/gcc/testsuite/g++.old-deja/g++.oliva/delete4.C +++ b/gcc/testsuite/g++.old-deja/g++.oliva/delete4.C @@ -1,3 +1,4 @@ +// { dg-do run } // Copyright (C) 1999 Free Software Foundation // by Alexandre Oliva <oliva@lsd.ic.unicamp.br> diff --git a/gcc/testsuite/g++.old-deja/g++.oliva/delete5.C b/gcc/testsuite/g++.old-deja/g++.oliva/delete5.C index afeb153..daf2b53 100644 --- a/gcc/testsuite/g++.old-deja/g++.oliva/delete5.C +++ b/gcc/testsuite/g++.old-deja/g++.oliva/delete5.C @@ -1,3 +1,4 @@ +// { dg-do run } // Copyright (C) 1999 Free Software Foundation // by Alexandre Oliva <oliva@lsd.ic.unicamp.br> diff --git a/gcc/testsuite/g++.old-deja/g++.oliva/dwarf1.C b/gcc/testsuite/g++.old-deja/g++.oliva/dwarf1.C index 35ea809..3b932f7 100644 --- a/gcc/testsuite/g++.old-deja/g++.oliva/dwarf1.C +++ b/gcc/testsuite/g++.old-deja/g++.oliva/dwarf1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 1999 Free Software Foundation @@ -6,7 +6,6 @@ // based on bug report by Chris McKay <chris.mckay@solipsys.com> // Used to fail with dwarf debugging. -// crash test template <class T = void> struct foo { diff --git a/gcc/testsuite/g++.old-deja/g++.oliva/dwarf2.C b/gcc/testsuite/g++.old-deja/g++.oliva/dwarf2.C index 7dc7b94..7b8d44c 100644 --- a/gcc/testsuite/g++.old-deja/g++.oliva/dwarf2.C +++ b/gcc/testsuite/g++.old-deja/g++.oliva/dwarf2.C @@ -1,11 +1,10 @@ -// Build don't link: +// { dg-do assemble { xfail i386-pc-solaris* } } // Copyright (C) 1999 Free Software Foundation // by Alexandre Oliva <oliva@dcc.unicamp.br> // Fails with dwarf debugging. -// crash test - XFAIL i386-pc-solaris* typedef __java_boolean jboolean; void foo() {} diff --git a/gcc/testsuite/g++.old-deja/g++.oliva/dwarf3.C b/gcc/testsuite/g++.old-deja/g++.oliva/dwarf3.C index 668ba4b..945d2ec 100644 --- a/gcc/testsuite/g++.old-deja/g++.oliva/dwarf3.C +++ b/gcc/testsuite/g++.old-deja/g++.oliva/dwarf3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble { xfail i386-pc-solaris* } } // Copyright (C) 1999 Free Software Foundation @@ -6,7 +6,6 @@ // based on bug report by Andreas Stolcke <stolcke@speech.sri.com> // Fails with dwarf debugging. -// crash test - XFAIL i386-pc-solaris* template <class T = void> struct foo { int data[1]; diff --git a/gcc/testsuite/g++.old-deja/g++.oliva/expr1.C b/gcc/testsuite/g++.old-deja/g++.oliva/expr1.C index 068433f..2d6e8f9 100644 --- a/gcc/testsuite/g++.old-deja/g++.oliva/expr1.C +++ b/gcc/testsuite/g++.old-deja/g++.oliva/expr1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 1999 Free Software Foundation @@ -9,4 +9,4 @@ // invalid operands `foo' and `int' to binary `operator !=' class foo {} bar; -int i = void(bar) ? 1 : 0; // gets bogus error - operator!= - XFAIL *-*-* +int i = void(bar) ? 1 : 0; // { dg-bogus "" "" { xfail *-*-* } } - operator!= - diff --git a/gcc/testsuite/g++.old-deja/g++.oliva/expr2.C b/gcc/testsuite/g++.old-deja/g++.oliva/expr2.C index 0e25040..dd364ac 100644 --- a/gcc/testsuite/g++.old-deja/g++.oliva/expr2.C +++ b/gcc/testsuite/g++.old-deja/g++.oliva/expr2.C @@ -1,9 +1,9 @@ +// { dg-do run { xfail *-*-* } } + // Copyright (C) 2000 Free Software Foundation // by Alexandre Oliva <aoliva@cygnus.com> -// execution test - XFAIL *-*-* - int i, j; const int &f(const int& I, const int& J) { diff --git a/gcc/testsuite/g++.old-deja/g++.oliva/ext1.C b/gcc/testsuite/g++.old-deja/g++.oliva/ext1.C index 21405b1..1bc3735 100644 --- a/gcc/testsuite/g++.old-deja/g++.oliva/ext1.C +++ b/gcc/testsuite/g++.old-deja/g++.oliva/ext1.C @@ -1,9 +1,10 @@ +// { dg-do run } +// { dg-options "" } // Copyright (C) 1999 Free Software Foundation // by Alexandre Oliva <oliva@dcc.unicamp.br> // simplified from bug report by Michael Rosenbruch <Rosenbruch@bfw-online.de> -// Special g++ Options: extern "C" void abort(); diff --git a/gcc/testsuite/g++.old-deja/g++.oliva/friend1.C b/gcc/testsuite/g++.old-deja/g++.oliva/friend1.C index aea98e1..6362607 100644 --- a/gcc/testsuite/g++.old-deja/g++.oliva/friend1.C +++ b/gcc/testsuite/g++.old-deja/g++.oliva/friend1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 2001 Free Software Foundation diff --git a/gcc/testsuite/g++.old-deja/g++.oliva/inline1.C b/gcc/testsuite/g++.old-deja/g++.oliva/inline1.C index 01029ff..f182b83 100644 --- a/gcc/testsuite/g++.old-deja/g++.oliva/inline1.C +++ b/gcc/testsuite/g++.old-deja/g++.oliva/inline1.C @@ -1,11 +1,10 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 1999 Free Software Foundation // by Alexandre Oliva <oliva@lsd.ic.unicamp.br> // Derived from GNU lilypond. -// crash test struct foo { foo(); diff --git a/gcc/testsuite/g++.old-deja/g++.oliva/linkage1.C b/gcc/testsuite/g++.old-deja/g++.oliva/linkage1.C index 031ffac..57ef45f 100644 --- a/gcc/testsuite/g++.old-deja/g++.oliva/linkage1.C +++ b/gcc/testsuite/g++.old-deja/g++.oliva/linkage1.C @@ -1,18 +1,17 @@ +// { dg-do link } +// { dg-gpp-additional-sources " linkage1-main.cc" } + // Copyright 2002 Free Software Foundation // Derived by Alexandre Oliva <aoliva@redhat.com> from code posted by // Mark Mitchell <mark@codesourcery.com> -// Build don't run: - -// Additional sources: linkage1-main.cc - // Verify that a member of a class is given global linkage when it's a // member of a function whose name is taken from a typedef, by // checking that another translation unit can call it. We don't do // the right things on functions, but we do on data members. -// excess errors test - XFAIL *-*-* +// { dg-bogus "" "" { xfail *-*-* } 0 } typedef struct { void f(); diff --git a/gcc/testsuite/g++.old-deja/g++.oliva/nameret1.C b/gcc/testsuite/g++.old-deja/g++.oliva/nameret1.C index 9ef5131..b32deed 100644 --- a/gcc/testsuite/g++.old-deja/g++.oliva/nameret1.C +++ b/gcc/testsuite/g++.old-deja/g++.oliva/nameret1.C @@ -1,13 +1,13 @@ -// Build don't link: +// { dg-do assemble } +// { dg-options "-Wno-deprecated" } // Copyright (C) 1999, 2000, 2002 Free Software Foundation // by Alexandre Oliva <oliva@lsd.ic.unicamp.br> // distilled from libg++'s Rational.cc -// Special g++ Options: -Wno-deprecated -inline int bar () return r {} // ERROR - +inline int bar () return r {} // { dg-error "" } int foo () { return bar (); diff --git a/gcc/testsuite/g++.old-deja/g++.oliva/nameret2.C b/gcc/testsuite/g++.old-deja/g++.oliva/nameret2.C index 092e4cd..e0dfb7e 100644 --- a/gcc/testsuite/g++.old-deja/g++.oliva/nameret2.C +++ b/gcc/testsuite/g++.old-deja/g++.oliva/nameret2.C @@ -1,13 +1,13 @@ -// Build don't link: +// { dg-do assemble } +// { dg-options "-O1 -Wno-deprecated" } // Copyright (C) 1999, 2000, 2002 Free Software Foundation // by Alexandre Oliva <oliva@lsd.ic.unicamp.br> // distilled from libg++'s Integer.cc -// Special g++ Options: -O1 -Wno-deprecated -inline int bar () return r {} // ERROR - +inline int bar () return r {} // { dg-error "" } int& foo (int& x) { bar (); diff --git a/gcc/testsuite/g++.old-deja/g++.oliva/new1.C b/gcc/testsuite/g++.old-deja/g++.oliva/new1.C index 074b5e8..86d25f8 100644 --- a/gcc/testsuite/g++.old-deja/g++.oliva/new1.C +++ b/gcc/testsuite/g++.old-deja/g++.oliva/new1.C @@ -1,3 +1,4 @@ +// { dg-do run } // Copyright (C) 1999 Free Software Foundation // by Alexandre Oliva <oliva@dcc.unicamp.br> diff --git a/gcc/testsuite/g++.old-deja/g++.oliva/ns1.C b/gcc/testsuite/g++.old-deja/g++.oliva/ns1.C index 179f1e1..cda0f0e 100644 --- a/gcc/testsuite/g++.old-deja/g++.oliva/ns1.C +++ b/gcc/testsuite/g++.old-deja/g++.oliva/ns1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 1999, 2000 Free Software Foundation @@ -8,6 +8,6 @@ void foo(); namespace bar { class baz { - friend void ::foo(); // gets bogus error - parse error + friend void ::foo(); // { dg-bogus "" } parse error }; } diff --git a/gcc/testsuite/g++.old-deja/g++.oliva/ns2.C b/gcc/testsuite/g++.old-deja/g++.oliva/ns2.C index 10e3f44..0541a3f 100644 --- a/gcc/testsuite/g++.old-deja/g++.oliva/ns2.C +++ b/gcc/testsuite/g++.old-deja/g++.oliva/ns2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 1999 Free Software Foundation @@ -10,6 +10,6 @@ void foo(); namespace bar { using ::foo; class baz { - friend void foo(); // gets bogus error - conflict - XFAIL *-*-* + friend void foo(); // { dg-bogus "" "" { xfail *-*-* } } - conflict - }; } diff --git a/gcc/testsuite/g++.old-deja/g++.oliva/ns3.C b/gcc/testsuite/g++.old-deja/g++.oliva/ns3.C index f688f01..0a65070 100644 --- a/gcc/testsuite/g++.old-deja/g++.oliva/ns3.C +++ b/gcc/testsuite/g++.old-deja/g++.oliva/ns3.C @@ -1,11 +1,10 @@ -// Build don't link: +// { dg-do assemble { xfail *-*-* } } // Copyright (C) 1999 Free Software Foundation // by Alexandre Oliva <oliva@dcc.unicamp.br> // based on bug report by Ovidiu Toader <ovi@physics.utoronto.ca> -// crash test - XFAIL *-*-* namespace N { template <typename T> class A { diff --git a/gcc/testsuite/g++.old-deja/g++.oliva/overload1.C b/gcc/testsuite/g++.old-deja/g++.oliva/overload1.C index ed8993a..5864be7 100644 --- a/gcc/testsuite/g++.old-deja/g++.oliva/overload1.C +++ b/gcc/testsuite/g++.old-deja/g++.oliva/overload1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 1999 Free Software Foundation @@ -6,18 +6,18 @@ // Based on bug report by JDonner <jdonner@schedsys.com> struct foo { - static int bar(); // ERROR - candidate - void bar(int); // ERROR - candidate + static int bar(); // { dg-error "" } candidate + void bar(int); // { dg-error "" } candidate }; /* 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; // ERROR - missing & +void (foo::*bad1)(int) = foo::bar; // { dg-error "" } missing & int (*ok2)() = &foo::bar; // ok -void (*bad2)(int) = foo::bar; // ERROR - overload resolution fails +void (*bad2)(int) = foo::bar; // { dg-error "" } overload resolution fails void (foo::*ok3)(int) = &foo::bar; // ok -int (foo::*bad3)() = foo::bar; // ERROR - overload resolution fails +int (foo::*bad3)() = foo::bar; // { dg-error "" } overload resolution fails diff --git a/gcc/testsuite/g++.old-deja/g++.oliva/partord1.C b/gcc/testsuite/g++.old-deja/g++.oliva/partord1.C index 0770065..5559317 100644 --- a/gcc/testsuite/g++.old-deja/g++.oliva/partord1.C +++ b/gcc/testsuite/g++.old-deja/g++.oliva/partord1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 1999 Free Software Foundation @@ -9,7 +9,7 @@ template <typename T> void foo(T*); template <typename T> class bar { private: - int i; // ERROR - this variable + int i; // { dg-error "" } this variable friend void foo<T>(T); }; @@ -17,7 +17,7 @@ template <typename T> void foo(T) { bar<T>().i = 0; // ok, I'm a friend } template <typename T> void foo(T*) { - bar<T*>().i = 1; // ERROR - not a friend + bar<T*>().i = 1; // { dg-error "" } not a friend } int main() { diff --git a/gcc/testsuite/g++.old-deja/g++.oliva/partspec1.C b/gcc/testsuite/g++.old-deja/g++.oliva/partspec1.C index 067a635..8879247 100644 --- a/gcc/testsuite/g++.old-deja/g++.oliva/partspec1.C +++ b/gcc/testsuite/g++.old-deja/g++.oliva/partspec1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 1999 Free Software Foundation diff --git a/gcc/testsuite/g++.old-deja/g++.oliva/stkalign.C b/gcc/testsuite/g++.old-deja/g++.oliva/stkalign.C index fc2cea6..045285f 100644 --- a/gcc/testsuite/g++.old-deja/g++.oliva/stkalign.C +++ b/gcc/testsuite/g++.old-deja/g++.oliva/stkalign.C @@ -1,11 +1,10 @@ -// Build don't link: +// { dg-do assemble { xfail i*86-*-* } } // Copyright (C) 2000 Free Software Foundation // by Alexandre Oliva <aoliva@cygnus.com> // distilled from libg++'s Fix.cc -// crash test - XFAIL i*86-*-* struct Integer { ~Integer () {} diff --git a/gcc/testsuite/g++.old-deja/g++.oliva/template1.C b/gcc/testsuite/g++.old-deja/g++.oliva/template1.C index a0b63d8..f8c9b1d 100644 --- a/gcc/testsuite/g++.old-deja/g++.oliva/template1.C +++ b/gcc/testsuite/g++.old-deja/g++.oliva/template1.C @@ -1,16 +1,15 @@ -// Build don't link: +// { dg-do assemble } -// Copyright (C) 1999 Free Software Foundation +// Copyright (C) 1999, 2003 Free Software Foundation // by Alexandre Oliva <oliva@dcc.unicamp.br> // based on bug report by Stefan Wetzel <Stefan_Wetzel@Physik.TU-Muenchen.DE> -// crash test - XFAIL *-*-* template<int P = 0> struct foo { - static void bar(double (*)[dim]) {} // ERROR - dim not declared + static void bar(double (*)[dim]) {} // { dg-error "" } dim not declared }; void bar() { - foo<>::bar(0); // ERROR - instantiated from here + foo<>::bar(0); // { dg-error "" "" { xfail *-*-* } } instantiated from here } diff --git a/gcc/testsuite/g++.old-deja/g++.oliva/template10.C b/gcc/testsuite/g++.old-deja/g++.oliva/template10.C index 1706dde..6991bf9 100644 --- a/gcc/testsuite/g++.old-deja/g++.oliva/template10.C +++ b/gcc/testsuite/g++.old-deja/g++.oliva/template10.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 1999 Free Software Foundation @@ -19,4 +19,4 @@ template<> struct A<int> { }; bool A<int>::a = true; // ok -template<> bool A<int>::b = false; // ERROR - XFAIL *-*-* +template<> bool A<int>::b = false; // { dg-error "" "" { xfail *-*-* } } diff --git a/gcc/testsuite/g++.old-deja/g++.oliva/template2.C b/gcc/testsuite/g++.old-deja/g++.oliva/template2.C index 15874f0..359e9b4 100644 --- a/gcc/testsuite/g++.old-deja/g++.oliva/template2.C +++ b/gcc/testsuite/g++.old-deja/g++.oliva/template2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 1999 Free Software Foundation @@ -11,4 +11,4 @@ template <template <typename> class C, typename T> class foo { }; template <template <typename> class C, typename T> foo<C,T>::foo(bar) -{} // gets bogus error - C<T> not a class +{} // { dg-bogus "" } C<T> not a class diff --git a/gcc/testsuite/g++.old-deja/g++.oliva/template3.C b/gcc/testsuite/g++.old-deja/g++.oliva/template3.C index df3198a..056f77c 100644 --- a/gcc/testsuite/g++.old-deja/g++.oliva/template3.C +++ b/gcc/testsuite/g++.old-deja/g++.oliva/template3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 1999 Free Software Foundation @@ -6,4 +6,4 @@ // based on bug report by Ulf Larsson <ulf.larsson@mbow337.swipnet.se> template <class T> class C {}; -class foo {} bar = bar.C(); // ERROR - call to template +class foo {} bar = bar.C(); // { dg-error "" } call to template diff --git a/gcc/testsuite/g++.old-deja/g++.oliva/template4.C b/gcc/testsuite/g++.old-deja/g++.oliva/template4.C index 4c2afc7..2268fde 100644 --- a/gcc/testsuite/g++.old-deja/g++.oliva/template4.C +++ b/gcc/testsuite/g++.old-deja/g++.oliva/template4.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 1999 Free Software Foundation @@ -11,10 +11,10 @@ int a = 1; X<a> x; // ok, a has external linkage const int b = 2; -X<b> y; // ERROR - const b has internal linkage +X<b> y; // { dg-error "" } const b has internal linkage extern const int c; X<c> z; // ok, c has external linkage extern const int c = 3; -X<c> z_; // gets bogus error - using c as constant +X<c> z_; // { dg-bogus "" } using c as constant diff --git a/gcc/testsuite/g++.old-deja/g++.oliva/template5.C b/gcc/testsuite/g++.old-deja/g++.oliva/template5.C index 030afb8..baecea5 100644 --- a/gcc/testsuite/g++.old-deja/g++.oliva/template5.C +++ b/gcc/testsuite/g++.old-deja/g++.oliva/template5.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 1999 Free Software Foundation diff --git a/gcc/testsuite/g++.old-deja/g++.oliva/template6.C b/gcc/testsuite/g++.old-deja/g++.oliva/template6.C index 159f190..f31d677 100644 --- a/gcc/testsuite/g++.old-deja/g++.oliva/template6.C +++ b/gcc/testsuite/g++.old-deja/g++.oliva/template6.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 1999 Free Software Foundation @@ -6,4 +6,4 @@ // simplified from bug report by Meenaradchagan Vishnu <mvishnu@fore.com> template <typename> struct foo {}; -template <> void foo(); // ERROR - bad specialization +template <> void foo(); // { dg-error "" } bad specialization diff --git a/gcc/testsuite/g++.old-deja/g++.oliva/template7.C b/gcc/testsuite/g++.old-deja/g++.oliva/template7.C index 16a42d8..3bcff56 100644 --- a/gcc/testsuite/g++.old-deja/g++.oliva/template7.C +++ b/gcc/testsuite/g++.old-deja/g++.oliva/template7.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 1999, 2000 Free Software Foundation @@ -8,7 +8,7 @@ template<class> struct A {}; template<template<class> class T> struct B { B() { - T<B>(); // gets bogus error - conversion from int to non-scalar + T<B>(); // { dg-bogus "" } conversion from int to non-scalar } }; B<A> foo; diff --git a/gcc/testsuite/g++.old-deja/g++.oliva/template8.C b/gcc/testsuite/g++.old-deja/g++.oliva/template8.C index 4319b22..86c4d0c 100644 --- a/gcc/testsuite/g++.old-deja/g++.oliva/template8.C +++ b/gcc/testsuite/g++.old-deja/g++.oliva/template8.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 1999 Free Software Foundation @@ -10,9 +10,9 @@ struct B { } b; template <class T> void foo() { - b.bar<T>(); // no longer gets bogus error - bar undeclared - b.template bar<T>(); // no longer gets bogus error - ditto + b.bar<T>(); // no longer { dg-bogus "" } bar undeclared + b.template bar<T>(); // no longer { dg-bogus "" } ditto b.B::bar<T>(); // ok } -template void foo<void>(); // no longer gets bogus error +template void foo<void>(); // no longer { dg-bogus "" } diff --git a/gcc/testsuite/g++.old-deja/g++.oliva/template9.C b/gcc/testsuite/g++.old-deja/g++.oliva/template9.C index fc2df3e..c237dbc 100644 --- a/gcc/testsuite/g++.old-deja/g++.oliva/template9.C +++ b/gcc/testsuite/g++.old-deja/g++.oliva/template9.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 1999 Free Software Foundation @@ -7,5 +7,5 @@ struct foo { template <class> - void bar() = 0; // ERROR - invalid initializer - XFAIL *-*-* + void bar() = 0; // { dg-error "" "" { xfail *-*-* } } invalid initializer - }; diff --git a/gcc/testsuite/g++.old-deja/g++.oliva/thunk1.C b/gcc/testsuite/g++.old-deja/g++.oliva/thunk1.C index 0aa2178..640023f 100644 --- a/gcc/testsuite/g++.old-deja/g++.oliva/thunk1.C +++ b/gcc/testsuite/g++.old-deja/g++.oliva/thunk1.C @@ -1,3 +1,4 @@ +// { dg-do run } // Copyright (C) 1999 Free Software Foundation // by Alexandre Oliva <oliva@dcc.unicamp.br> diff --git a/gcc/testsuite/g++.old-deja/g++.oliva/typename1.C b/gcc/testsuite/g++.old-deja/g++.oliva/typename1.C index bd536e3..83569dd 100644 --- a/gcc/testsuite/g++.old-deja/g++.oliva/typename1.C +++ b/gcc/testsuite/g++.old-deja/g++.oliva/typename1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 1999 Free Software Foundation @@ -12,5 +12,5 @@ template <class T> struct bar { }; template <class T> struct baz { - typedef bar<T>::foo foo; // ERROR - missing typename + typedef bar<T>::foo foo; // { dg-error "" } missing typename }; diff --git a/gcc/testsuite/g++.old-deja/g++.oliva/typename2.C b/gcc/testsuite/g++.old-deja/g++.oliva/typename2.C index f0737cd..86512c9 100644 --- a/gcc/testsuite/g++.old-deja/g++.oliva/typename2.C +++ b/gcc/testsuite/g++.old-deja/g++.oliva/typename2.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: +// { dg-do assemble } +// { dg-options "" } // Copyright (C) 1999 Free Software Foundation @@ -23,6 +23,6 @@ template <class T> struct bar { }; template <class T> struct baz { - typedef bar<T>::foo foo; // ERROR - implicit typename + typedef bar<T>::foo foo; // { dg-error "" } implicit typename void m(foo); }; diff --git a/gcc/testsuite/g++.old-deja/g++.oliva/typeof1.C b/gcc/testsuite/g++.old-deja/g++.oliva/typeof1.C index 628e287..d427c55 100644 --- a/gcc/testsuite/g++.old-deja/g++.oliva/typeof1.C +++ b/gcc/testsuite/g++.old-deja/g++.oliva/typeof1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble { xfail *-*-* } } // Copyright (C) 1999 Free Software Foundation @@ -14,7 +14,6 @@ template <class T> void foo(T b) { typedef T t1; b.t1::i; // ok typedef __typeof__(b) t2; - b.t2::i; // crash test - XFAIL *-*-* } template void foo(B); // not needed for the crash diff --git a/gcc/testsuite/g++.old-deja/g++.other/900403_04.C b/gcc/testsuite/g++.old-deja/g++.other/900403_04.C index 9d55a37..ba6aef0 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/900403_04.C +++ b/gcc/testsuite/g++.old-deja/g++.other/900403_04.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // GROUPS passed abort -// Build don't link: // g++ 1.37.1 bug 900403_04 // The following erroneous code causes g++ to abort. @@ -7,6 +7,6 @@ // keywords: abort, bit-fields, zero length struct s { - unsigned int foo:0; // ERROR - causes abort + unsigned int foo:0; // { dg-error "" } causes abort unsigned int field; }; diff --git a/gcc/testsuite/g++.old-deja/g++.other/900519_12.C b/gcc/testsuite/g++.old-deja/g++.other/900519_12.C index 1170b06..82d0f9f 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/900519_12.C +++ b/gcc/testsuite/g++.old-deja/g++.other/900519_12.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // GROUPS abort -// Build don't link: // g++ 1.37.1 bug 900519_12 // The following erroneous code causes g++ to segfault. @@ -8,4 +8,4 @@ // keywords: segfault, typedef, pointer type, function type -typedef eek void (*)(); // ERROR - +typedef eek void (*)(); // { dg-error "" } diff --git a/gcc/testsuite/g++.old-deja/g++.other/access1.C b/gcc/testsuite/g++.old-deja/g++.other/access1.C index 43aff60..e463ef4 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/access1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/access1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } class X{ unsigned int i; diff --git a/gcc/testsuite/g++.old-deja/g++.other/access10.C b/gcc/testsuite/g++.old-deja/g++.other/access10.C index bca6ac3..103cd41 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/access10.C +++ b/gcc/testsuite/g++.old-deja/g++.other/access10.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // Test that defining a static member of private type with the () syntax works. -// Build don't link: class A { private: diff --git a/gcc/testsuite/g++.old-deja/g++.other/access11.C b/gcc/testsuite/g++.old-deja/g++.other/access11.C index 04340c7..72fc333 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/access11.C +++ b/gcc/testsuite/g++.old-deja/g++.other/access11.C @@ -1,6 +1,6 @@ -// Build don't link: +// { dg-do assemble } +// { dg-options "-w" } // Origin: r.spatschek@fz-juelich.de -// Special g++ Options: -w class A { @@ -10,11 +10,11 @@ private: }; template <> -void A::g<int>(int t) { i = 1; } // ERROR - private +void A::g<int>(int t) { i = 1; } // { dg-error "" } private int main() { A a; - a.g<int>(0); // ERROR - private + a.g<int>(0); // { dg-error "" } private } diff --git a/gcc/testsuite/g++.old-deja/g++.other/access2.C b/gcc/testsuite/g++.old-deja/g++.other/access2.C index beb02a1..1276dfe 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/access2.C +++ b/gcc/testsuite/g++.old-deja/g++.other/access2.C @@ -1,12 +1,12 @@ -// Build don't link: +// { dg-do assemble } // Based on a test-case in the Standard, submitted by several people class Outer { typedef int T; struct Inner { - T i; // ERROR - not accessible - XFAIL *-*-* + T i; // { dg-error "" "" { xfail *-*-* } } not accessible - void f() { - T j; // ERROR - not accessible - XFAIL *-*-* + T j; // { dg-error "" "" { xfail *-*-* } } not accessible - } }; }; diff --git a/gcc/testsuite/g++.old-deja/g++.other/access3.C b/gcc/testsuite/g++.old-deja/g++.other/access3.C index 2ba2c0c..4752ac8 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/access3.C +++ b/gcc/testsuite/g++.old-deja/g++.other/access3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // The standard sez that a use of a name gets the most access it can through // the various paths that can reach it. Here, the access decl in B gives // us access. diff --git a/gcc/testsuite/g++.old-deja/g++.other/access4.C b/gcc/testsuite/g++.old-deja/g++.other/access4.C index 7cf472f..939bebc 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/access4.C +++ b/gcc/testsuite/g++.old-deja/g++.other/access4.C @@ -1,11 +1,11 @@ -// Build don't link: +// { dg-do assemble } -struct A { // ERROR - inaccessible +struct A { // { dg-error "" } inaccessible static int i; }; struct B : private A { }; struct C : public B { - int f () { return A::i; } // ERROR - context + int f () { return A::i; } // { dg-error "" } context }; diff --git a/gcc/testsuite/g++.old-deja/g++.other/access5.C b/gcc/testsuite/g++.old-deja/g++.other/access5.C index 0d58ea0..431ba41 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/access5.C +++ b/gcc/testsuite/g++.old-deja/g++.other/access5.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } class A { diff --git a/gcc/testsuite/g++.old-deja/g++.other/access6.C b/gcc/testsuite/g++.old-deja/g++.other/access6.C index bbe8a05..59d9297 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/access6.C +++ b/gcc/testsuite/g++.old-deja/g++.other/access6.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <int I> struct S { @@ -6,12 +6,12 @@ struct S { }; class C { - static const int i = 3; // gets bogus error - private + static const int i = 3; // { dg-bogus "" } private public: - S<C::i>* f(); // gets bogus error - redeclared + S<C::i>* f(); // { dg-bogus "" } redeclared }; -S<C::i>* C::f() { // gets bogus error - private +S<C::i>* C::f() { // { dg-bogus "" } private return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.other/access7.C b/gcc/testsuite/g++.old-deja/g++.other/access7.C index 5566d35..635c6df 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/access7.C +++ b/gcc/testsuite/g++.old-deja/g++.other/access7.C @@ -1,11 +1,11 @@ +// { dg-do assemble } // Test that access control for types and statics works properly // with nested types. -// Build don't link: class A { - static int I1; // ERROR - private - struct B1 { }; // ERROR - private + static int I1; // { dg-error "" } private + struct B1 { }; // { dg-error "" } private public: static int I2; struct B2 { }; @@ -19,15 +19,15 @@ class D: public A { void D::E::f () { - int i = I1; // ERROR - within this context - B1 b1; // ERROR - within this context + int i = I1; // { dg-error "" } within this context + B1 b1; // { dg-error "" } within this context i = I2; B2 b2; } void f () { - A::B1 b1; // ERROR - within this context - new A::B1; // ERROR - within this context - (A::B1) b1; // ERROR - within this context + A::B1 b1; // { dg-error "" } within this context + new A::B1; // { dg-error "" } within this context + (A::B1) b1; // { dg-error "" } within this context } diff --git a/gcc/testsuite/g++.old-deja/g++.other/access8.C b/gcc/testsuite/g++.old-deja/g++.other/access8.C index ae516ff..abd401b 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/access8.C +++ b/gcc/testsuite/g++.old-deja/g++.other/access8.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 10 Feb 2000 <nathan@acm.org> diff --git a/gcc/testsuite/g++.old-deja/g++.other/access9.C b/gcc/testsuite/g++.old-deja/g++.other/access9.C index 9312653..6e60a07 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/access9.C +++ b/gcc/testsuite/g++.old-deja/g++.other/access9.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // Test that g++ allows friends to use private types in their declarations. -// Build don't link: class A { typedef int I; diff --git a/gcc/testsuite/g++.old-deja/g++.other/addrof1.C b/gcc/testsuite/g++.old-deja/g++.other/addrof1.C index fda0992..2702ee0 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/addrof1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/addrof1.C @@ -1,3 +1,4 @@ +// { dg-do run } extern "C" void abort (); diff --git a/gcc/testsuite/g++.old-deja/g++.other/align.C b/gcc/testsuite/g++.old-deja/g++.other/align.C index f5cc850..a526951 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/align.C +++ b/gcc/testsuite/g++.old-deja/g++.other/align.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } #include <string.h> class bar { diff --git a/gcc/testsuite/g++.old-deja/g++.other/ambig1.C b/gcc/testsuite/g++.old-deja/g++.other/ambig1.C index d6574a2..f3fe0a8 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/ambig1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/ambig1.C @@ -1,15 +1,15 @@ -// Build don't link: +// { dg-do assemble } struct A { - int operator ++(); // ERROR - candidates - void operator ()(); // ERROR - candidates - void operator delete(void*); // ERROR - candidates + int operator ++(); // { dg-error "" } candidates + void operator ()(); // { dg-error "" } candidates + void operator delete(void*); // { dg-error "" } candidates }; struct B { - int operator ++(int); // ERROR - candidates - void operator ()(); // ERROR - candidates - void operator delete(void*); // ERROR - candidates + int operator ++(int); // { dg-error "" } candidates + void operator ()(); // { dg-error "" } candidates + void operator delete(void*); // { dg-error "" } candidates void f(); }; @@ -21,8 +21,8 @@ void f() C c; C* cp; - delete cp; // ERROR - ambiguous - c(); // ERROR - ambiguous - c++; // ERROR - ambiguous + delete cp; // { dg-error "" } ambiguous + c(); // { dg-error "" } ambiguous + c++; // { dg-error "" } ambiguous } diff --git a/gcc/testsuite/g++.old-deja/g++.other/ambig2.C b/gcc/testsuite/g++.old-deja/g++.other/ambig2.C index 764bdd6..7f60968 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/ambig2.C +++ b/gcc/testsuite/g++.old-deja/g++.other/ambig2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 1999, 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 29 Aug 1999 <nathan@acm.org> @@ -14,8 +14,8 @@ struct D3 : B, C { int m; }; void fn(D0 *d0, D1 *d1, D2 *d2, D3 *d3) { - A *a0 = d0; // ERROR - A is an ambiguous base - A *a1 = d1; // ERROR - A is an ambiguous base - A *a2 = d2; // ERROR - A is an ambiguous base - A *a3 = d3; // ERROR - A is an ambiguous base + A *a0 = d0; // { dg-error "" } A is an ambiguous base + A *a1 = d1; // { dg-error "" } A is an ambiguous base + A *a2 = d2; // { dg-error "" } A is an ambiguous base + A *a3 = d3; // { dg-error "" } A is an ambiguous base } diff --git a/gcc/testsuite/g++.old-deja/g++.other/ambig3.C b/gcc/testsuite/g++.old-deja/g++.other/ambig3.C index ebdd1eb..3b14e75 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/ambig3.C +++ b/gcc/testsuite/g++.old-deja/g++.other/ambig3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 23 June 2000 <nathan@codesourcery.com> diff --git a/gcc/testsuite/g++.old-deja/g++.other/anon1.C b/gcc/testsuite/g++.old-deja/g++.other/anon1.C index 7b011e91..5886b1a 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/anon1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/anon1.C @@ -1,6 +1,6 @@ -// Build don't link: +// { dg-do assemble } static union { union { }; -}; // WARNING - anonymous union with no members +}; // { dg-warning "" } anonymous union with no members diff --git a/gcc/testsuite/g++.old-deja/g++.other/anon2.C b/gcc/testsuite/g++.old-deja/g++.other/anon2.C index 49a7b2c..f35d5ff 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/anon2.C +++ b/gcc/testsuite/g++.old-deja/g++.other/anon2.C @@ -1,3 +1,4 @@ +// { dg-do run } extern "C" void abort (void); static union { diff --git a/gcc/testsuite/g++.old-deja/g++.other/anon3.C b/gcc/testsuite/g++.old-deja/g++.other/anon3.C index 09d44bc..3f8b5cc 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/anon3.C +++ b/gcc/testsuite/g++.old-deja/g++.other/anon3.C @@ -1,3 +1,4 @@ +// { dg-do run } // Copyright (C) 1999 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 20 May 1999 <nathan@acm.org> diff --git a/gcc/testsuite/g++.old-deja/g++.other/anon4.C b/gcc/testsuite/g++.old-deja/g++.other/anon4.C index c6d97e1..2a01be3 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/anon4.C +++ b/gcc/testsuite/g++.old-deja/g++.other/anon4.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 1999 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 20 May 1999 <nathan@acm.org> @@ -10,7 +10,7 @@ struct A { union - { // ERROR - anon union cannot have member fns + { // { dg-error "" } anon union cannot have member fns void bad(); }; }; diff --git a/gcc/testsuite/g++.old-deja/g++.other/anon5.C b/gcc/testsuite/g++.old-deja/g++.other/anon5.C index 69fafda..4b09436 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/anon5.C +++ b/gcc/testsuite/g++.old-deja/g++.other/anon5.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 14 Nov 2000 <nathan@codesourcery.com> diff --git a/gcc/testsuite/g++.old-deja/g++.other/anon6.C b/gcc/testsuite/g++.old-deja/g++.other/anon6.C index 4fd9e7d..e1cfeb2 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/anon6.C +++ b/gcc/testsuite/g++.old-deja/g++.other/anon6.C @@ -1,3 +1,4 @@ +// { dg-do run } extern "C" void abort (); struct A { diff --git a/gcc/testsuite/g++.old-deja/g++.other/anon7.C b/gcc/testsuite/g++.old-deja/g++.other/anon7.C index ba624a0..3131c6b 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/anon7.C +++ b/gcc/testsuite/g++.old-deja/g++.other/anon7.C @@ -1,24 +1,24 @@ -// Build don't link: +// { dg-do assemble } struct A { union { - int a; // ERROR - conflicts with previous declaration + int a; // { dg-error "" } conflicts with previous declaration }; - int a; // ERROR - + int a; // { dg-error "" } }; struct B { - int b; // ERROR - conflicts with previous declaration + int b; // { dg-error "" } conflicts with previous declaration union { - int b; // ERROR - duplicate member - }; // ERROR - declaration of + int b; // { dg-error "" } duplicate member + }; // { dg-error "" } declaration of }; struct C { union { - int c; // ERROR - conflicts with previous declaration + int c; // { dg-error "" } conflicts with previous declaration }; union { - int c; // ERROR - duplicate member - }; // ERROR - declaration of + int c; // { dg-error "" } duplicate member + }; // { dg-error "" } declaration of }; diff --git a/gcc/testsuite/g++.old-deja/g++.other/anon8.C b/gcc/testsuite/g++.old-deja/g++.other/anon8.C index 54d41b7..fb26d73 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/anon8.C +++ b/gcc/testsuite/g++.old-deja/g++.other/anon8.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } struct B { diff --git a/gcc/testsuite/g++.old-deja/g++.other/anon9.C b/gcc/testsuite/g++.old-deja/g++.other/anon9.C index 45c326b..a364db8 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/anon9.C +++ b/gcc/testsuite/g++.old-deja/g++.other/anon9.C @@ -1,5 +1,6 @@ +// { dg-do assemble } // Test that we properly diagnose an attempt to use an anonymous class // in declaring an external function. -typedef const struct { int i; } T; // ERROR - referenced below -void f (T* t); // ERROR - uses unnamed type +typedef const struct { int i; } T; // { dg-error "" } referenced below +void f (T* t); // { dg-error "" } uses unnamed type diff --git a/gcc/testsuite/g++.old-deja/g++.other/array1.C b/gcc/testsuite/g++.old-deja/g++.other/array1.C index 0ecba77..1907c42 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/array1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/array1.C @@ -1,3 +1,4 @@ +// { dg-do run } int i; struct S { diff --git a/gcc/testsuite/g++.old-deja/g++.other/array2.C b/gcc/testsuite/g++.old-deja/g++.other/array2.C index 255d8cc..fcea967 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/array2.C +++ b/gcc/testsuite/g++.old-deja/g++.other/array2.C @@ -1,3 +1,4 @@ +// { dg-do run } int i; struct S { diff --git a/gcc/testsuite/g++.old-deja/g++.other/array3.C b/gcc/testsuite/g++.old-deja/g++.other/array3.C index 5b45f00..7d930b5 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/array3.C +++ b/gcc/testsuite/g++.old-deja/g++.other/array3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 10 Aug 2000 <nathan@codesourcery.com> @@ -21,5 +21,5 @@ class B B::B (const A a[]) : ary(a) -{ // ERROR - bad array initializer +{ // { dg-error "" } bad array initializer } diff --git a/gcc/testsuite/g++.old-deja/g++.other/array4.C b/gcc/testsuite/g++.old-deja/g++.other/array4.C index 797197a..7e92602 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/array4.C +++ b/gcc/testsuite/g++.old-deja/g++.other/array4.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: j_bouis@hotmail.com enum { FOO = 3 }; diff --git a/gcc/testsuite/g++.old-deja/g++.other/array5.C b/gcc/testsuite/g++.old-deja/g++.other/array5.C index 9ac745c..e32bbea 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/array5.C +++ b/gcc/testsuite/g++.old-deja/g++.other/array5.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // We tried to create a temporary of unknown size and crashed. extern int a1[]; diff --git a/gcc/testsuite/g++.old-deja/g++.other/array6.C b/gcc/testsuite/g++.old-deja/g++.other/array6.C index e824850..1ffc42a 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/array6.C +++ b/gcc/testsuite/g++.old-deja/g++.other/array6.C @@ -1,4 +1,5 @@ -// Special g++ Options: -O1 +// { dg-do run } +// { dg-options "-O1" } int count = 0; diff --git a/gcc/testsuite/g++.old-deja/g++.other/array9.C b/gcc/testsuite/g++.old-deja/g++.other/array9.C index 7864c9b..c2c2d79 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/array9.C +++ b/gcc/testsuite/g++.old-deja/g++.other/array9.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class T> class A { T *d; diff --git a/gcc/testsuite/g++.old-deja/g++.other/asm1.C b/gcc/testsuite/g++.old-deja/g++.other/asm1.C index b7065d7..87edbe1 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/asm1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/asm1.C @@ -1,6 +1,6 @@ -// Build don't link: +// { dg-do assemble } // Origin: Mark Mitchell <mark@codesourcery.com> struct S { - int i asm ("abc"); // ERROR - `asm' specifier not permitted + int i asm ("abc"); // { dg-error "" } `asm' specifier not permitted }; diff --git a/gcc/testsuite/g++.old-deja/g++.other/asm2.C b/gcc/testsuite/g++.old-deja/g++.other/asm2.C index 6a96504..d5fd5a9 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/asm2.C +++ b/gcc/testsuite/g++.old-deja/g++.other/asm2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Mark Mitchell <mark@codesourcery.com> struct C @@ -8,5 +8,5 @@ struct C void C::f () { - asm ("" : : "m" (f)); // ERROR - type could not be determined + asm ("" : : "m" (f)); // { dg-error "" } type could not be determined } diff --git a/gcc/testsuite/g++.old-deja/g++.other/asm3.C b/gcc/testsuite/g++.old-deja/g++.other/asm3.C index bf0e423..5cbf048 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/asm3.C +++ b/gcc/testsuite/g++.old-deja/g++.other/asm3.C @@ -1,6 +1,5 @@ -// Build don't link: -// Skip if not target: i?86-*-* x86_64-*-* -// Special g++ Options: -O2 +// { dg-do assemble { target i?86-*-* x86_64-*-* } } +// { dg-options "-O2" } typedef unsigned long long uint64; uint64 fstps(void) diff --git a/gcc/testsuite/g++.old-deja/g++.other/badarrow.C b/gcc/testsuite/g++.old-deja/g++.other/badarrow.C index e5946fd..6e7578d 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/badarrow.C +++ b/gcc/testsuite/g++.old-deja/g++.other/badarrow.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } struct S { int i; @@ -6,5 +6,5 @@ struct S { void f() { - s->i = 3; // ERROR - base operand + s->i = 3; // { dg-error "" } base operand } diff --git a/gcc/testsuite/g++.old-deja/g++.other/badopt1.C b/gcc/testsuite/g++.old-deja/g++.other/badopt1.C index eefa00e..a4daa221 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/badopt1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/badopt1.C @@ -1,7 +1,8 @@ +// { dg-do run } +// { dg-options "-O2" } // Based on a testcase by Bryan Weston <bryanw@bluemoon.sps.mot.com> // egcs 1.1 fails to increment count -// Special g++ Options: -O2 struct Base { Base() {} }; // removing the constructor fixes the problem struct Derived : Base {}; // so does removing the base class diff --git a/gcc/testsuite/g++.old-deja/g++.other/base1.C b/gcc/testsuite/g++.old-deja/g++.other/base1.C index ace821c..3c9ac26 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/base1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/base1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 25 Nov 2000 <nathan@codesourcery.com> @@ -14,7 +14,7 @@ struct A {}; typedef const A cA; typedef A pA; -struct B : I {}; // ERROR - not an aggregate -struct C : cI {}; // ERROR - not an aggregate -struct D : cA {}; // ERROR - cv qualified +struct B : I {}; // { dg-error "" } not an aggregate +struct C : cI {}; // { dg-error "" } not an aggregate +struct D : cA {}; // { dg-error "" } cv qualified struct E : pA {}; diff --git a/gcc/testsuite/g++.old-deja/g++.other/bitfld1.C b/gcc/testsuite/g++.old-deja/g++.other/bitfld1.C index 07f1021..4710321 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/bitfld1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/bitfld1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Based on a bug report by Stephen Vavasis <vavasis@CS.Cornell.EDU> // declares template operator!= diff --git a/gcc/testsuite/g++.old-deja/g++.other/bitfld2.C b/gcc/testsuite/g++.old-deja/g++.other/bitfld2.C index 466c5ce..62a9713 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/bitfld2.C +++ b/gcc/testsuite/g++.old-deja/g++.other/bitfld2.C @@ -1,8 +1,9 @@ +// { dg-do assemble } +// { dg-options "-funsigned-bitfields" } // Origin: Mark Mitchell <mark@codesourcery.com> -// Special g++ Options: -funsigned-bitfields typedef int i[4]; struct S { - i j:12; // ERROR - array type as bitfield + i j:12; // { dg-error "" } array type as bitfield }; diff --git a/gcc/testsuite/g++.old-deja/g++.other/bitfld3.C b/gcc/testsuite/g++.old-deja/g++.other/bitfld3.C index eb70151..7e16a72 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/bitfld3.C +++ b/gcc/testsuite/g++.old-deja/g++.other/bitfld3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 1999, 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 4 Jun 1999 <nathan@acm.org> diff --git a/gcc/testsuite/g++.old-deja/g++.other/bitfld4.C b/gcc/testsuite/g++.old-deja/g++.other/bitfld4.C index ac0a378..96cb216 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/bitfld4.C +++ b/gcc/testsuite/g++.old-deja/g++.other/bitfld4.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: "Chen, Wen-Ke" <chwk@cs.arizona.edu> template <class T> diff --git a/gcc/testsuite/g++.old-deja/g++.other/bitfld5.C b/gcc/testsuite/g++.old-deja/g++.other/bitfld5.C index a9e54ec..2808ae1 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/bitfld5.C +++ b/gcc/testsuite/g++.old-deja/g++.other/bitfld5.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -w +// { dg-do assemble } +// { dg-options "-w" } struct S { diff --git a/gcc/testsuite/g++.old-deja/g++.other/builtins1.C b/gcc/testsuite/g++.old-deja/g++.other/builtins1.C index 4a1630b..ee714d7 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/builtins1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/builtins1.C @@ -1,8 +1,9 @@ +// { dg-do run } +// { dg-options "-O2" } // Test whether this builtin minimally works in G++. // Origin: Kaveh Ghazi Jan 16, 2001 // Copyright (C) 2001 Free Software Foundation. // -// Special g++ Options: -O2 namespace std { diff --git a/gcc/testsuite/g++.old-deja/g++.other/builtins10.C b/gcc/testsuite/g++.old-deja/g++.other/builtins10.C index 0fa5980..07f74f8 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/builtins10.C +++ b/gcc/testsuite/g++.old-deja/g++.other/builtins10.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Test that built-in functions don't warn when prototyped without arguments. // Origin: PR c++/9367 // Copyright (C) 2003 Free Software Foundation. diff --git a/gcc/testsuite/g++.old-deja/g++.other/builtins2.C b/gcc/testsuite/g++.old-deja/g++.other/builtins2.C index 9c55b76..68cb4e2 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/builtins2.C +++ b/gcc/testsuite/g++.old-deja/g++.other/builtins2.C @@ -1,8 +1,9 @@ +// { dg-do run } +// { dg-options "-O2" } // Test whether this builtin minimally works in G++. // Origin: Kaveh Ghazi Jan 16, 2001 // Copyright (C) 2001 Free Software Foundation. // -// Special g++ Options: -O2 namespace std { diff --git a/gcc/testsuite/g++.old-deja/g++.other/builtins3.C b/gcc/testsuite/g++.old-deja/g++.other/builtins3.C index e075d3f..ace31b0 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/builtins3.C +++ b/gcc/testsuite/g++.old-deja/g++.other/builtins3.C @@ -1,8 +1,9 @@ +// { dg-do run } +// { dg-options "-O2" } // Test whether this builtin minimally works in G++. // Origin: Kaveh Ghazi Jan 16, 2001 // Copyright (C) 2001 Free Software Foundation. // -// Special g++ Options: -O2 namespace std { diff --git a/gcc/testsuite/g++.old-deja/g++.other/builtins4.C b/gcc/testsuite/g++.old-deja/g++.other/builtins4.C index 235bb13..2cb1552 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/builtins4.C +++ b/gcc/testsuite/g++.old-deja/g++.other/builtins4.C @@ -1,8 +1,9 @@ +// { dg-do run } +// { dg-options "-O2" } // Test whether this builtin minimally works in G++. // Origin: Kaveh Ghazi Jan 16, 2001 // Copyright (C) 2001 Free Software Foundation. // -// Special g++ Options: -O2 namespace std { diff --git a/gcc/testsuite/g++.old-deja/g++.other/builtins5.C b/gcc/testsuite/g++.old-deja/g++.other/builtins5.C index 9a2cdaf..f229d29 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/builtins5.C +++ b/gcc/testsuite/g++.old-deja/g++.other/builtins5.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Test that built-in functions aren't recognized without a prototype. // Origin: Roger Sayle Mar 20, 2002 // Copyright (C) 2002 Free Software Foundation. @@ -6,11 +6,11 @@ int foo () { - return (int) ::strlen ("foo"); // ERROR - undeclared + return (int) ::strlen ("foo"); // { dg-error "" } undeclared } int bar () { - return (int) std::strlen ("bar"); // ERROR - undeclared + return (int) std::strlen ("bar"); // { dg-error "" } undeclared } diff --git a/gcc/testsuite/g++.old-deja/g++.other/builtins6.C b/gcc/testsuite/g++.old-deja/g++.other/builtins6.C index 347f4ad..75285db 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/builtins6.C +++ b/gcc/testsuite/g++.old-deja/g++.other/builtins6.C @@ -1,8 +1,9 @@ +// { dg-do run } +// { dg-options "-O2" } // Test that built-in functions are recognized with a prototype. // Origin: Roger Sayle Mar 20, 2002 // Copyright (C) 2002 Free Software Foundation. // -// Special g++ Options: -O2 typedef __SIZE_TYPE__ size_t; extern "C" size_t strlen (const char*); diff --git a/gcc/testsuite/g++.old-deja/g++.other/builtins7.C b/gcc/testsuite/g++.old-deja/g++.other/builtins7.C index 9d4cb74..4d664c1 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/builtins7.C +++ b/gcc/testsuite/g++.old-deja/g++.other/builtins7.C @@ -1,8 +1,9 @@ +// { dg-do run } +// { dg-options "-O2" } // Test that built-in functions are recognized with a prototype. // Origin: Roger Sayle Mar 20, 2002 // Copyright (C) 2002 Free Software Foundation. // -// Special g++ Options: -O2 extern "C" void link_error (void); diff --git a/gcc/testsuite/g++.old-deja/g++.other/builtins8.C b/gcc/testsuite/g++.old-deja/g++.other/builtins8.C index 4eaa56e..9d12a45 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/builtins8.C +++ b/gcc/testsuite/g++.old-deja/g++.other/builtins8.C @@ -1,8 +1,9 @@ +// { dg-do run } +// { dg-options "-O2" } // Test that built-in functions are recognized with a prototype. // Origin: Roger Sayle Mar 20, 2002 // Copyright (C) 2002 Free Software Foundation. // -// Special g++ Options: -O2 extern "C" void link_error (void); diff --git a/gcc/testsuite/g++.old-deja/g++.other/builtins9.C b/gcc/testsuite/g++.old-deja/g++.other/builtins9.C index 8f32c9f..2933866 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/builtins9.C +++ b/gcc/testsuite/g++.old-deja/g++.other/builtins9.C @@ -1,3 +1,4 @@ +// { dg-do run } // Test that inline redeclarations of builtins are emitted. // Origin: Roger Sayle Mar 28, 2002 // Copyright (C) 2002 Free Software Foundation. diff --git a/gcc/testsuite/g++.old-deja/g++.other/call1.C b/gcc/testsuite/g++.old-deja/g++.other/call1.C index 1cf6d97..e12cffe 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/call1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/call1.C @@ -1,3 +1,4 @@ +// { dg-do run } // Test that various calls to non-functions work. void f () { } diff --git a/gcc/testsuite/g++.old-deja/g++.other/cast1.C b/gcc/testsuite/g++.old-deja/g++.other/cast1.C index 7cd8059..989667a 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/cast1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/cast1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } struct S0 { }; struct S1 : virtual public S0 { }; diff --git a/gcc/testsuite/g++.old-deja/g++.other/cast2.C b/gcc/testsuite/g++.old-deja/g++.other/cast2.C index 80cf7dc..7e99ead 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/cast2.C +++ b/gcc/testsuite/g++.old-deja/g++.other/cast2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Mark Mitchell <mark@codesourcery.com> struct A { @@ -10,8 +10,8 @@ int main() typedef void (A::*F)(); F p; - const_cast<const A>(a); // ERROR - const_cast requires pointer/ref types - const_cast<F>(p); // ERROR - const_cast requires pointer/ref types - const_cast<int (*)()>(&main); // ERROR - function type in const_cast - const_cast<int (&)()>(main); // ERROR - function type in const_cast + const_cast<const A>(a); // { dg-error "" } const_cast requires pointer/ref types + const_cast<F>(p); // { dg-error "" } const_cast requires pointer/ref types + const_cast<int (*)()>(&main); // { dg-error "" } function type in const_cast + const_cast<int (&)()>(main); // { dg-error "" } function type in const_cast } diff --git a/gcc/testsuite/g++.old-deja/g++.other/cast3.C b/gcc/testsuite/g++.old-deja/g++.other/cast3.C index e8d9f0e..15a27bb 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/cast3.C +++ b/gcc/testsuite/g++.old-deja/g++.other/cast3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 1999 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 12 Dec 1999 <nathan@acm.org> @@ -21,24 +21,24 @@ void fn (void *p, void const *cp, Y *yp, Y const *ycp, Z *zp, Z const *zcp) static_cast <int *const *> (p); static_cast <int const *const *> (p); - static_cast <X *> (cp); // ERROR - lose const + static_cast <X *> (cp); // { dg-error "" } lose const static_cast <X const *> (cp); - static_cast <int *> (cp); // ERROR - lose const + static_cast <int *> (cp); // { dg-error "" } lose const static_cast <int const *> (cp); - static_cast <int **> (cp); // ERROR - lose const - static_cast <int const **> (cp); // ERROR - lose const + static_cast <int **> (cp); // { dg-error "" } lose const + static_cast <int const **> (cp); // { dg-error "" } lose const static_cast <int *const *> (cp); static_cast <int const *const *> (cp); static_cast <Z *> (yp); static_cast <Z const *> (yp); - static_cast <Z *> (ycp); // ERROR - lose const + static_cast <Z *> (ycp); // { dg-error "" } lose const static_cast <Z const *> (ycp); static_cast <Y *> (zp); static_cast <Y const *> (zp); - static_cast <Y *> (zcp); // ERROR - lose const + static_cast <Y *> (zcp); // { dg-error "" } lose const static_cast <Y const *> (zcp); } diff --git a/gcc/testsuite/g++.old-deja/g++.other/cast4.C b/gcc/testsuite/g++.old-deja/g++.other/cast4.C index 1571e30..3348dce 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/cast4.C +++ b/gcc/testsuite/g++.old-deja/g++.other/cast4.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 3 Jan 2000 <nathan@acm.org> @@ -19,8 +19,8 @@ void f0 () static_cast <char *> (a); static_cast <char *> (b); - static_cast <char *> (c); // ERROR - static cast - static_cast <char *> (d); // ERROR - static cast + static_cast <char *> (c); // { dg-error "" } static cast + static_cast <char *> (d); // { dg-error "" } static cast } void f1 () @@ -43,10 +43,10 @@ void f2 () C const c = C (); D const d = D (); - static_cast <char *> (a); // ERROR - static cast + static_cast <char *> (a); // { dg-error "" } static cast static_cast <char *> (b); - static_cast <char *> (c); // ERROR - static cast - static_cast <char *> (d); // ERROR - static cast + static_cast <char *> (c); // { dg-error "" } static cast + static_cast <char *> (d); // { dg-error "" } static cast } void f3 () @@ -56,8 +56,8 @@ void f3 () C const c = C (); D const d = D (); - static_cast <const char *> (a); // ERROR - static cast + static_cast <const char *> (a); // { dg-error "" } static cast static_cast <const char *> (b); - static_cast <const char *> (c); // ERROR - static cast + static_cast <const char *> (c); // { dg-error "" } static cast static_cast <const char *> (d); } diff --git a/gcc/testsuite/g++.old-deja/g++.other/cast5.C b/gcc/testsuite/g++.old-deja/g++.other/cast5.C index 80640eb..bae4f16 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/cast5.C +++ b/gcc/testsuite/g++.old-deja/g++.other/cast5.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 4 Feb 2000 <nathan@acm.org> @@ -12,7 +12,7 @@ typedef char const *ary_t[2]; void f0 (ary_t const *const &ary) { static_cast <void const *> (ary); - static_cast <void *> (ary); // ERROR - casts away const + static_cast <void *> (ary); // { dg-error "" } casts away const (void const *) (ary); } @@ -26,7 +26,7 @@ void f1 (ary_t *const &ary) void f2 (ary_t const *&ary) { static_cast <void const *> (ary); - static_cast <void *> (ary); // ERROR - casts away const + static_cast <void *> (ary); // { dg-error "" } casts away const (void const *) (ary); } diff --git a/gcc/testsuite/g++.old-deja/g++.other/cast6.C b/gcc/testsuite/g++.old-deja/g++.other/cast6.C index 23f63e7..ed6c0af 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/cast6.C +++ b/gcc/testsuite/g++.old-deja/g++.other/cast6.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 28 Nov 2000 <nathan@codesourcery.com> @@ -41,16 +41,16 @@ int main () { { foofPtr fp = &foo::b; - barfPtr bp = static_cast <barfPtr> (fp); // ERROR - invalid static_cast - foofPtr fp2 = static_cast <foofPtr> (bp); // ERROR - invalid static_cast - foofPtr fp3 = bp; // ERROR - cannot convert - fp3 = (foofPtr)bp; // WARNING - via virtual base + barfPtr bp = static_cast <barfPtr> (fp); // { dg-error "" } invalid static_cast + foofPtr fp2 = static_cast <foofPtr> (bp); // { dg-error "" } invalid static_cast + foofPtr fp3 = bp; // { dg-error "" } cannot convert + fp3 = (foofPtr)bp; // { dg-warning "" } via virtual base foomPtr fmp = &foo::m; - barmPtr bmp = static_cast <barmPtr> (fmp); // ERROR - invalid static_cast - foomPtr fmp2 = static_cast <foomPtr> (bmp); // ERROR - invalid static_cast - foomPtr fmp3 = bmp; // ERROR - cannot convert - fmp3 = (foomPtr)bmp; // WARNING - via virtual base + barmPtr bmp = static_cast <barmPtr> (fmp); // { dg-error "" } invalid static_cast + foomPtr fmp2 = static_cast <foomPtr> (bmp); // { dg-error "" } invalid static_cast + foomPtr fmp3 = bmp; // { dg-error "" } cannot convert + fmp3 = (foomPtr)bmp; // { dg-warning "" } via virtual base } return 0; diff --git a/gcc/testsuite/g++.old-deja/g++.other/cast7.C b/gcc/testsuite/g++.old-deja/g++.other/cast7.C index 8cdaa99..4f433f4 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/cast7.C +++ b/gcc/testsuite/g++.old-deja/g++.other/cast7.C @@ -1,3 +1,4 @@ +// { dg-do run } // Test that we can add cv-quals in a static cast to a pointer-to-base type. struct A { int i; }; diff --git a/gcc/testsuite/g++.old-deja/g++.other/cleanup1.C b/gcc/testsuite/g++.old-deja/g++.other/cleanup1.C index fd4dc6e..27eb8ed 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/cleanup1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/cleanup1.C @@ -1,3 +1,4 @@ +// { dg-do run } // Bug: fold is too eager about pushing down CLEANUP_POINT_EXPR. int d; diff --git a/gcc/testsuite/g++.old-deja/g++.other/cleanup2.C b/gcc/testsuite/g++.old-deja/g++.other/cleanup2.C index 56cd036..976b864 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/cleanup2.C +++ b/gcc/testsuite/g++.old-deja/g++.other/cleanup2.C @@ -1,5 +1,6 @@ +// { dg-do run } +// { dg-options "-O -fno-exceptions -w" } // Origin: Bryan Scattergood <bryan@fsel.com> -// Special g++ Options: -O -fno-exceptions -w extern "C" void abort(); diff --git a/gcc/testsuite/g++.old-deja/g++.other/cleanup4.C b/gcc/testsuite/g++.old-deja/g++.other/cleanup4.C index a98c5fe..8bdaa19 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/cleanup4.C +++ b/gcc/testsuite/g++.old-deja/g++.other/cleanup4.C @@ -1,6 +1,6 @@ -// Build don't link: +// { dg-do assemble } +// { dg-options "-O2 -fno-exceptions" } // Origin: Jakub Jelinek <jakub@redhat.com> -// Special g++ Options: -O2 -fno-exceptions class foo { diff --git a/gcc/testsuite/g++.old-deja/g++.other/comdat1.C b/gcc/testsuite/g++.old-deja/g++.other/comdat1.C index 5dd43a8..073260b 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/comdat1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/comdat1.C @@ -1,11 +1,10 @@ +// { dg-do run } +// { dg-gpp-additional-sources " comdat1-aux.cc" } +// { dg-options "-O" } // Test that statics in inline functions are unified between // translation units. Currently we handle this by just suppressing // inling and relying on unification of the function itself. -// Special g++ Options: -O - -// Additional sources: comdat1-aux.cc - inline int f () { static int i; diff --git a/gcc/testsuite/g++.old-deja/g++.other/comdat2.C b/gcc/testsuite/g++.old-deja/g++.other/comdat2.C index 73c1da0..aaa3d74 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/comdat2.C +++ b/gcc/testsuite/g++.old-deja/g++.other/comdat2.C @@ -1,11 +1,10 @@ +// { dg-do run } +// { dg-gpp-additional-sources " comdat2-aux.cc" } +// { dg-options "-O" } // Test that statics in inline functions are unified between // translation units. Currently we handle this by just suppressing // inling and relying on unification of the function itself. -// Special g++ Options: -O - -// Additional sources: comdat2-aux.cc - template <class T> struct S { static int f () diff --git a/gcc/testsuite/g++.old-deja/g++.other/comdat3.C b/gcc/testsuite/g++.old-deja/g++.other/comdat3.C index 1ea047d0..3ac9638 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/comdat3.C +++ b/gcc/testsuite/g++.old-deja/g++.other/comdat3.C @@ -1,7 +1,8 @@ +// { dg-do run } +// { dg-gpp-additional-sources " comdat3-aux.cc" } // Test that duplicate elimination of implicit instantiations of static // data members works properly. -// Additional sources: comdat3-aux.cc // Additional files: comdat3.h #include "comdat3.h" diff --git a/gcc/testsuite/g++.old-deja/g++.other/cond1.C b/gcc/testsuite/g++.old-deja/g++.other/cond1.C index c025beb..64cc728 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/cond1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/cond1.C @@ -1,4 +1,4 @@ -// Build don't run: +// { dg-do link } // Origin: Mark Mitchell <mark@codesourcery.com> template <class T> diff --git a/gcc/testsuite/g++.old-deja/g++.other/cond2.C b/gcc/testsuite/g++.old-deja/g++.other/cond2.C index a83273f..a7c3691 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/cond2.C +++ b/gcc/testsuite/g++.old-deja/g++.other/cond2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Loring Holden <lsh@cs.brown.edu> class Wpt {}; diff --git a/gcc/testsuite/g++.old-deja/g++.other/cond3.C b/gcc/testsuite/g++.old-deja/g++.other/cond3.C index 56867aa..1fe95fc 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/cond3.C +++ b/gcc/testsuite/g++.old-deja/g++.other/cond3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Loring Holden <lsh@cs.brown.edu> class Wtransf {}; diff --git a/gcc/testsuite/g++.old-deja/g++.other/cond4.C b/gcc/testsuite/g++.old-deja/g++.other/cond4.C index 5c97565..6b28824 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/cond4.C +++ b/gcc/testsuite/g++.old-deja/g++.other/cond4.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Loring Holden <lsh@cs.brown.edu> template <class V> diff --git a/gcc/testsuite/g++.old-deja/g++.other/cond5.C b/gcc/testsuite/g++.old-deja/g++.other/cond5.C index a9b5580..d5a5cca 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/cond5.C +++ b/gcc/testsuite/g++.old-deja/g++.other/cond5.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -W -pedantic -ansi +// { dg-do assemble } +// { dg-options "-W -pedantic -ansi" } // Copyright (C) 1999, 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 1 Sep 1999 <nathan@acm.org> @@ -22,9 +22,9 @@ void fn(int i) double d; int j; - j = (i ? e1 : e2); // WARNING - mismatch - d = (i ? e1 : 1.0); // WARNING - mismatch - d = (i ? 1.0 : e2); // WARNING - mismatch + j = (i ? e1 : e2); // { dg-warning "" } mismatch + d = (i ? e1 : 1.0); // { dg-warning "" } mismatch + d = (i ? 1.0 : e2); // { dg-warning "" } mismatch E1 e = (i ? e1 : e1); // ok j = (i ? 1 : e2); // ok j = (i ? e1 : 1); // ok @@ -35,11 +35,11 @@ void fn(int i) (i ? throw X() : throw X()); // ok, void (i ? i : j) = 1; // ok, int & - (i ? throw X() : j) = 1; // ERROR - non lvalue - (i ? j : throw X()) = 1; // ERROR - non lvalue - (i ? throw X() : throw X()) = 1; // ERROR - invalid use of void + (i ? throw X() : j) = 1; // { dg-error "" } non lvalue + (i ? j : throw X()) = 1; // { dg-error "" } non lvalue + (i ? throw X() : throw X()) = 1; // { dg-error "" } invalid use of void - (i ? (void)1 : i++); // WARNING - not a throw - (i ? i++ : (void)1); // WARNING - not a throw + (i ? (void)1 : i++); // { dg-warning "" } not a throw + (i ? i++ : (void)1); // { dg-warning "" } not a throw } diff --git a/gcc/testsuite/g++.old-deja/g++.other/cond6.C b/gcc/testsuite/g++.old-deja/g++.other/cond6.C index a462c40..db018a4 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/cond6.C +++ b/gcc/testsuite/g++.old-deja/g++.other/cond6.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // Test that the result of `x ? const E : E' is an E rvalue. // Contributed by Jason Merrill <jason@cygnus.com> @@ -10,5 +11,5 @@ int main () E e1 = a; const E &er = e1; E e2 = b ? er : a; // OK - const E* ep = &(b ? er : a); // ERROR - non-lvalue + const E* ep = &(b ? er : a); // { dg-error "" } non-lvalue } diff --git a/gcc/testsuite/g++.old-deja/g++.other/cond7.C b/gcc/testsuite/g++.old-deja/g++.other/cond7.C index 49fa73c..63d7366 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/cond7.C +++ b/gcc/testsuite/g++.old-deja/g++.other/cond7.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // // Copyright (C) 2001 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 24 Jul 2001 <nathan@codesourcery.com> @@ -21,6 +21,6 @@ X x; void foo (bool a) { - x << (a ? OVL1 : OVL2); // ERROR - incomplete type - a ? OVL1 : OVL2; // ERROR - incomplete type + x << (a ? OVL1 : OVL2); // { dg-error "" } incomplete type + a ? OVL1 : OVL2; // { dg-error "" } incomplete type } diff --git a/gcc/testsuite/g++.old-deja/g++.other/const1.C b/gcc/testsuite/g++.old-deja/g++.other/const1.C index 7c26da1..995f466 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/const1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/const1.C @@ -1,9 +1,9 @@ -// Build don't link: +// { dg-do assemble } struct S { void f() { - const int i; // ERROR - uninitialized const + const int i; // { dg-error "" } uninitialized const } }; diff --git a/gcc/testsuite/g++.old-deja/g++.other/const2.C b/gcc/testsuite/g++.old-deja/g++.other/const2.C index 90b70d1..4463b9c 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/const2.C +++ b/gcc/testsuite/g++.old-deja/g++.other/const2.C @@ -1,5 +1,5 @@ -// Build don't link: +// { dg-do assemble } struct S { - static const char* cp = "abc"; // ERROR - initialization of non-const + static const char* cp = "abc"; // { dg-error "" } initialization of non-const }; diff --git a/gcc/testsuite/g++.old-deja/g++.other/conv1.C b/gcc/testsuite/g++.old-deja/g++.other/conv1.C index a558c5e..4fe02d3 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/conv1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/conv1.C @@ -1,6 +1,6 @@ -// Build don't link: +// { dg-do assemble } class X { public: - const operator int (); // ERROR - invalid declaration. + const operator int (); // { dg-error "" } invalid declaration. }; diff --git a/gcc/testsuite/g++.old-deja/g++.other/conv2.C b/gcc/testsuite/g++.old-deja/g++.other/conv2.C index e713304..56e4103 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/conv2.C +++ b/gcc/testsuite/g++.old-deja/g++.other/conv2.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -pedantic-errors +// { dg-do assemble } +// { dg-options "-pedantic-errors" } void cheat( int* i ) { ++(*i); } @@ -9,8 +9,8 @@ struct t { int main() { - void (t::*member)( const int& ) = &t::cheat; // ERROR - conversion - void (*cheater)( const int* ) = &cheat; // ERROR - converting + void (t::*member)( const int& ) = &t::cheat; // { dg-error "" } conversion + void (*cheater)( const int* ) = &cheat; // { dg-error "" } converting t t2; const int i=1; int j=1; diff --git a/gcc/testsuite/g++.old-deja/g++.other/conv3.C b/gcc/testsuite/g++.old-deja/g++.other/conv3.C index 7690f56..383932d 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/conv3.C +++ b/gcc/testsuite/g++.old-deja/g++.other/conv3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // submitted by David C Binderman <dcb@pncl.co.uk> @@ -9,5 +9,5 @@ aci var = { 2, 3, 5, 7, 11, 13 }; void f() { - int * ip = var; // ERROR - requires const_cast + int * ip = var; // { dg-error "" } requires const_cast } diff --git a/gcc/testsuite/g++.old-deja/g++.other/conv4.C b/gcc/testsuite/g++.old-deja/g++.other/conv4.C index 0ed0ee8..c195e41 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/conv4.C +++ b/gcc/testsuite/g++.old-deja/g++.other/conv4.C @@ -1,3 +1,4 @@ +// { dg-do run } // Testcase for proper hiding of base conversion ops. struct A diff --git a/gcc/testsuite/g++.old-deja/g++.other/conv5.C b/gcc/testsuite/g++.old-deja/g++.other/conv5.C index 28c8e3b..fb3dccf 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/conv5.C +++ b/gcc/testsuite/g++.old-deja/g++.other/conv5.C @@ -1,8 +1,8 @@ -// Build don't link: +// { dg-do assemble } +// { dg-options "" } // Based on bug report by Thomas Kunert <kunert@physik.tu-dresden.de> -// Special g++ Options: int foo(); -const int (*bar)() = foo; // ERROR - adding const +const int (*bar)() = foo; // { dg-error "" } adding const diff --git a/gcc/testsuite/g++.old-deja/g++.other/conv6.C b/gcc/testsuite/g++.old-deja/g++.other/conv6.C index 5abe1b1..7a29955 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/conv6.C +++ b/gcc/testsuite/g++.old-deja/g++.other/conv6.C @@ -1,3 +1,4 @@ +// { dg-do run } // Test for composite pointer types, as defined in [expr.rel], // and common pointer to member types, as defined in [expr.eq]. @@ -11,18 +12,18 @@ int main () // The composite type is `A const *' A* ap = &b; const B* bp = &b; - if (ap != bp) // gets bogus error - distinct types + if (ap != bp) // { dg-bogus "" } distinct types return 1; // The composite type is `B const *const *' B *const * p = 0; B const * * q = 0; - if (p != q) // gets bogus error - distinct types + if (p != q) // { dg-bogus "" } distinct types return 1; // The common type is `int const B::*' const int A::*apm = &A::i; int B::*bpm = &A::i; - if (apm != bpm) // gets bogus error - distinct types + if (apm != bpm) // { dg-bogus "" } distinct types return 1; } diff --git a/gcc/testsuite/g++.old-deja/g++.other/conv7.C b/gcc/testsuite/g++.old-deja/g++.other/conv7.C index 8bb534c..71ec204 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/conv7.C +++ b/gcc/testsuite/g++.old-deja/g++.other/conv7.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // // Copyright (C) 2001 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 5 May 2001 <nathan@codesourcery.com> diff --git a/gcc/testsuite/g++.old-deja/g++.other/conv8.C b/gcc/testsuite/g++.old-deja/g++.other/conv8.C index 9ab3b74..4f2bd43 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/conv8.C +++ b/gcc/testsuite/g++.old-deja/g++.other/conv8.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Jakub Jelinek <jakub@redhat.com> class bar @@ -27,5 +27,5 @@ void foo::a() { typedef void(foo::*t)(); t c = & foo::b; - d = (T) c; // WARNING - pointer to member cast + d = (T) c; // { dg-warning "" } pointer to member cast } diff --git a/gcc/testsuite/g++.old-deja/g++.other/conv9.C b/gcc/testsuite/g++.old-deja/g++.other/conv9.C index 4fd022b..0fcf980 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/conv9.C +++ b/gcc/testsuite/g++.old-deja/g++.other/conv9.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } struct Foo diff --git a/gcc/testsuite/g++.old-deja/g++.other/copy1.C b/gcc/testsuite/g++.old-deja/g++.other/copy1.C index 5cc68a5..978599a 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/copy1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/copy1.C @@ -1,3 +1,4 @@ +// { dg-do run } // Bug: expand_vec_init doesn't copy arrays of builtin types. struct B { diff --git a/gcc/testsuite/g++.old-deja/g++.other/copy2.C b/gcc/testsuite/g++.old-deja/g++.other/copy2.C index 2fb52a1..c3e96e1 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/copy2.C +++ b/gcc/testsuite/g++.old-deja/g++.other/copy2.C @@ -1,3 +1,4 @@ +// { dg-do run } // Origin: Mark Mitchell <mark@codesourcery.com> int i; diff --git a/gcc/testsuite/g++.old-deja/g++.other/copy3.C b/gcc/testsuite/g++.old-deja/g++.other/copy3.C index aa2c905..3b74a90 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/copy3.C +++ b/gcc/testsuite/g++.old-deja/g++.other/copy3.C @@ -1,4 +1,4 @@ -// Build don't run: +// { dg-do link } // Origin: ericp@mit.edu class bar { diff --git a/gcc/testsuite/g++.old-deja/g++.other/covar1.C b/gcc/testsuite/g++.old-deja/g++.other/covar1.C index cd19816..217f017 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/covar1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/covar1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Jason Merrill <jason@cygnus.com> struct A { diff --git a/gcc/testsuite/g++.old-deja/g++.other/crash1.C b/gcc/testsuite/g++.old-deja/g++.other/crash1.C index a473412..d629689 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/crash1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/crash1.C @@ -1,6 +1,7 @@ +// { dg-do assemble } class A { - enum B { ONE, TWO, THREE }; // ERROR - private + enum B { ONE, TWO, THREE }; // { dg-error "" } private }; -class A::B; // ERROR - A::B is not a class type, context +class A::B; // { dg-error "" } A::B is not a class type, context diff --git a/gcc/testsuite/g++.old-deja/g++.other/crash10.C b/gcc/testsuite/g++.old-deja/g++.other/crash10.C index 3168f3f..d0534f0 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/crash10.C +++ b/gcc/testsuite/g++.old-deja/g++.other/crash10.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Loring Holden <lsh@cs.brown.edu> template <class T> diff --git a/gcc/testsuite/g++.old-deja/g++.other/crash11.C b/gcc/testsuite/g++.old-deja/g++.other/crash11.C index 6b78b2f..16fd610 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/crash11.C +++ b/gcc/testsuite/g++.old-deja/g++.other/crash11.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // Origin: Alfred Minarik <a8601248@unet.univie.ac.at> -// Build don't link: template <typename T> struct allocator diff --git a/gcc/testsuite/g++.old-deja/g++.other/crash12.C b/gcc/testsuite/g++.old-deja/g++.other/crash12.C index ad81131..73bbb8b 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/crash12.C +++ b/gcc/testsuite/g++.old-deja/g++.other/crash12.C @@ -1,6 +1,6 @@ -// Build don't link: +// { dg-do assemble } +// { dg-options "" } // Origin: Alfred Minarik <a8601248@unet.univie.ac.at> -// Special g++ Options: template<typename T> struct S diff --git a/gcc/testsuite/g++.old-deja/g++.other/crash13.C b/gcc/testsuite/g++.old-deja/g++.other/crash13.C index 0cda9f9..03b25df 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/crash13.C +++ b/gcc/testsuite/g++.old-deja/g++.other/crash13.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } struct Base_bitset { unsigned M_w[2]; diff --git a/gcc/testsuite/g++.old-deja/g++.other/crash14.C b/gcc/testsuite/g++.old-deja/g++.other/crash14.C index f249a67..d97577d 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/crash14.C +++ b/gcc/testsuite/g++.old-deja/g++.other/crash14.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Mark Mitchell <mark@codesourcery.com> struct S diff --git a/gcc/testsuite/g++.old-deja/g++.other/crash15.C b/gcc/testsuite/g++.old-deja/g++.other/crash15.C index f863350..c4af169 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/crash15.C +++ b/gcc/testsuite/g++.old-deja/g++.other/crash15.C @@ -1,11 +1,11 @@ +// { dg-do assemble } +// { dg-options "-O2" } // g++ crashed because we unsaved the TARGET_EXPR for the return value // for get_allocator without first expanding it, because it was part of the // cleanup for the temporary string. // Derived from libstdc++ v3 code. -// Special g++ Options: -O2 -// Build don't link: class AA {}; diff --git a/gcc/testsuite/g++.old-deja/g++.other/crash16.C b/gcc/testsuite/g++.old-deja/g++.other/crash16.C index 8555b75..91184bd 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/crash16.C +++ b/gcc/testsuite/g++.old-deja/g++.other/crash16.C @@ -1,8 +1,7 @@ -// Build don't link: -// Special g++ Options: -O2 +// { dg-do assemble { xfail *-*-* } } +// { dg-options "-O2" } // Origin: scott snyder <snyder@fnal.gov> -// crash test - XFAIL *-*-* void _S_initialize(); diff --git a/gcc/testsuite/g++.old-deja/g++.other/crash17.C b/gcc/testsuite/g++.old-deja/g++.other/crash17.C index 673492b..3519549 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/crash17.C +++ b/gcc/testsuite/g++.old-deja/g++.other/crash17.C @@ -1,6 +1,6 @@ -// Build don't link: +// { dg-do assemble } // Origin: Dima Volodin <dvv@dvv.org> class C { - static int const N (1000); // ERROR - invalid declaration + static int const N (1000); // { dg-error "" } invalid declaration }; diff --git a/gcc/testsuite/g++.old-deja/g++.other/crash18.C b/gcc/testsuite/g++.old-deja/g++.other/crash18.C index 335d8b9..2b6f166 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/crash18.C +++ b/gcc/testsuite/g++.old-deja/g++.other/crash18.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -fvtable-gc -S +// { dg-do assemble } +// { dg-options "-fvtable-gc -S" } // Origin: Mark Mitchell <mitchell@codesourcery.com> struct S { diff --git a/gcc/testsuite/g++.old-deja/g++.other/crash19.C b/gcc/testsuite/g++.old-deja/g++.other/crash19.C index d7ecba8..bafde81 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/crash19.C +++ b/gcc/testsuite/g++.old-deja/g++.other/crash19.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Mark Mitchell <mark@codesourcery.com> template <class T> diff --git a/gcc/testsuite/g++.old-deja/g++.other/crash2.C b/gcc/testsuite/g++.old-deja/g++.other/crash2.C index 93e0a6e..3d62d04 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/crash2.C +++ b/gcc/testsuite/g++.old-deja/g++.other/crash2.C @@ -1,9 +1,9 @@ -// Build don't link: +// { dg-do assemble } struct A { int rep; - static const A a(0); // ERROR - initialization - static const A b = 3; // ERROR - initialization - static const A& c = 2; // ERROR - initialization + static const A a(0); // { dg-error "" } initialization + static const A b = 3; // { dg-error "" } initialization + static const A& c = 2; // { dg-error "" } initialization A(int x) : rep(x) {} }; diff --git a/gcc/testsuite/g++.old-deja/g++.other/crash20.C b/gcc/testsuite/g++.old-deja/g++.other/crash20.C index bf4370a..dd236e1 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/crash20.C +++ b/gcc/testsuite/g++.old-deja/g++.other/crash20.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } #include <typeinfo> diff --git a/gcc/testsuite/g++.old-deja/g++.other/crash21.C b/gcc/testsuite/g++.old-deja/g++.other/crash21.C index dd98502..62ba7f9 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/crash21.C +++ b/gcc/testsuite/g++.old-deja/g++.other/crash21.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Gabriel Dos Reis <gdr@codesourcery.com> struct A { @@ -9,6 +9,6 @@ struct B : public A { int x; }; -void B::f(int& t) { // ERROR - undeclared method +void B::f(int& t) { // { dg-error "" } undeclared method x = t; } diff --git a/gcc/testsuite/g++.old-deja/g++.other/crash22.C b/gcc/testsuite/g++.old-deja/g++.other/crash22.C index 89f35f3..0890aef 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/crash22.C +++ b/gcc/testsuite/g++.old-deja/g++.other/crash22.C @@ -1,5 +1,5 @@ -// Build don't run: -// Special g++ Options: -O2 +// { dg-do link } +// { dg-options "-O2" } class foo { diff --git a/gcc/testsuite/g++.old-deja/g++.other/crash23.C b/gcc/testsuite/g++.old-deja/g++.other/crash23.C index 0df4e23..1324902 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/crash23.C +++ b/gcc/testsuite/g++.old-deja/g++.other/crash23.C @@ -1,7 +1,7 @@ -// Build don't link: +// { dg-do assemble } // Origin: Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at> class T; -inline void operator<(T&, T&) { } // ERROR - previous definition -inline void operator<(T&, T&) { } // ERROR - duplicate definition +inline void operator<(T&, T&) { } // { dg-error "" } previous definition +inline void operator<(T&, T&) { } // { dg-error "" } duplicate definition diff --git a/gcc/testsuite/g++.old-deja/g++.other/crash24.C b/gcc/testsuite/g++.old-deja/g++.other/crash24.C index b3561af..09e9788 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/crash24.C +++ b/gcc/testsuite/g++.old-deja/g++.other/crash24.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Jakub Jelinek <jakub@redhat.com> class foo { @@ -7,11 +7,11 @@ class foo { friend class __iterator; typedef __iterator const_iterator; virtual ~foo() { } - __iterator begin(); // ERROR - + __iterator begin(); // { dg-error "" } }; static void iteratorTest(const foo &x) { - foo::const_iterator i = x.begin(); // ERROR - + foo::const_iterator i = x.begin(); // { dg-error "" } for (; i; ++i) *i; } diff --git a/gcc/testsuite/g++.old-deja/g++.other/crash25.C b/gcc/testsuite/g++.old-deja/g++.other/crash25.C index 6c9e1a1..f3c7c25 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/crash25.C +++ b/gcc/testsuite/g++.old-deja/g++.other/crash25.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Jakub Jelinek <jakub@redhat.com> class X { @@ -8,9 +8,9 @@ public: } X::x() -{ // ERROR - +{ // { dg-error "" } } -X::~x() // ERROR - +X::~x() // { dg-error "" } { } diff --git a/gcc/testsuite/g++.old-deja/g++.other/crash26.C b/gcc/testsuite/g++.old-deja/g++.other/crash26.C index c3e290f..c9a12d0 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/crash26.C +++ b/gcc/testsuite/g++.old-deja/g++.other/crash26.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Jakub Jelinek <jakub@redhat.com> class foo { @@ -9,5 +9,5 @@ public: void bar(bool x) { if(x) - foo *a = new foo(foo::not); // ERROR - + foo *a = new foo(foo::not); // { dg-error "" } } diff --git a/gcc/testsuite/g++.old-deja/g++.other/crash27.C b/gcc/testsuite/g++.old-deja/g++.other/crash27.C index dfbacc8..b02f310 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/crash27.C +++ b/gcc/testsuite/g++.old-deja/g++.other/crash27.C @@ -1,7 +1,7 @@ -// Build don't link: +// { dg-do assemble } // Origin: Jakub Jelinek <jakub@redhat.com> -X(Y(long, Type, CLink)); break; default: break; } } } // ERROR - +X(Y(long, Type, CLink)); break; default: break; } } } // { dg-error "" } struct A { inline A (); diff --git a/gcc/testsuite/g++.old-deja/g++.other/crash28.C b/gcc/testsuite/g++.old-deja/g++.other/crash28.C index 94c977a..4f1115b 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/crash28.C +++ b/gcc/testsuite/g++.old-deja/g++.other/crash28.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Jakub Jelinek <jakub@redhat.com> namespace N @@ -31,5 +31,5 @@ public: }; void foo::x() throw(bar) { - if (!b) throw bar (static_cast<::N::X*>(this)); // ERROR - parse error + if (!b) throw bar (static_cast<::N::X*>(this)); // { dg-error "" } parse error } diff --git a/gcc/testsuite/g++.old-deja/g++.other/crash29.C b/gcc/testsuite/g++.old-deja/g++.other/crash29.C index 859cd49..cbcfcf5 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/crash29.C +++ b/gcc/testsuite/g++.old-deja/g++.other/crash29.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Jakub Jelinek <jakub@redhat.com> class bar @@ -9,5 +9,5 @@ public: }; void bar::foo () { - baz x(); // ERROR - + baz x(); // { dg-error "" } } diff --git a/gcc/testsuite/g++.old-deja/g++.other/crash3.C b/gcc/testsuite/g++.old-deja/g++.other/crash3.C index 88790cb..5a21827 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/crash3.C +++ b/gcc/testsuite/g++.old-deja/g++.other/crash3.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -g -O2 +// { dg-do assemble } +// { dg-options "-g -O2" } inline void f() { struct S {}; diff --git a/gcc/testsuite/g++.old-deja/g++.other/crash30.C b/gcc/testsuite/g++.old-deja/g++.other/crash30.C index acd45bb..043d54f 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/crash30.C +++ b/gcc/testsuite/g++.old-deja/g++.other/crash30.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Jakub Jelinek <jakub@redhat.com> struct foo @@ -7,7 +7,7 @@ struct foo void x(); }; -void foo::x() throw(bar) // ERROR - parse error +void foo::x() throw(bar) // { dg-error "" } parse error { } diff --git a/gcc/testsuite/g++.old-deja/g++.other/crash31.C b/gcc/testsuite/g++.old-deja/g++.other/crash31.C index 064336f..0fe8e73 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/crash31.C +++ b/gcc/testsuite/g++.old-deja/g++.other/crash31.C @@ -1,7 +1,7 @@ -// Build don't link: +// { dg-do assemble } // Origin: Jakub Jelinek <jakub@redhat.com> -// excess errors test - XFAIL *-*-* +// { dg-bogus "" "" { xfail *-*-* } 13 } namespace bar { @@ -9,4 +9,4 @@ struct foo { foo(); }; - // ERROR - parse error XFAIL *-*-* + // { dg-error "" "" { xfail *-*-* } } diff --git a/gcc/testsuite/g++.old-deja/g++.other/crash32.C b/gcc/testsuite/g++.old-deja/g++.other/crash32.C index 9ff4c86..ad21396 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/crash32.C +++ b/gcc/testsuite/g++.old-deja/g++.other/crash32.C @@ -1,17 +1,15 @@ -// Build don't link: +// { dg-do assemble } // Origin: Jakub Jelinek <jakub@redhat.com> -// excess errors test - XFAIL *-*-* - struct foo { enum e { - not // ERROR - - }; - ~foo(); + not // { dg-error "" } + }; // { dg-bogus "" "" { xfail *-*-* } } + ~foo(); // { dg-bogus "" "" { xfail *-*-* } } void x (foo *&a, bool b = (unsigned char)0); -}; +}; // { dg-bogus "" "" { xfail *-*-* } } namespace N { @@ -26,7 +24,6 @@ namespace N typedef baz<bar> c; } -struct z // crash test - XFAIL *-*-* { int a; }; diff --git a/gcc/testsuite/g++.old-deja/g++.other/crash33.C b/gcc/testsuite/g++.old-deja/g++.other/crash33.C index 757bf51..1d2227a 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/crash33.C +++ b/gcc/testsuite/g++.old-deja/g++.other/crash33.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Jakub Jelinek <jakub@redhat.com> template <class T> diff --git a/gcc/testsuite/g++.old-deja/g++.other/crash34.C b/gcc/testsuite/g++.old-deja/g++.other/crash34.C index db81862..c320ccb 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/crash34.C +++ b/gcc/testsuite/g++.old-deja/g++.other/crash34.C @@ -1,7 +1,6 @@ -// Build don't link: +// { dg-do assemble { xfail *-*-* } } // Origin: Jakub Jelinek <jakub@redhat.com> -// crash test - XFAIL *-*-* class v { diff --git a/gcc/testsuite/g++.old-deja/g++.other/crash35.C b/gcc/testsuite/g++.old-deja/g++.other/crash35.C index 1582dae..bb52ff7 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/crash35.C +++ b/gcc/testsuite/g++.old-deja/g++.other/crash35.C @@ -1,7 +1,7 @@ -// Build don't link: +// { dg-do assemble } // Origin: Jakub Jelinek <jakub@redhat.com> void foo() { - if [ // ERROR - parse error + if [ // { dg-error "" } parse error } diff --git a/gcc/testsuite/g++.old-deja/g++.other/crash36.C b/gcc/testsuite/g++.old-deja/g++.other/crash36.C index 11190cf..4002ce3 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/crash36.C +++ b/gcc/testsuite/g++.old-deja/g++.other/crash36.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 7 Nov 2000 <nathan@codesourcery.com> @@ -6,16 +6,16 @@ // to the standard's expectation. void *operator new (__SIZE_TYPE__); // ok -void operator new (__SIZE_TYPE__); // ERROR - must return void * -void *operator new (); // ERROR - must take size_t -void *operator new (char); // ERROR - must take size_t +void operator new (__SIZE_TYPE__); // { dg-error "" } must return void * +void *operator new (); // { dg-error "" } must take size_t +void *operator new (char); // { dg-error "" } must take size_t void *operator new (__SIZE_TYPE__, ...) throw(); // ok void operator delete (void *) throw (); // ok -int operator delete (void *) throw (); // ERROR - must return void -void operator delete () throw (); // ERROR - must take void * -void operator delete (int *) throw (); // ERROR - must take void * +int operator delete (void *) throw (); // { dg-error "" } must return void +void operator delete () throw (); // { dg-error "" } must take void * +void operator delete (int *) throw (); // { dg-error "" } must take void * void operator delete (void *, __SIZE_TYPE__) throw (); // ok -void operator delete (...) throw (); // ERROR - must take void * +void operator delete (...) throw (); // { dg-error "" } must take void * void operator delete (void *, ...) throw (); // ok diff --git a/gcc/testsuite/g++.old-deja/g++.other/crash37.C b/gcc/testsuite/g++.old-deja/g++.other/crash37.C index 3b734dd..900fd72 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/crash37.C +++ b/gcc/testsuite/g++.old-deja/g++.other/crash37.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 23 Nov 2000 <nathan@codesourcery.com> @@ -10,7 +10,7 @@ class bifstream; int main() { - bifstream bifs; // ERROR - incomplete type + bifstream bifs; // { dg-error "" } incomplete type if (!bifs) { } diff --git a/gcc/testsuite/g++.old-deja/g++.other/crash38.C b/gcc/testsuite/g++.old-deja/g++.other/crash38.C index 5faab45..d07115e 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/crash38.C +++ b/gcc/testsuite/g++.old-deja/g++.other/crash38.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 28 Nov 2000 <nathan@codesourcery.com> @@ -6,7 +6,7 @@ // Bug 611. We ICEd when calling a member function returning an incomplete // type by value. -struct X; // ERROR - forward ref +struct X; // { dg-error "" } forward ref struct Y { @@ -15,5 +15,5 @@ struct Y void baz (Y *p) { - p->foo (); // ERROR - incomplete + p->foo (); // { dg-error "" } incomplete } diff --git a/gcc/testsuite/g++.old-deja/g++.other/crash39.C b/gcc/testsuite/g++.old-deja/g++.other/crash39.C index 0dbd395..a7af288 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/crash39.C +++ b/gcc/testsuite/g++.old-deja/g++.other/crash39.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 10 Jan 2001 <nathan@codesourcery.com> @@ -10,8 +10,8 @@ struct X { ~X (); }; -struct S { X a; }; // ERROR - previous defn -struct S { X a; }; // ERROR - redefinition +struct S { X a; }; // { dg-error "" } previous defn +struct S { X a; }; // { dg-error "" } redefinition void c1(S s) { diff --git a/gcc/testsuite/g++.old-deja/g++.other/crash4.C b/gcc/testsuite/g++.old-deja/g++.other/crash4.C index cedaa50..9298471 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/crash4.C +++ b/gcc/testsuite/g++.old-deja/g++.other/crash4.C @@ -1,7 +1,7 @@ -// Build don't link: +// { dg-do assemble } struct T { - struct S __attribute__ ((packed)) { // ERROR - parse error + struct S __attribute__ ((packed)) { // { dg-error "" } parse error int i; }; }; diff --git a/gcc/testsuite/g++.old-deja/g++.other/crash40.C b/gcc/testsuite/g++.old-deja/g++.other/crash40.C index 3af3f73..4eb0233 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/crash40.C +++ b/gcc/testsuite/g++.old-deja/g++.other/crash40.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 2001 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 11 April 2001 <nathan@codesourcery.com> // Origin: Theo Papadopoulo <Theodore.Papadopoulo@sophia.inria.fr> diff --git a/gcc/testsuite/g++.old-deja/g++.other/crash41.C b/gcc/testsuite/g++.old-deja/g++.other/crash41.C index 7043450..77f152b 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/crash41.C +++ b/gcc/testsuite/g++.old-deja/g++.other/crash41.C @@ -1,13 +1,13 @@ -// Build don't link: +// { dg-do assemble } // // Copyright (C) 2001 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 8 May 2001 <nathan@codesourcery.com> // Bug 2744. We ICE'd on strange characters -@ // ERROR - parse error -int a; #// ERROR - parse error -## // ERROR - parse error -$ // ERROR - parse error -£ // ERROR - parse error -` // ERROR - parse error +@ // { dg-error "" } parse error +int a; #// { dg-error "" } parse error +## // { dg-error "" } parse error +$ // { dg-error "" } parse error +£ // { dg-error "" } parse error +` // { dg-error "" } parse error diff --git a/gcc/testsuite/g++.old-deja/g++.other/crash42.C b/gcc/testsuite/g++.old-deja/g++.other/crash42.C index be316ac..a6d9e61 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/crash42.C +++ b/gcc/testsuite/g++.old-deja/g++.other/crash42.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -g +// { dg-do assemble } +// { dg-options "-g" } // // Copyright (C) 2001 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 25 Jul 2001 <nathan@codesourcery.com> diff --git a/gcc/testsuite/g++.old-deja/g++.other/crash5.C b/gcc/testsuite/g++.old-deja/g++.other/crash5.C index 761ec0d..0704102 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/crash5.C +++ b/gcc/testsuite/g++.old-deja/g++.other/crash5.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } class TecMesh {}; diff --git a/gcc/testsuite/g++.old-deja/g++.other/crash6.C b/gcc/testsuite/g++.old-deja/g++.other/crash6.C index 5f51ab4..6c1b7f6 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/crash6.C +++ b/gcc/testsuite/g++.old-deja/g++.other/crash6.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -O2 +// { dg-do assemble } +// { dg-options "-O2" } struct E { diff --git a/gcc/testsuite/g++.old-deja/g++.other/crash60.C b/gcc/testsuite/g++.old-deja/g++.other/crash60.C index 5526674..06f3127 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/crash60.C +++ b/gcc/testsuite/g++.old-deja/g++.other/crash60.C @@ -1,7 +1,7 @@ -// Build don't link: +// { dg-do assemble } void foo () { int e; - e := e; // ERROR - parse error + e := e; // { dg-error "" } parse error } diff --git a/gcc/testsuite/g++.old-deja/g++.other/crash7.C b/gcc/testsuite/g++.old-deja/g++.other/crash7.C index 0f58198..d579df0 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/crash7.C +++ b/gcc/testsuite/g++.old-deja/g++.other/crash7.C @@ -1,11 +1,11 @@ -// Build don't link: +// { dg-do assemble } void f() { union { private: - int i; // ERROR - private + int i; // { dg-error "" } private } u; - u.i = 3; // ERROR - within this context + u.i = 3; // { dg-error "" } within this context } diff --git a/gcc/testsuite/g++.old-deja/g++.other/crash8.C b/gcc/testsuite/g++.old-deja/g++.other/crash8.C index 22b27ef..5e35793 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/crash8.C +++ b/gcc/testsuite/g++.old-deja/g++.other/crash8.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Jason Merrill <jason@cygnus.com> int main() diff --git a/gcc/testsuite/g++.old-deja/g++.other/crash9.C b/gcc/testsuite/g++.old-deja/g++.other/crash9.C index d3c2397..a0d4873 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/crash9.C +++ b/gcc/testsuite/g++.old-deja/g++.other/crash9.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Jason Merrill <jason@cygnus.com> struct A { }; diff --git a/gcc/testsuite/g++.old-deja/g++.other/ctor1.C b/gcc/testsuite/g++.old-deja/g++.other/ctor1.C index 1c67d0a..5baf41b 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/ctor1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/ctor1.C @@ -1,4 +1,6 @@ -// Additional sources: ctor1-aux.cc +// { dg-do run } +// { dg-gpp-additional-sources " ctor1-aux.cc" } + // Origin: Mark Mitchell <mark@codesourcery.com> template <class T> diff --git a/gcc/testsuite/g++.old-deja/g++.other/cvqual1.C b/gcc/testsuite/g++.old-deja/g++.other/cvqual1.C index 14a180c..e00590a 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/cvqual1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/cvqual1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Mark Mitchell <mark@codesourcery.com> int i = 3; diff --git a/gcc/testsuite/g++.old-deja/g++.other/cvt1.C b/gcc/testsuite/g++.old-deja/g++.other/cvt1.C index f448cc1a..aa03082 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/cvt1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/cvt1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } typedef int Array_T[2]; diff --git a/gcc/testsuite/g++.old-deja/g++.other/dcast1.C b/gcc/testsuite/g++.old-deja/g++.other/dcast1.C index d9dd657..830def8 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/dcast1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/dcast1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } class C { public: @@ -10,6 +10,6 @@ extern volatile C& cr; void f () { - dynamic_cast<void*>(cp); // ERROR - cannot dynamic_cast - dynamic_cast<C&>(cr); // ERROR - cannot dynamic_cast + dynamic_cast<void*>(cp); // { dg-error "" } cannot dynamic_cast + dynamic_cast<C&>(cr); // { dg-error "" } cannot dynamic_cast } diff --git a/gcc/testsuite/g++.old-deja/g++.other/dcast2.C b/gcc/testsuite/g++.old-deja/g++.other/dcast2.C index bd343a7..0f08e06 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/dcast2.C +++ b/gcc/testsuite/g++.old-deja/g++.other/dcast2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Based on a testcase by Ruslan Shevchenko <Ruslan@Shevchenko.Kiev.UA> @@ -11,7 +11,7 @@ struct D : public B { void foo() { B x; - dynamic_cast<D*>(&x); // WARNING - will never succeed + dynamic_cast<D*>(&x); // { dg-warning "" } will never succeed B* p = &x; dynamic_cast<D*>(p); } diff --git a/gcc/testsuite/g++.old-deja/g++.other/debug1.C b/gcc/testsuite/g++.old-deja/g++.other/debug1.C index 8485895..58fd2ca 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/debug1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/debug1.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -g +// { dg-do assemble } +// { dg-options "-g" } typedef unsigned int size_t; diff --git a/gcc/testsuite/g++.old-deja/g++.other/debug2.C b/gcc/testsuite/g++.old-deja/g++.other/debug2.C index 200aeb3..f5f0a4f 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/debug2.C +++ b/gcc/testsuite/g++.old-deja/g++.other/debug2.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -funroll-loops -O2 -g +// { dg-do assemble } +// { dg-options "-funroll-loops -O2 -g" } inline void f() { diff --git a/gcc/testsuite/g++.old-deja/g++.other/debug3.C b/gcc/testsuite/g++.old-deja/g++.other/debug3.C index d1c8cf7..1b5507b 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/debug3.C +++ b/gcc/testsuite/g++.old-deja/g++.other/debug3.C @@ -1,6 +1,6 @@ -// Build don't link: +// { dg-do assemble } +// { dg-options "-O2" } // Origin: Mark Mitchell <mark@codesourcery.com> -// Special g++ Options: -O2 struct S { diff --git a/gcc/testsuite/g++.old-deja/g++.other/debug4.C b/gcc/testsuite/g++.old-deja/g++.other/debug4.C index 07f606d..e6c6407 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/debug4.C +++ b/gcc/testsuite/g++.old-deja/g++.other/debug4.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -g +// { dg-do assemble } +// { dg-options "-g" } typedef volatile struct { int i; diff --git a/gcc/testsuite/g++.old-deja/g++.other/debug5.C b/gcc/testsuite/g++.old-deja/g++.other/debug5.C index bf88534..706eabe 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/debug5.C +++ b/gcc/testsuite/g++.old-deja/g++.other/debug5.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -g +// { dg-do assemble } +// { dg-options "-g" } // Origin: Mark Mitchell <mark@codesourcery.com> struct S diff --git a/gcc/testsuite/g++.old-deja/g++.other/debug6.C b/gcc/testsuite/g++.old-deja/g++.other/debug6.C index 43f13b9..a4d0884 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/debug6.C +++ b/gcc/testsuite/g++.old-deja/g++.other/debug6.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -g -O2 +// { dg-do assemble } +// { dg-options "-g -O2" } // Copyright (C) 1999 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 21 Nov 1999 <nathan@acm.org> diff --git a/gcc/testsuite/g++.old-deja/g++.other/debug7.C b/gcc/testsuite/g++.old-deja/g++.other/debug7.C index 8b3efcc..f486de1 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/debug7.C +++ b/gcc/testsuite/g++.old-deja/g++.other/debug7.C @@ -1,6 +1,6 @@ -// Build don't run: +// { dg-do link } +// { dg-options "-g -O2" } // Origin: Loren James Rittle <rittle@latour.rsch.comm.mot.com> -// Special g++ Options: -g -O2 namespace std { const int __stl_chunk_size = 7; diff --git a/gcc/testsuite/g++.old-deja/g++.other/debug8.C b/gcc/testsuite/g++.old-deja/g++.other/debug8.C index 2b78be2..d50aec4 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/debug8.C +++ b/gcc/testsuite/g++.old-deja/g++.other/debug8.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -g +// { dg-do assemble } +// { dg-options "-g" } struct X { const int x[4]; diff --git a/gcc/testsuite/g++.old-deja/g++.other/debug9.C b/gcc/testsuite/g++.old-deja/g++.other/debug9.C index bb75aaa..2ddc927 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/debug9.C +++ b/gcc/testsuite/g++.old-deja/g++.other/debug9.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -g +// { dg-do assemble } +// { dg-options "-g" } // Copyright (C) 2001 Free Software Foundation, Inc. // Contributed by Jeffrey D. Oldham 2001 May 17 <oldham@codesourcery.com>. diff --git a/gcc/testsuite/g++.old-deja/g++.other/decl1.C b/gcc/testsuite/g++.old-deja/g++.other/decl1.C index 27460de..07bcc91 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/decl1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/decl1.C @@ -1,7 +1,6 @@ -// Build don't link: +// { dg-do assemble } // Based on a test case by Phil Blecker <tmwg@inxservices.com> -// excess errors test int foo(int); int bar() { diff --git a/gcc/testsuite/g++.old-deja/g++.other/decl2.C b/gcc/testsuite/g++.old-deja/g++.other/decl2.C index 1da7540..493356a 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/decl2.C +++ b/gcc/testsuite/g++.old-deja/g++.other/decl2.C @@ -1,7 +1,7 @@ -// Build don't link: +// { dg-do assemble } // Based on a test-case by Maciej Radziejewski <maciejr@iws.uni-stuttgart.de> -int i(0)(1); // ERROR - multiple initialization -int j(2) = 3; // ERROR - multiple initialization -int k(4)(5)(6); // ERROR - multiple initialization -int m, n(7)(8); // ERROR - multiple initialization +int i(0)(1); // { dg-error "" } multiple initialization +int j(2) = 3; // { dg-error "" } multiple initialization +int k(4)(5)(6); // { dg-error "" } multiple initialization +int m, n(7)(8); // { dg-error "" } multiple initialization diff --git a/gcc/testsuite/g++.old-deja/g++.other/decl3.C b/gcc/testsuite/g++.old-deja/g++.other/decl3.C index 18fc5d8..fbf2076 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/decl3.C +++ b/gcc/testsuite/g++.old-deja/g++.other/decl3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Adapted by Nathan Sidwell 29 Apr 1999 <nathan@acm.org> // from a test case submitted by Corey Kosak <kosak@cs.cmu.edu> @@ -7,13 +7,13 @@ // We should not allow arrays of abstract type. [class.abstract/2] struct cow_t { - virtual void f()=0; // ERROR - abstract + virtual void f()=0; // { dg-error "" } abstract }; int main() { - cow_t cow[2]; // ERROR - abstract class + cow_t cow[2]; // { dg-error "" } abstract class cow[0].f(); return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.other/decl4.C b/gcc/testsuite/g++.old-deja/g++.other/decl4.C index c37be1c..1119602 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/decl4.C +++ b/gcc/testsuite/g++.old-deja/g++.other/decl4.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Reported by Harri Porten <porten@tu-harburg.de> // Simplified for testsuite by Alexandre Oliva diff --git a/gcc/testsuite/g++.old-deja/g++.other/decl5.C b/gcc/testsuite/g++.old-deja/g++.other/decl5.C index f384fe0..d761cbe 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/decl5.C +++ b/gcc/testsuite/g++.old-deja/g++.other/decl5.C @@ -1,6 +1,6 @@ -// Build don't link: +// { dg-do assemble } -// Copyright (C) 1999, 2000, 2002 Free Software Foundation, Inc. +// Copyright (C) 1999, 2000, 2002, 2003 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 22 Apr 1999 <nathan@acm.org> // derived from a bug report by <rch@larissa.sd.bi.ruhr-uni-bochum.de> // http://gcc.gnu.org/ml/gcc-bugs/1999-04n/msg00631.html @@ -8,40 +8,40 @@ struct A { - int A::fn(); // WARNING - extra qualification - int A::m; // WARNING - extra qualification + int A::fn(); // { dg-warning "" } extra qualification + int A::m; // { dg-warning "" } extra qualification struct e; struct A::e {int i;}; - struct A::expand { // WARNING - extra qualification + struct A::expand { // { dg-warning "" } extra qualification int m; }; struct Z; expand me; void foo(struct A::e); - void foo(struct A::z); // WARNING - extra qualification + void foo(struct A::z); // { dg-warning "" } extra qualification }; struct Q; struct B { - struct A::fink { // ERROR - no such member + struct A::fink { // { dg-error "" } no such member int m; }; - struct A::Z { // ERROR - A::Z not a member of B + struct A::Z { // { dg-error "" } A::Z not a member of B int m; }; int m; int n; - struct ::Q { // ERROR - ::Q not a member of B + struct ::Q { // { dg-error "" } ::Q not a member of B int m; }; - int A::fn() { // ERROR - A::fn not a member of B + int A::fn() { // { dg-error "" } A::fn not a member of B return 0; } void fn(struct ::Q &); - void foo(struct A::y); // ERROR - no such member + void foo(struct A::y); // { dg-error "" } no such member }; -struct ::C { // WARNING - extra qualification +struct ::C { // { dg-warning "" } extra qualification int i; }; @@ -52,21 +52,21 @@ namespace N { namespace NMS { - void NMS::fn(); // WARNING - extra qualification XFAIL - int NMS::i; // WARNING - extra qualification XFAIL - struct NMS::D { // WARNING - extra qualification + void NMS::fn(); // { dg-warning "" "" { xfail *-*-* } } extra qualification + int NMS::i; // { dg-warning "" "" { xfail *-*-* } } extra qualification + struct NMS::D { // { dg-warning "" } extra qualification int i; }; - struct N::E { // ERROR - no such type + struct N::E { // { dg-error "" } no such type int i; }; - struct ::F { // ERROR - no such type + struct ::F { // { dg-error "" } no such type int i; }; - int N::fn() { // ERROR - N::fn not a member of NMS + int N::fn() { // { dg-error "" } N::fn not a member of NMS return 0; } - struct N::F { // ERROR - N::F not a member of NMS + struct N::F { // { dg-error "" } N::F not a member of NMS int i; }; } diff --git a/gcc/testsuite/g++.old-deja/g++.other/decl6.C b/gcc/testsuite/g++.old-deja/g++.other/decl6.C index 2d4bf0b..40247b8 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/decl6.C +++ b/gcc/testsuite/g++.old-deja/g++.other/decl6.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // // Copyright (C) 1999 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 27 Sep 1999 <nathan@acm.org> @@ -7,20 +7,20 @@ int j(); struct B {}; struct A { - friend explicit int j(); // ERROR - only ctor decls can be explicit - friend explicit B::B (); // ERROR - only ctor decls can be explicit - int f(const); // ERROR - ansi forbids no type - const k; // ERROR - ansi forbids no type - mutable friend int j1 (); // ERROR - non-member cannot be mutable - mutable typedef int d; // ERROR - non-object cannot be mutable - mutable int fn (); // ERROR - non-object cannot be mutable - void fn (mutable int); // ERROR - non-member cannot be mutable - mutable static int s; // ERROR - static cannot be mutable - mutable const int s1; // ERROR - const cannot be mutable + friend explicit int j(); // { dg-error "" } only ctor decls can be explicit + friend explicit B::B (); // { dg-error "" } only ctor decls can be explicit + int f(const); // { dg-error "" } ansi forbids no type + const k; // { dg-error "" } ansi forbids no type + mutable friend int j1 (); // { dg-error "" } non-member cannot be mutable + mutable typedef int d; // { dg-error "" } non-object cannot be mutable + mutable int fn (); // { dg-error "" } non-object cannot be mutable + void fn (mutable int); // { dg-error "" } non-member cannot be mutable + mutable static int s; // { dg-error "" } static cannot be mutable + mutable const int s1; // { dg-error "" } const cannot be mutable mutable const int *s2; // ok - mutable int *const s3; // ERROR - const cannot be mutable + mutable int *const s3; // { dg-error "" } const cannot be mutable explicit A (); // ok }; -mutable int g; // ERROR - non-member cannot be mutable -explicit A::A () {} // ERROR - only ctor decls can be explicit +mutable int g; // { dg-error "" } non-member cannot be mutable +explicit A::A () {} // { dg-error "" } only ctor decls can be explicit diff --git a/gcc/testsuite/g++.old-deja/g++.other/decl7.C b/gcc/testsuite/g++.old-deja/g++.other/decl7.C index 7f547f6..cc9e3a9 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/decl7.C +++ b/gcc/testsuite/g++.old-deja/g++.other/decl7.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Mark Mitchell <mark@codesourcery.com> struct S diff --git a/gcc/testsuite/g++.old-deja/g++.other/decl8.C b/gcc/testsuite/g++.old-deja/g++.other/decl8.C index 875be3e..705fc6c 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/decl8.C +++ b/gcc/testsuite/g++.old-deja/g++.other/decl8.C @@ -1,10 +1,10 @@ -// Build don't link: +// { dg-do assemble } // Origin: Sergei Organov <osv@javad.ru> void foo(void) { - extern int i; // ERROR - previous declaration - extern double i; // ERROR - conflicting type + extern int i; // { dg-error "" } previous declaration + extern double i; // { dg-error "" } conflicting type extern int j; extern int j; } diff --git a/gcc/testsuite/g++.old-deja/g++.other/decl9.C b/gcc/testsuite/g++.old-deja/g++.other/decl9.C index 5ec9a6e4..9be187a 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/decl9.C +++ b/gcc/testsuite/g++.old-deja/g++.other/decl9.C @@ -1,9 +1,10 @@ +// { dg-do assemble } // Build don't link // Origin: batali@cogsci.ucsd.edu // Contributed by Gabriel Dos Reis <gdr@codesourcery.com> typedef struct { } S; // OK -typedef struct { }; // ERROR - Missing type-name +typedef struct { }; // { dg-error "" } Missing type-name typedef union { } U; // OK -typedef union { }; // ERROR - Missing type-name +typedef union { }; // { dg-error "" } Missing type-name diff --git a/gcc/testsuite/g++.old-deja/g++.other/defarg1.C b/gcc/testsuite/g++.old-deja/g++.other/defarg1.C index f1f72a5..773336c 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/defarg1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/defarg1.C @@ -1,8 +1,8 @@ -// Build don't link: +// { dg-do assemble } int f (int x) { - extern void g (int i = f (x)); // ERROR - default argument uses local + extern void g (int i = f (x)); // { dg-error "" } default argument uses local g(); @@ -12,12 +12,12 @@ int f (int x) int f (void); int h1 (int (*)(int) = f); -int h2 (int (*)(double) = f); // ERROR - no matching f +int h2 (int (*)(double) = f); // { dg-error "" } no matching f template <class T> int j (T t) { - extern void k (int i = j (t)); // ERROR - default argument uses local + extern void k (int i = j (t)); // { dg-error "" } default argument uses local k (); diff --git a/gcc/testsuite/g++.old-deja/g++.other/defarg2.C b/gcc/testsuite/g++.old-deja/g++.other/defarg2.C index edb0770..cc03ceb 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/defarg2.C +++ b/gcc/testsuite/g++.old-deja/g++.other/defarg2.C @@ -1,3 +1,4 @@ +// { dg-do run } // Test that default args don't mess up pmf type comparisons. // Contributed by Jason Merrill <jason@cygnus.com>. diff --git a/gcc/testsuite/g++.old-deja/g++.other/defarg3.C b/gcc/testsuite/g++.old-deja/g++.other/defarg3.C index 84792c8..3470961 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/defarg3.C +++ b/gcc/testsuite/g++.old-deja/g++.other/defarg3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Mark Mitchell <mark@codesourcery.com> int* hp; diff --git a/gcc/testsuite/g++.old-deja/g++.other/defarg4.C b/gcc/testsuite/g++.old-deja/g++.other/defarg4.C index 51899f7..ace3ee2 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/defarg4.C +++ b/gcc/testsuite/g++.old-deja/g++.other/defarg4.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: scott snyder <snyder@fnal.gov> class complex diff --git a/gcc/testsuite/g++.old-deja/g++.other/defarg5.C b/gcc/testsuite/g++.old-deja/g++.other/defarg5.C index ba15d96..9b29476 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/defarg5.C +++ b/gcc/testsuite/g++.old-deja/g++.other/defarg5.C @@ -1,7 +1,7 @@ +// { dg-do assemble } // Bug: the SAVE_EXPR in the new expression remembers that it's in g(), // causing the compiler to crash in h(). -// Build don't link: struct A { A (); diff --git a/gcc/testsuite/g++.old-deja/g++.other/defarg6.C b/gcc/testsuite/g++.old-deja/g++.other/defarg6.C index 6eebc29..fabf019 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/defarg6.C +++ b/gcc/testsuite/g++.old-deja/g++.other/defarg6.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at> #include <vector> diff --git a/gcc/testsuite/g++.old-deja/g++.other/defarg7.C b/gcc/testsuite/g++.old-deja/g++.other/defarg7.C index e4a27a3..244b55e 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/defarg7.C +++ b/gcc/testsuite/g++.old-deja/g++.other/defarg7.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 2000, 2002 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 7 Jan 2001 <nathan@codesourcery.com> @@ -11,7 +11,7 @@ struct A { - static int Foo (int = Baz ()); // ERROR - + static int Foo (int = Baz ()); // { dg-error "" } static int Baz (int = Foo ()); }; @@ -24,7 +24,7 @@ struct Test struct B { static int Bar (int = Foo (1)); - static int Foo (int = Baz ()); // ERROR - + static int Foo (int = Baz ()); // { dg-error "" } static int Baz (int = Foo (1)); }; diff --git a/gcc/testsuite/g++.old-deja/g++.other/defarg8.C b/gcc/testsuite/g++.old-deja/g++.other/defarg8.C index 42ddcb8..3598431 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/defarg8.C +++ b/gcc/testsuite/g++.old-deja/g++.other/defarg8.C @@ -1,7 +1,7 @@ -// Build don't link: -// Special g++ options: -pedantic-errors -ansi -w +// { dg-do assemble } +// { dg-options "-pedantic-errors -ansi -w" } -// Copyright (C) 2000, 2002 Free Software Foundation, Inc. +// Copyright (C) 2000, 2002, 2003 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 7 Jan 2001 <nathan@codesourcery.com> // As of G++ 3.4, we no longer attempt to detect dependencies; the @@ -12,7 +12,7 @@ struct AA { - static int Foo (int = Baz ()); // ERROR - not yet been parsed + static int Foo (int = Baz ()); // { dg-error "" } not yet been parsed static int Baz (int = Foo ()); }; diff --git a/gcc/testsuite/g++.old-deja/g++.other/defarg9.C b/gcc/testsuite/g++.old-deja/g++.other/defarg9.C index f3b0a48..440f3a2 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/defarg9.C +++ b/gcc/testsuite/g++.old-deja/g++.other/defarg9.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // // Copyright (C) 2001 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 24 April 2001 <nathan@codesourcery.com> diff --git a/gcc/testsuite/g++.old-deja/g++.other/delete1.C b/gcc/testsuite/g++.old-deja/g++.other/delete1.C index 6386fe1..d8c86a7 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/delete1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/delete1.C @@ -1,4 +1,4 @@ -//Build don't link: +// { dg-do assemble } struct cl_heap_ring{ void operator delete (void* ptr) { } cl_heap_ring () diff --git a/gcc/testsuite/g++.old-deja/g++.other/delete2.C b/gcc/testsuite/g++.old-deja/g++.other/delete2.C index d90def0..1c8312e 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/delete2.C +++ b/gcc/testsuite/g++.old-deja/g++.other/delete2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } struct foo { operator char*() const; @@ -8,6 +8,6 @@ void bar(foo a) { delete a; // should be accepted delete[] a; // should be accepted char b[1]; - delete b; // ERROR - expecting pointer type - delete[] b; // ERROR - expecting pointer type + delete b; // { dg-error "" } expecting pointer type + delete[] b; // { dg-error "" } expecting pointer type } diff --git a/gcc/testsuite/g++.old-deja/g++.other/delete3.C b/gcc/testsuite/g++.old-deja/g++.other/delete3.C index 45e4478..469d638 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/delete3.C +++ b/gcc/testsuite/g++.old-deja/g++.other/delete3.C @@ -1,3 +1,4 @@ +// { dg-do run } #include <new> int i; diff --git a/gcc/testsuite/g++.old-deja/g++.other/delete4.C b/gcc/testsuite/g++.old-deja/g++.other/delete4.C index e729ea2..0e8c831 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/delete4.C +++ b/gcc/testsuite/g++.old-deja/g++.other/delete4.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 1999 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 15 Apr 1999 <nathan@acm.org> @@ -13,22 +13,22 @@ typedef __SIZE_TYPE__ size_t; void *operator new(size_t) { - return 0; // ERROR - cannot return NULL + return 0; // { dg-error "" } cannot return NULL } void *operator new[](size_t) { - return 0; // ERROR - cannot return NULL + return 0; // { dg-error "" } cannot return NULL } struct X { void *operator new(size_t) { - return 0; // ERROR - cannot return NULL + return 0; // { dg-error "" } cannot return NULL } void *operator new[](size_t) { - return 0; // ERROR - cannot return NULL + return 0; // { dg-error "" } cannot return NULL } }; @@ -47,7 +47,7 @@ struct Y void fn(double *d, void *v) { delete d; // ok - delete v; // WARNING - deleting void + delete v; // { dg-warning "" } deleting void delete[] d; // ok - delete[] v; // WARNING - deleting void + delete[] v; // { dg-warning "" } deleting void } diff --git a/gcc/testsuite/g++.old-deja/g++.other/delete5.C b/gcc/testsuite/g++.old-deja/g++.other/delete5.C index e9cc493..c447b73 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/delete5.C +++ b/gcc/testsuite/g++.old-deja/g++.other/delete5.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // Copyright (C) 1999 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 15 Apr 1999 <nathan@acm.org> @@ -10,11 +11,11 @@ struct X X():i(){} void *operator new(size_t) { - return 0; // WARNING - cannot return NULL + return 0; // { dg-warning "" } cannot return NULL } void *operator new[](size_t) { - return 0; // WARNING - cannot return NULL + return 0; // { dg-warning "" } cannot return NULL } }; diff --git a/gcc/testsuite/g++.old-deja/g++.other/delete6.C b/gcc/testsuite/g++.old-deja/g++.other/delete6.C index 486996b..733a6e2 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/delete6.C +++ b/gcc/testsuite/g++.old-deja/g++.other/delete6.C @@ -1,3 +1,4 @@ +// { dg-do run } // Origin: Alexander Schiemann (aschiem@count.math.uni-sb.de) typedef __SIZE_TYPE__ size_t; diff --git a/gcc/testsuite/g++.old-deja/g++.other/delete7.C b/gcc/testsuite/g++.old-deja/g++.other/delete7.C index e6c58cd..e55af6a 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/delete7.C +++ b/gcc/testsuite/g++.old-deja/g++.other/delete7.C @@ -1,3 +1,4 @@ +// { dg-do run } // Test that we call a class-specific vector op delete. #include <new> diff --git a/gcc/testsuite/g++.old-deja/g++.other/delete8.C b/gcc/testsuite/g++.old-deja/g++.other/delete8.C index 1f884b7..ea44445 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/delete8.C +++ b/gcc/testsuite/g++.old-deja/g++.other/delete8.C @@ -1,3 +1,4 @@ +// { dg-do run } // Origin: Mark Mitchell <mark@codesourcery.com> #include <stdlib.h> diff --git a/gcc/testsuite/g++.old-deja/g++.other/deref1.C b/gcc/testsuite/g++.old-deja/g++.other/deref1.C index 706cd92..1b32c8c 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/deref1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/deref1.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // Copyright (C) 1999 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 1 Sep 1999 <nathan@acm.org> @@ -6,8 +7,8 @@ void fn (void *vp, volatile void *vvp) { - *vp; // ERROR - not a pointer to object - *vvp; // ERROR - not a pointer to object - &*vp; // ERROR - not a pointer to object - &*vvp; // ERROR - not a pointer to object + *vp; // { dg-error "" } not a pointer to object + *vvp; // { dg-error "" } not a pointer to object + &*vp; // { dg-error "" } not a pointer to object + &*vvp; // { dg-error "" } not a pointer to object } diff --git a/gcc/testsuite/g++.old-deja/g++.other/dll-1.C b/gcc/testsuite/g++.old-deja/g++.other/dll-1.C index 0c66b7f..8468c1b 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/dll-1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/dll-1.C @@ -1,6 +1,5 @@ -// Build don't link: -// Special g++ Options: -mno-nop-fun-dllimport -// Skip if not target: arm-*pe +// { dg-do assemble { target arm-*-*pe } } +// { dg-options "-mno-nop-fun-dllimport" } // declspec test #1 // set compiler_result "__imp_imp.*\.section${spaces}.drectve\n\[^\n\]*-export:exp" // set not_compiler_result "__imp_exp" diff --git a/gcc/testsuite/g++.old-deja/g++.other/dll-2.C b/gcc/testsuite/g++.old-deja/g++.other/dll-2.C index f5c7b2e..d3fb6a7 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/dll-2.C +++ b/gcc/testsuite/g++.old-deja/g++.other/dll-2.C @@ -1,5 +1,4 @@ -// Skip if not target: arm-*pe -// Build don't link: +// { dg-do assemble { target arm-*-*pe } } // Microsoft's MSVC 2.0 allows dllimport followed by dllexport for variables, // but does not allow dllexport followed by dllimport. // @@ -15,5 +14,5 @@ __declspec (dllimport) int foo2 (); __declspec (dllimport) int bar1; __declspec (dllexport) int bar1; -__declspec (dllexport) int bar2; // ERROR - previously declared -__declspec (dllimport) int bar2; // ERROR - redefinition +__declspec (dllexport) int bar2; // { dg-error "" } previously declared +__declspec (dllimport) int bar2; // { dg-error "" } redefinition diff --git a/gcc/testsuite/g++.old-deja/g++.other/dll-3.C b/gcc/testsuite/g++.old-deja/g++.other/dll-3.C index 469ea1c..d2784bc 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/dll-3.C +++ b/gcc/testsuite/g++.old-deja/g++.other/dll-3.C @@ -1,6 +1,5 @@ -// Build don't link: -// Skip if not target: arm-*pe -// Special g++ Options: -mno-nop-fun-dllimport +// { dg-do assemble { target arm-*-*pe } } +// { dg-options "-mno-nop-fun-dllimport" } // set compiler_result "__imp_f1.*\.section${spaces}.drectve\n\[^\n\]*-export:f2" // set not_compiler_result "__imp_f2" diff --git a/gcc/testsuite/g++.old-deja/g++.other/dll-4.C b/gcc/testsuite/g++.old-deja/g++.other/dll-4.C index 322f003..ea5593e 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/dll-4.C +++ b/gcc/testsuite/g++.old-deja/g++.other/dll-4.C @@ -1,5 +1,4 @@ -// Build don't link: -// Skip if not target: arm-*pe +// { dg-do assemble { target arm-*-*pe } } // Ensure dllexport overrides dllimport. // set compiler_result "\.section${spaces}\.drectve\n\[^\n\]*-export:foo1.*\.section${spaces}\.drectve\n\[^\n\]*-export:foo2" // set not_compiler_result "(__imp_foo1|__imp_foo2)" diff --git a/gcc/testsuite/g++.old-deja/g++.other/dll-5.C b/gcc/testsuite/g++.old-deja/g++.other/dll-5.C index b2ad9f51..c02be89 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/dll-5.C +++ b/gcc/testsuite/g++.old-deja/g++.other/dll-5.C @@ -1,5 +1,4 @@ -// Build don't link: -// Skip if not target: arm-*pe +// { dg-do assemble { target arm-*-*pe } } // dllimport is "sorta like" to "extern". // set compiler_result "(\nfoo1:.*\nfoo2:|\nfoo2:.*\nfoo1:)" // set not_compiler_result "__imp_" diff --git a/gcc/testsuite/g++.old-deja/g++.other/dll-6.C b/gcc/testsuite/g++.old-deja/g++.other/dll-6.C index b4e0b42..f094c08 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/dll-6.C +++ b/gcc/testsuite/g++.old-deja/g++.other/dll-6.C @@ -1,5 +1,4 @@ -// Build don't link: -// Skip if not target: arm-*pe +// { dg-do assemble { target arm-*-*pe } } // set not_compiler_result "__imp_" // dll.h class aClass diff --git a/gcc/testsuite/g++.old-deja/g++.other/dtor1.C b/gcc/testsuite/g++.old-deja/g++.other/dtor1.C index 18ab8b0..103c470 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/dtor1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/dtor1.C @@ -1,3 +1,4 @@ +// { dg-do run } // Test for use of typedef in explicit destructor call. #include <new> diff --git a/gcc/testsuite/g++.old-deja/g++.other/dtor10.C b/gcc/testsuite/g++.old-deja/g++.other/dtor10.C index 78bf613..81ed0c1 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/dtor10.C +++ b/gcc/testsuite/g++.old-deja/g++.other/dtor10.C @@ -1,3 +1,4 @@ +// { dg-do run } // Origin: Mark Mitchell <mark@codesourcery.com> extern "C" void abort (); diff --git a/gcc/testsuite/g++.old-deja/g++.other/dtor11.C b/gcc/testsuite/g++.old-deja/g++.other/dtor11.C index ffb7c5a..d4d61d2 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/dtor11.C +++ b/gcc/testsuite/g++.old-deja/g++.other/dtor11.C @@ -1,3 +1,4 @@ +// { dg-do run } // Origin: Mark Mitchell <mark@codesourcery.com> extern "C" void abort (); diff --git a/gcc/testsuite/g++.old-deja/g++.other/dtor12.C b/gcc/testsuite/g++.old-deja/g++.other/dtor12.C index 1a9d58a..9890e63 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/dtor12.C +++ b/gcc/testsuite/g++.old-deja/g++.other/dtor12.C @@ -1,3 +1,4 @@ +// { dg-do run } // Test that we don't complain about calling a destructor on a const object. #include <new> @@ -11,5 +12,5 @@ const A a = {}; int main() { a.~A(); - a.A::~A(); // gets bogus error - const violation + a.A::~A(); // { dg-bogus "" } const violation } diff --git a/gcc/testsuite/g++.old-deja/g++.other/dtor13.C b/gcc/testsuite/g++.old-deja/g++.other/dtor13.C index 49c02ec..0b998ab 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/dtor13.C +++ b/gcc/testsuite/g++.old-deja/g++.other/dtor13.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Mark Mitchell <mark@codesourcery.com> template <class T> struct S { ~S(); }; @@ -6,5 +6,5 @@ int i; void f () { - i.~S(); // ERROR - invalid destructor call. + i.~S(); // { dg-error "" } invalid destructor call. } diff --git a/gcc/testsuite/g++.old-deja/g++.other/dtor2.C b/gcc/testsuite/g++.old-deja/g++.other/dtor2.C index 201068c..48f89bc 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/dtor2.C +++ b/gcc/testsuite/g++.old-deja/g++.other/dtor2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } class K { public: diff --git a/gcc/testsuite/g++.old-deja/g++.other/dtor3.C b/gcc/testsuite/g++.old-deja/g++.other/dtor3.C index a2ad16d..3fc4dc9 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/dtor3.C +++ b/gcc/testsuite/g++.old-deja/g++.other/dtor3.C @@ -1,28 +1,28 @@ -// Build don't link: +// { dg-do assemble } struct S1 { - ~S1(int); // ERROR - destructors may not have parameters + ~S1(int); // { dg-error "" } destructors may not have parameters }; template <class T> struct S2 { - ~S2(int); // ERROR - destructors may not have parameters + ~S2(int); // { dg-error "" } destructors may not have parameters }; struct S3 { - ~S3(double) {} // ERROR - destructors may not have parameters + ~S3(double) {} // { dg-error "" } destructors may not have parameters }; template <class T> struct S4 { - ~S4(double) {} // ERROR - destructors may not have parameters + ~S4(double) {} // { dg-error "" } destructors may not have parameters }; @@ -32,7 +32,7 @@ struct S5 }; S5::~S5(float) -{ // ERROR - destructors may not have parameters +{ // { dg-error "" } destructors may not have parameters } @@ -44,7 +44,7 @@ struct S6 template <class T> S6<T>::~S6(float) -{ // ERROR - destructors may not have parameters +{ // { dg-error "" } destructors may not have parameters } diff --git a/gcc/testsuite/g++.old-deja/g++.other/dtor4.C b/gcc/testsuite/g++.old-deja/g++.other/dtor4.C index f23ab78..be04965 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/dtor4.C +++ b/gcc/testsuite/g++.old-deja/g++.other/dtor4.C @@ -1,31 +1,31 @@ -// Build don't link: +// { dg-do assemble } struct S1 { - ~S1(); // ERROR - candidate + ~S1(); // { dg-error "" } candidate }; S1::~S1() const -{ // ERROR - prototype does not match +{ // { dg-error "" } prototype does not match } struct S2 { - ~S2() volatile; // ERROR - destructors may not be volatile + ~S2() volatile; // { dg-error "" } destructors may not be volatile }; template <class T> struct S3 { - ~S3(); // ERROR - candidate + ~S3(); // { dg-error "" } candidate }; template <class T> S3<T>::~S3() volatile -{ // ERROR - prototype does not match +{ // { dg-error "" } prototype does not match } template <class T> struct S4 { - ~S4() const; // ERROR - destructors may not be const + ~S4() const; // { dg-error "" } destructors may not be const }; diff --git a/gcc/testsuite/g++.old-deja/g++.other/dtor5.C b/gcc/testsuite/g++.old-deja/g++.other/dtor5.C index ab37e39..fc1ef38 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/dtor5.C +++ b/gcc/testsuite/g++.old-deja/g++.other/dtor5.C @@ -1,3 +1,4 @@ +// { dg-do run } // Origin: Mark Mitchell <mark@codesourcery.com> extern "C" void abort (); diff --git a/gcc/testsuite/g++.old-deja/g++.other/dtor6.C b/gcc/testsuite/g++.old-deja/g++.other/dtor6.C index 6044849..f8c1d85 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/dtor6.C +++ b/gcc/testsuite/g++.old-deja/g++.other/dtor6.C @@ -1,3 +1,4 @@ +// { dg-do run } // Origin: Mark Mitchell <mark@codesourcery.com> extern "C" void abort (); diff --git a/gcc/testsuite/g++.old-deja/g++.other/dtor7.C b/gcc/testsuite/g++.old-deja/g++.other/dtor7.C index f1148af..c212d94 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/dtor7.C +++ b/gcc/testsuite/g++.old-deja/g++.other/dtor7.C @@ -1,5 +1,6 @@ +// { dg-do run } +// { dg-options "-O2" } // Origin: Mark Mitchell <mitchell@codesourcery.com> -// Special g++ Options: -O2 int i; int j; diff --git a/gcc/testsuite/g++.old-deja/g++.other/dtor8.C b/gcc/testsuite/g++.old-deja/g++.other/dtor8.C index 2b166e2..5f2071d 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/dtor8.C +++ b/gcc/testsuite/g++.old-deja/g++.other/dtor8.C @@ -1,4 +1,5 @@ -// Special g++ Options: -O1 +// { dg-do run } +// { dg-options "-O1" } // Origin: Mark Mitchell <mark@codesourcery.com> int result; diff --git a/gcc/testsuite/g++.old-deja/g++.other/dtor9.C b/gcc/testsuite/g++.old-deja/g++.other/dtor9.C index 6f0d5ac..0df88a8 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/dtor9.C +++ b/gcc/testsuite/g++.old-deja/g++.other/dtor9.C @@ -1,3 +1,4 @@ +// { dg-do run } int i; struct CC diff --git a/gcc/testsuite/g++.old-deja/g++.other/dyncast1.C b/gcc/testsuite/g++.old-deja/g++.other/dyncast1.C index 1f38684..582cf10 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/dyncast1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/dyncast1.C @@ -1,3 +1,4 @@ +// { dg-do run } // Author: Alfred Miniarik <a8601248@unet.univie.ac.at> // test of dynamic_cast // runtime detecting of nonpublic diff --git a/gcc/testsuite/g++.old-deja/g++.other/dyncast2.C b/gcc/testsuite/g++.old-deja/g++.other/dyncast2.C index 6a2e738..8cf6ba0 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/dyncast2.C +++ b/gcc/testsuite/g++.old-deja/g++.other/dyncast2.C @@ -1,3 +1,4 @@ +// { dg-do run } // Author: Alfred Miniarik <a8601248@unet.univie.ac.at> // test of dynamic_cast // runtime detecting of valid diff --git a/gcc/testsuite/g++.old-deja/g++.other/dyncast3.C b/gcc/testsuite/g++.old-deja/g++.other/dyncast3.C index 5b33767..cd59efa 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/dyncast3.C +++ b/gcc/testsuite/g++.old-deja/g++.other/dyncast3.C @@ -1,3 +1,4 @@ +// { dg-do run } // Author: Alfred Miniarik <a8601248@unet.univie.ac.at> // test of dynamic_cast // runtime detecting of nonpublic diff --git a/gcc/testsuite/g++.old-deja/g++.other/dyncast4.C b/gcc/testsuite/g++.old-deja/g++.other/dyncast4.C index 65093d5..a49ef4b 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/dyncast4.C +++ b/gcc/testsuite/g++.old-deja/g++.other/dyncast4.C @@ -1,3 +1,4 @@ +// { dg-do run } // Author: Alfred Miniarik <a8601248@unet.univie.ac.at> // Even in a derived class, a private base cannot be dynamically downcasted diff --git a/gcc/testsuite/g++.old-deja/g++.other/dyncast5.C b/gcc/testsuite/g++.old-deja/g++.other/dyncast5.C index a6992d7..120a75a 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/dyncast5.C +++ b/gcc/testsuite/g++.old-deja/g++.other/dyncast5.C @@ -1,3 +1,4 @@ +// { dg-do run } // Copyright (C) 1999 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 6 Jun 1999 <nathan@acm.org> diff --git a/gcc/testsuite/g++.old-deja/g++.other/dyncast6.C b/gcc/testsuite/g++.old-deja/g++.other/dyncast6.C index 6ff219b..52b57e5 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/dyncast6.C +++ b/gcc/testsuite/g++.old-deja/g++.other/dyncast6.C @@ -1,4 +1,5 @@ -// Special g++ Options: -w -ansi -pedantic-errors +// { dg-do run } +// { dg-options "-w -ansi -pedantic-errors" } // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 20 June 2000 <nathan@codesourcery.com> diff --git a/gcc/testsuite/g++.old-deja/g++.other/eh.C b/gcc/testsuite/g++.old-deja/g++.other/eh.C index 90294fa..13cbb73 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/eh.C +++ b/gcc/testsuite/g++.old-deja/g++.other/eh.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } class foo { public: diff --git a/gcc/testsuite/g++.old-deja/g++.other/eh1.C b/gcc/testsuite/g++.old-deja/g++.other/eh1.C index 515a77d..e7cdc27 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/eh1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/eh1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } class C2 { public: diff --git a/gcc/testsuite/g++.old-deja/g++.other/eh2.C b/gcc/testsuite/g++.old-deja/g++.other/eh2.C index 514d645..158ae20 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/eh2.C +++ b/gcc/testsuite/g++.old-deja/g++.other/eh2.C @@ -1,6 +1,6 @@ -// Build don't link: +// { dg-do assemble } +// { dg-options "-O2" } // Origin: Jakub Jelinek <jakub@redhat.com> -// Special g++ Options: -O2 class a { public: diff --git a/gcc/testsuite/g++.old-deja/g++.other/eh3.C b/gcc/testsuite/g++.old-deja/g++.other/eh3.C index 28c4fd7..4e61892 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/eh3.C +++ b/gcc/testsuite/g++.old-deja/g++.other/eh3.C @@ -1,4 +1,5 @@ -// Special g++ Options: -O +// { dg-do run } +// { dg-options "-O" } typedef struct { } e; char *p; diff --git a/gcc/testsuite/g++.old-deja/g++.other/eh4.C b/gcc/testsuite/g++.old-deja/g++.other/eh4.C index e88a433..621a051 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/eh4.C +++ b/gcc/testsuite/g++.old-deja/g++.other/eh4.C @@ -1,11 +1,11 @@ +// { dg-do assemble } // Origin: Jean-Marc Bourguet <bourguet@cadence.com> -// Build don't link: class foo { public: foo() {}; void throwMe () { - throw *this; // ERROR - cannot be used in throw-expression + throw *this; // { dg-error "" } cannot be used in throw-expression }; virtual void test () = 0; }; diff --git a/gcc/testsuite/g++.old-deja/g++.other/eh5.C b/gcc/testsuite/g++.old-deja/g++.other/eh5.C index 9d0acf4..59ed4dd 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/eh5.C +++ b/gcc/testsuite/g++.old-deja/g++.other/eh5.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -O2 +// { dg-do assemble } +// { dg-options "-O2" } struct X {}; diff --git a/gcc/testsuite/g++.old-deja/g++.other/elab1.C b/gcc/testsuite/g++.old-deja/g++.other/elab1.C index 614e73b..f5f266c 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/elab1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/elab1.C @@ -1,9 +1,10 @@ +// { dg-do assemble } typedef struct {} S; S s1; -struct S* s2; // ERROR - S is a typedef name +struct S* s2; // { dg-error "" } S is a typedef name template <class T> struct X { - friend class T; // ERROR - T is a template type parameter + friend class T; // { dg-error "" } T is a template type parameter }; diff --git a/gcc/testsuite/g++.old-deja/g++.other/empty1.C b/gcc/testsuite/g++.old-deja/g++.other/empty1.C index b54490c..47a5b7a 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/empty1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/empty1.C @@ -1,3 +1,4 @@ +// { dg-do run } // Origin: Mark Mitchell <mark@codesourcery.com> // This test case checks that the return value optimization works for // empty classes. diff --git a/gcc/testsuite/g++.old-deja/g++.other/empty2.C b/gcc/testsuite/g++.old-deja/g++.other/empty2.C index 92585b8..a3a6bac 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/empty2.C +++ b/gcc/testsuite/g++.old-deja/g++.other/empty2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Mark Mitchell <mark@codesourcery.com> struct E {}; diff --git a/gcc/testsuite/g++.old-deja/g++.other/enum1.C b/gcc/testsuite/g++.old-deja/g++.other/enum1.C index f692991..9685f6a 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/enum1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/enum1.C @@ -1,3 +1,4 @@ +// { dg-do run } extern "C" void abort(); struct A diff --git a/gcc/testsuite/g++.old-deja/g++.other/enum2.C b/gcc/testsuite/g++.old-deja/g++.other/enum2.C index c1a9ae2..456c205 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/enum2.C +++ b/gcc/testsuite/g++.old-deja/g++.other/enum2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 1999 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 3 Jun 1999 <nathan@acm.org> @@ -6,11 +6,11 @@ // We'd like the enum location to be its open brace. enum thing -{ // ERROR - previous def +{ // { dg-error "" } previous def val1 }; enum thing -{ // ERROR - multiple def +{ // { dg-error "" } multiple def val2 }; diff --git a/gcc/testsuite/g++.old-deja/g++.other/enum3.C b/gcc/testsuite/g++.old-deja/g++.other/enum3.C index c4303f6..16e71ac 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/enum3.C +++ b/gcc/testsuite/g++.old-deja/g++.other/enum3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 2001 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 28 Feb 2001 <nathan@codesourcery.com> diff --git a/gcc/testsuite/g++.old-deja/g++.other/enum4.C b/gcc/testsuite/g++.old-deja/g++.other/enum4.C index f401613..6dd025c 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/enum4.C +++ b/gcc/testsuite/g++.old-deja/g++.other/enum4.C @@ -1,5 +1,6 @@ +// { dg-do run } +// { dg-options "-fshort-enums" } // Origin: Mark Mitchell <mark@codesourcery.com> -// Special g++ Options: -fshort-enums enum E { a = -312 diff --git a/gcc/testsuite/g++.old-deja/g++.other/enum5.C b/gcc/testsuite/g++.old-deja/g++.other/enum5.C index 8fb3c4d..bee7b98 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/enum5.C +++ b/gcc/testsuite/g++.old-deja/g++.other/enum5.C @@ -1,14 +1,14 @@ -// Copyright (C) 2001 Free Software Foundation, Inc. +// { dg-do run } +// Copyright (C) 2001, 2003 Free Software Foundation, Inc. // Contributed by Ben Elliston <bje@redhat.com> // PR 80: Packed enums use minimum required storage. -// excess errors test - XFAIL *-*-* extern "C" void abort(); -enum numbers { one, two, three } __attribute__ ((packed)) nums; -enum colours { red = 1000, green, blue } __attribute__ ((packed)) cols; -enum __attribute__ ((packed)) conditions { fine, rain, cloudy } forecast; +enum numbers { one, two, three } __attribute__ ((packed)) nums; // { dg-bogus "" "" { xfail *-*-* } } +enum colours { red = 1000, green, blue } __attribute__ ((packed)) cols; // { dg-bogus "" "" { xfail *-*-* } } +enum __attribute__ ((packed)) conditions { fine, rain, cloudy } forecast; // { dg-bogus "" "" { xfail *-*-* } } int main() @@ -19,7 +19,7 @@ main() if (sizeof (cols) != 2) abort (); - if (sizeof (forecast) != 1) + if (sizeof (forecast) != 1) // { dg-bogus "" "" { xfail *-*-* } } abort (); return 0; diff --git a/gcc/testsuite/g++.old-deja/g++.other/explicit1.C b/gcc/testsuite/g++.old-deja/g++.other/explicit1.C index 7baf04f..123efb7 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/explicit1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/explicit1.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // Origin: Jason Merrill <jason@redhat.com> struct A @@ -8,5 +9,5 @@ struct A int main () { - const A& r = 1; // ERROR - no suitable constructor + const A& r = 1; // { dg-error "" } no suitable constructor } diff --git a/gcc/testsuite/g++.old-deja/g++.other/expr1.C b/gcc/testsuite/g++.old-deja/g++.other/expr1.C index fece8d4..9471448 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/expr1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/expr1.C @@ -1,11 +1,11 @@ -// Build don't link: +// { dg-do assemble } // Simplified from bug report by Trevor Taylor <ttaylor@powerup.com.au> struct T { - int operator()(int) { } // ERROR - candidate + int operator()(int) { } // { dg-error "" } candidate }; int main() { - T()(); // ERROR - no such operator + T()(); // { dg-error "" } no such operator } diff --git a/gcc/testsuite/g++.old-deja/g++.other/exprstmt1.C b/gcc/testsuite/g++.old-deja/g++.other/exprstmt1.C index 028ddad..5075654 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/exprstmt1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/exprstmt1.C @@ -1,4 +1,5 @@ -// Special g++ Options: -O +// { dg-do run } +// { dg-options "-O" } int main() { diff --git a/gcc/testsuite/g++.old-deja/g++.other/externC1.C b/gcc/testsuite/g++.old-deja/g++.other/externC1.C index ca60b02..0e48505 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/externC1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/externC1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Mark Mitchell <mitchell@codesourcery.com> extern "C" diff --git a/gcc/testsuite/g++.old-deja/g++.other/externC2.C b/gcc/testsuite/g++.old-deja/g++.other/externC2.C index 86d3736..d5b2330 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/externC2.C +++ b/gcc/testsuite/g++.old-deja/g++.other/externC2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Boris Zentner <boris@m2b.de> extern "C" diff --git a/gcc/testsuite/g++.old-deja/g++.other/externC3.C b/gcc/testsuite/g++.old-deja/g++.other/externC3.C index 4869635..9f56ed3 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/externC3.C +++ b/gcc/testsuite/g++.old-deja/g++.other/externC3.C @@ -1,3 +1,4 @@ +// { dg-do run } // Test that two extern "C" declarations of the same name in different // namespaces are treated as declaring the same function. diff --git a/gcc/testsuite/g++.old-deja/g++.other/externC4.C b/gcc/testsuite/g++.old-deja/g++.other/externC4.C index 5a0d0f8..daf097f 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/externC4.C +++ b/gcc/testsuite/g++.old-deja/g++.other/externC4.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Neil Booth, from PR #66 extern "C" diff --git a/gcc/testsuite/g++.old-deja/g++.other/externC5.C b/gcc/testsuite/g++.old-deja/g++.other/externC5.C index aadbc5a..3e32d4f 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/externC5.C +++ b/gcc/testsuite/g++.old-deja/g++.other/externC5.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: schmid@snake.iap.physik.tu-darmstadt.de extern "C" int rand (void) throw (); diff --git a/gcc/testsuite/g++.old-deja/g++.other/field1.C b/gcc/testsuite/g++.old-deja/g++.other/field1.C index e734830..5b8b361 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/field1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/field1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } struct X { diff --git a/gcc/testsuite/g++.old-deja/g++.other/field2.C b/gcc/testsuite/g++.old-deja/g++.other/field2.C index 5eb6755..5dd1e97 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/field2.C +++ b/gcc/testsuite/g++.old-deja/g++.other/field2.C @@ -1,3 +1,4 @@ +// { dg-do run } // Test for proper handling of field calls. // Contributed by Jason Merrill <jason@cygnus.com> diff --git a/gcc/testsuite/g++.old-deja/g++.other/fnname1.C b/gcc/testsuite/g++.old-deja/g++.other/fnname1.C index 8fcf07f..e8e3254 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/fnname1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/fnname1.C @@ -1,6 +1,6 @@ -// Build don't run: +// { dg-do link } +// { dg-options "-g" } // Origin: Loren James Rittle <rittle@latour.rsch.comm.mot.com> -// Special g++ Options: -g int main () { diff --git a/gcc/testsuite/g++.old-deja/g++.other/for1.C b/gcc/testsuite/g++.old-deja/g++.other/for1.C index e737a41..88d7993 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/for1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/for1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } int i; int j; diff --git a/gcc/testsuite/g++.old-deja/g++.other/for2.C b/gcc/testsuite/g++.old-deja/g++.other/for2.C index 5943c25..0ba12b4 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/for2.C +++ b/gcc/testsuite/g++.old-deja/g++.other/for2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 24 Jul 2000 <nathan@codesourcery.com> diff --git a/gcc/testsuite/g++.old-deja/g++.other/friend1.C b/gcc/testsuite/g++.old-deja/g++.other/friend1.C index f8e22c2..56236ab 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/friend1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/friend1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // f() should be able to access B::j, as of FDIS [class.protected]/1 // Subject: Re: [bug] Inheritance and friend access control broken @@ -22,7 +22,7 @@ struct R; class B { protected: - int i; // ERROR - in this context + int i; // { dg-error "" } in this context static int j; }; @@ -51,7 +51,7 @@ D d; void f() { - b.i = 3; // ERROR - protected + b.i = 3; // { dg-error "" } protected d.i = 4; B::j = 5; D::j = 6; @@ -60,7 +60,7 @@ void f() template <typename T> void g() { - b.i = 3; // ERROR - protected + b.i = 3; // { dg-error "" } protected d.i = 4; B::j = 5; D::j = 6; @@ -70,7 +70,7 @@ template void g<int>(); void S::h() { - b.i = 3; // ERROR - protected + b.i = 3; // { dg-error "" } protected d.i = 4; B::j = 5; D::j = 6; @@ -79,7 +79,7 @@ void S::h() template <typename T> void R<T>::h() { - b.i = 3; // ERROR - protected + b.i = 3; // { dg-error "" } protected d.i = 4; B::j = 5; D::j = 6; diff --git a/gcc/testsuite/g++.old-deja/g++.other/friend10.C b/gcc/testsuite/g++.old-deja/g++.other/friend10.C index 75b52cb..935b2fe 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/friend10.C +++ b/gcc/testsuite/g++.old-deja/g++.other/friend10.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Neil Booth, from PR #78 namespace MySpace diff --git a/gcc/testsuite/g++.old-deja/g++.other/friend11.C b/gcc/testsuite/g++.old-deja/g++.other/friend11.C index b9804c4..7c04f03 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/friend11.C +++ b/gcc/testsuite/g++.old-deja/g++.other/friend11.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: robt@flyingpig.com class Outer diff --git a/gcc/testsuite/g++.old-deja/g++.other/friend2.C b/gcc/testsuite/g++.old-deja/g++.other/friend2.C index 32a0a28..3f5f2a7 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/friend2.C +++ b/gcc/testsuite/g++.old-deja/g++.other/friend2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } void f() diff --git a/gcc/testsuite/g++.old-deja/g++.other/friend3.C b/gcc/testsuite/g++.old-deja/g++.other/friend3.C index 84c6b2d..79323f6 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/friend3.C +++ b/gcc/testsuite/g++.old-deja/g++.other/friend3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } class foo { public: diff --git a/gcc/testsuite/g++.old-deja/g++.other/friend4.C b/gcc/testsuite/g++.old-deja/g++.other/friend4.C index 07969cd..41d3a6a 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/friend4.C +++ b/gcc/testsuite/g++.old-deja/g++.other/friend4.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // by Alexandre Oliva <oliva@dcc.unicamp.br> @@ -10,12 +10,12 @@ template <class A, class B> void foo(); template <class C> class bar { - int i; // ERROR - private - template <class B> friend void foo<C,B>(); // ERROR - bogus declaration + int i; // { dg-error "" } private + template <class B> friend void foo<C,B>(); // { dg-error "" } bogus declaration }; template <class A, class B> void foo() { - bar<A> baz; baz.i = 1; // ERROR - foo cannot access bar<int>::i - bar<int> buz; buz.i = 1; // ERROR - foo cannot access bar<int>::i + bar<A> baz; baz.i = 1; // { dg-error "" } foo cannot access bar<int>::i + bar<int> buz; buz.i = 1; // { dg-error "" } foo cannot access bar<int>::i } int main() { foo<void,void>(); diff --git a/gcc/testsuite/g++.old-deja/g++.other/friend5.C b/gcc/testsuite/g++.old-deja/g++.other/friend5.C index ab15fa5..44f1667 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/friend5.C +++ b/gcc/testsuite/g++.old-deja/g++.other/friend5.C @@ -1,5 +1,6 @@ +// { dg-do assemble } // submitted by David C Binderman <dcb@pncl.co.uk> struct A { - friend bool(); // ERROR - invalid declaration + friend bool(); // { dg-error "" } invalid declaration }; diff --git a/gcc/testsuite/g++.old-deja/g++.other/friend6.C b/gcc/testsuite/g++.old-deja/g++.other/friend6.C index 1bc6119..05763d9 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/friend6.C +++ b/gcc/testsuite/g++.old-deja/g++.other/friend6.C @@ -1,6 +1,6 @@ +// { dg-do assemble } // Origin: Martin v. Löwis <loewis@informatik.hu-berlin.de> // Test for resolution of core issue 125. -// Build don't link: struct A{ struct B{}; @@ -15,5 +15,5 @@ namespace B{ class Test{ friend A (::B::C)(); // Ok friend A::B (::C)(); // Ok - friend A::B::C(); // ERROR - no A::B::C + friend A::B::C(); // { dg-error "" } no A::B::C }; diff --git a/gcc/testsuite/g++.old-deja/g++.other/friend7.C b/gcc/testsuite/g++.old-deja/g++.other/friend7.C index 02b67cc..1055d99 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/friend7.C +++ b/gcc/testsuite/g++.old-deja/g++.other/friend7.C @@ -1,6 +1,6 @@ +// { dg-do assemble } // Origin: Martin v. Löwis <loewis@informatik.hu-berlin.de> // Test that a friend declaration with an explicit :: finds the right fn. -// Build don't link: namespace M { class S; diff --git a/gcc/testsuite/g++.old-deja/g++.other/friend8.C b/gcc/testsuite/g++.old-deja/g++.other/friend8.C index 5da7183..bbe4bf5 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/friend8.C +++ b/gcc/testsuite/g++.old-deja/g++.other/friend8.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 14 Aug 2000 <nathan@codesourcery.com> @@ -11,6 +11,6 @@ struct Z; struct X { friend class Z; - friend Y; // ERROR - friend must use aggr tag + friend Y; // { dg-error "" } friend must use aggr tag }; diff --git a/gcc/testsuite/g++.old-deja/g++.other/friend9.C b/gcc/testsuite/g++.old-deja/g++.other/friend9.C index 442d989..db9a248 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/friend9.C +++ b/gcc/testsuite/g++.old-deja/g++.other/friend9.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 24 Nov 2000 <nathan@codesourcery.com> @@ -7,12 +7,12 @@ class F { - class Internal; // ERROR - is private + class Internal; // { dg-error "" } is private }; class C { - friend class F::Internal; // ERROR - in this context + friend class F::Internal; // { dg-error "" } in this context public: typedef enum { A, B } e; diff --git a/gcc/testsuite/g++.old-deja/g++.other/goto1.C b/gcc/testsuite/g++.old-deja/g++.other/goto1.C index 0839ee5..0dcc8bc 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/goto1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/goto1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Mark Mitchell <mark@codesourcery.com> struct S @@ -10,12 +10,12 @@ struct S void f () { { - S s1; // ERROR - skips initialization + S s1; // { dg-error "" } skips initialization - t: // ERROR - jump to label + t: // { dg-error "" } jump to label S s2; ; } - goto t; // ERROR - from here + goto t; // { dg-error "" } from here } diff --git a/gcc/testsuite/g++.old-deja/g++.other/goto2.C b/gcc/testsuite/g++.old-deja/g++.other/goto2.C index 2b95273..07adbb9 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/goto2.C +++ b/gcc/testsuite/g++.old-deja/g++.other/goto2.C @@ -1,6 +1,6 @@ -// Build don't link: +// { dg-do assemble } +// { dg-options "-Wunused" } // Origin: Mark Mitchell <mark@codesourcery.com> -// Special g++ Options: -Wunused struct S { @@ -12,9 +12,9 @@ void f () { { S s1; - int j; // WARNING - unused + int j; // { dg-warning "" } unused - t: // WARNING - unused + t: // { dg-warning "" } unused S s2; } } diff --git a/gcc/testsuite/g++.old-deja/g++.other/goto3.C b/gcc/testsuite/g++.old-deja/g++.other/goto3.C index fefb4da..e063ad2 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/goto3.C +++ b/gcc/testsuite/g++.old-deja/g++.other/goto3.C @@ -1,20 +1,20 @@ +// { dg-do assemble } // Testcase for various invalid gotos. // Origin: Jason Merrill <jason@redhat.com> -// Build don't link: void f () { - goto foo1; // ERROR - jumps - try { foo1:; } catch (...) { } // ERROR - into try - goto foo2; // ERROR - jumps - try { } catch (...) { foo2:; } // ERROR - into catch - goto foo3; // ERROR - jumps - { int i=2; foo3:; } // ERROR - past init + goto foo1; // { dg-error "" } jumps + try { foo1:; } catch (...) { } // { dg-error "" } into try + goto foo2; // { dg-error "" } jumps + try { } catch (...) { foo2:; } // { dg-error "" } into catch + goto foo3; // { dg-error "" } jumps + { int i=2; foo3:; } // { dg-error "" } past init - try { foo4:; } catch (...) { } // ERROR - - goto foo4; // ERROR - - try { } catch (...) { foo5:; } // ERROR - - goto foo5; // ERROR - - { int i=2; foo6:; } // ERROR - - goto foo6; // ERROR - + try { foo4:; } catch (...) { } // { dg-error "" } + goto foo4; // { dg-error "" } + try { } catch (...) { foo5:; } // { dg-error "" } + goto foo5; // { dg-error "" } + { int i=2; foo6:; } // { dg-error "" } + goto foo6; // { dg-error "" } } diff --git a/gcc/testsuite/g++.old-deja/g++.other/goto4.C b/gcc/testsuite/g++.old-deja/g++.other/goto4.C index 75461d4..fa0dd5a 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/goto4.C +++ b/gcc/testsuite/g++.old-deja/g++.other/goto4.C @@ -1,3 +1,4 @@ +// { dg-do run } // Test that we clean up temporaries bound to references properly when // jumping out of their scope. diff --git a/gcc/testsuite/g++.old-deja/g++.other/headers1.C b/gcc/testsuite/g++.old-deja/g++.other/headers1.C index 9316d32..31de355 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/headers1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/headers1.C @@ -1,3 +1,4 @@ +// { dg-do run } // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Loren J. Rittle 07 Jun 2000 <ljrittle@acm.org> // diff --git a/gcc/testsuite/g++.old-deja/g++.other/incomplete.C b/gcc/testsuite/g++.old-deja/g++.other/incomplete.C index 1bdccbd..a00ea1c 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/incomplete.C +++ b/gcc/testsuite/g++.old-deja/g++.other/incomplete.C @@ -1,16 +1,16 @@ -// Build don't link: +// { dg-do assemble } // gcc represents non-ellipsis parmlists by terminating them with // a void parm. We need to distinguish between a parmlist of (void), and // some ill-formed ones. -struct S; // ERROR - forward ref +struct S; // { dg-error "" } forward ref void f(S); // ok -void f(S s) {} // ERROR - incomplete type +void f(S s) {} // { dg-error "" } incomplete type void j (int){} // ok void k (){} // ok void q (void){} // ok -void t (void t); // ERROR - incomplete -void r (void, ...); // ERROR - incomplete -void s (void const); // ERROR - incomplete +void t (void t); // { dg-error "" } incomplete +void r (void, ...); // { dg-error "" } incomplete +void s (void const); // { dg-error "" } incomplete diff --git a/gcc/testsuite/g++.old-deja/g++.other/init1.C b/gcc/testsuite/g++.old-deja/g++.other/init1.C index a87f14b..0759e46 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/init1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/init1.C @@ -1,3 +1,4 @@ +// { dg-do run } extern "C" void abort(); int i; diff --git a/gcc/testsuite/g++.old-deja/g++.other/init10.C b/gcc/testsuite/g++.old-deja/g++.other/init10.C index fa23813..7fd07fa 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/init10.C +++ b/gcc/testsuite/g++.old-deja/g++.other/init10.C @@ -1,3 +1,4 @@ +// { dg-do run } int i; struct D { diff --git a/gcc/testsuite/g++.old-deja/g++.other/init11.C b/gcc/testsuite/g++.old-deja/g++.other/init11.C index 79d7d6c..f315e57 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/init11.C +++ b/gcc/testsuite/g++.old-deja/g++.other/init11.C @@ -1,3 +1,4 @@ +// { dg-do run } // Check that elements for which no explicit initializer was given are // default-initialized properly. diff --git a/gcc/testsuite/g++.old-deja/g++.other/init12.C b/gcc/testsuite/g++.old-deja/g++.other/init12.C index 9e4a436..9b72426 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/init12.C +++ b/gcc/testsuite/g++.old-deja/g++.other/init12.C @@ -1,5 +1,5 @@ -// Build don't run: -// Special g++ Options: -O3 +// { dg-do link } +// { dg-options "-O3" } // Origin: Mark Mitchell <mark@codesourcery.com> typedef int (*fp)(); diff --git a/gcc/testsuite/g++.old-deja/g++.other/init13.C b/gcc/testsuite/g++.old-deja/g++.other/init13.C index 1213a5c..a658c29 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/init13.C +++ b/gcc/testsuite/g++.old-deja/g++.other/init13.C @@ -1,5 +1,5 @@ -// Build don't run: -// Special g++ Options: -O3 +// { dg-do link } +// { dg-options "-O3" } // Origin: Gabriel Dos_Reis <Gabriel.Dos_Reis@sophia.inria.fr> void f() {} diff --git a/gcc/testsuite/g++.old-deja/g++.other/init14.C b/gcc/testsuite/g++.old-deja/g++.other/init14.C index 8c866d7..e3fca53 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/init14.C +++ b/gcc/testsuite/g++.old-deja/g++.other/init14.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: bkoz@nabi.net typedef struct diff --git a/gcc/testsuite/g++.old-deja/g++.other/init15.C b/gcc/testsuite/g++.old-deja/g++.other/init15.C index b51285c..a84bfa1d 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/init15.C +++ b/gcc/testsuite/g++.old-deja/g++.other/init15.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 2000 Free Software Foundation // Contributed by Nathan Sidwell 21 June 2000 <nathan@codesourcery.com> diff --git a/gcc/testsuite/g++.old-deja/g++.other/init16.C b/gcc/testsuite/g++.old-deja/g++.other/init16.C index 83d5a4e..de4c0ad 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/init16.C +++ b/gcc/testsuite/g++.old-deja/g++.other/init16.C @@ -1,3 +1,4 @@ +// { dg-do run } // Origin: Jakub Jelinek <jakub@redhat.com> struct bar { diff --git a/gcc/testsuite/g++.old-deja/g++.other/init17.C b/gcc/testsuite/g++.old-deja/g++.other/init17.C index 4a6e582..32b2f1d 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/init17.C +++ b/gcc/testsuite/g++.old-deja/g++.other/init17.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 17 Jan 2001 <nathan@codesourcery.com> @@ -11,8 +11,8 @@ enum X { alpha, beta }; void f(void *ptr) { X y = X (); - X y1 (0); // ERROR - cannot convert + X y1 (0); // { dg-error "" } cannot convert X y2 = X (0); X *x = new X (); - X *x2 = new X (0); // ERROR - cannot convert + X *x2 = new X (0); // { dg-error "" } cannot convert } diff --git a/gcc/testsuite/g++.old-deja/g++.other/init2.C b/gcc/testsuite/g++.old-deja/g++.other/init2.C index c17427a..6812292 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/init2.C +++ b/gcc/testsuite/g++.old-deja/g++.other/init2.C @@ -1,4 +1,5 @@ -// Special g++ Options: -O3 +// { dg-do run } +// { dg-options "-O3" } typedef int (*fp)(); diff --git a/gcc/testsuite/g++.old-deja/g++.other/init3.C b/gcc/testsuite/g++.old-deja/g++.other/init3.C index a4c6e76..d9eb654 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/init3.C +++ b/gcc/testsuite/g++.old-deja/g++.other/init3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } struct X { diff --git a/gcc/testsuite/g++.old-deja/g++.other/init4.C b/gcc/testsuite/g++.old-deja/g++.other/init4.C index 9bc473f..f877f2a 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/init4.C +++ b/gcc/testsuite/g++.old-deja/g++.other/init4.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } class error { public: @@ -6,7 +6,7 @@ public: }; class foo { - const error x = 1; // ERROR - initialization of non-static data member + const error x = 1; // { dg-error "" } initialization of non-static data member }; diff --git a/gcc/testsuite/g++.old-deja/g++.other/init5.C b/gcc/testsuite/g++.old-deja/g++.other/init5.C index 92b1d32..c070600 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/init5.C +++ b/gcc/testsuite/g++.old-deja/g++.other/init5.C @@ -1,6 +1,6 @@ +// { dg-do run { xfail *-*-* } } // Objects must be destructed in decreasing cnt order // Original test attributed to James Kanze <jkanze@otelo.ibmmail.com> -// execution test - XFAIL *-*-* extern "C" void abort (); diff --git a/gcc/testsuite/g++.old-deja/g++.other/init6.C b/gcc/testsuite/g++.old-deja/g++.other/init6.C index a684ae1..66e511a 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/init6.C +++ b/gcc/testsuite/g++.old-deja/g++.other/init6.C @@ -1,3 +1,4 @@ +// { dg-do run } // Test for default-initialization of POD-structs in functional cast notation. struct foo { int a[10]; }; diff --git a/gcc/testsuite/g++.old-deja/g++.other/init7.C b/gcc/testsuite/g++.old-deja/g++.other/init7.C index 1ecc39a..e6c7dc1 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/init7.C +++ b/gcc/testsuite/g++.old-deja/g++.other/init7.C @@ -1,3 +1,4 @@ +// { dg-do run } // simplified from testcase in Windows Developer Journal, // submitted by eyal.ben-david@aks.com diff --git a/gcc/testsuite/g++.old-deja/g++.other/init8.C b/gcc/testsuite/g++.old-deja/g++.other/init8.C index 80df498..0b4b294 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/init8.C +++ b/gcc/testsuite/g++.old-deja/g++.other/init8.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // submitted by David C Binderman <dcb@pncl.co.uk> @@ -7,5 +7,5 @@ void f() { - const int var [ 10 ]; // ERROR - missing initializer + const int var [ 10 ]; // { dg-error "" } missing initializer } diff --git a/gcc/testsuite/g++.old-deja/g++.other/init9.C b/gcc/testsuite/g++.old-deja/g++.other/init9.C index 337496a..6780b5a 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/init9.C +++ b/gcc/testsuite/g++.old-deja/g++.other/init9.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Based on a testcase submitted by Tudor Hulubei <tudor@cs.unh.edu> @@ -13,9 +13,9 @@ struct A { }; void a() { - goto bar; // ERROR - jump from here - A x; // ERROR - jump crosses initialization - bar: // ERROR - jump to here + goto bar; // { dg-error "" } jump from here + A x; // { dg-error "" } jump crosses initialization + bar: // { dg-error "" } jump to here ; } @@ -24,17 +24,17 @@ struct X { }; void b() { - goto bar; // ERROR - jump from here - X x; // ERROR - jump crosses initialization - bar: // ERROR - jump to here + goto bar; // { dg-error "" } jump from here + X x; // { dg-error "" } jump crosses initialization + bar: // { dg-error "" } jump to here ; } #include <vector> void c() { - goto bar; // ERROR - jump from here - std::vector<int> x; // ERROR - jump crosses initialization - bar: // ERROR - jump to here + goto bar; // { dg-error "" } jump from here + std::vector<int> x; // { dg-error "" } jump crosses initialization + bar: // { dg-error "" } jump to here ; } diff --git a/gcc/testsuite/g++.old-deja/g++.other/initstring.C b/gcc/testsuite/g++.old-deja/g++.other/initstring.C index f194bfc..d561892 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/initstring.C +++ b/gcc/testsuite/g++.old-deja/g++.other/initstring.C @@ -1,3 +1,3 @@ -// Build don't link: +// { dg-do assemble } static const char foo[] = { "bar" }; diff --git a/gcc/testsuite/g++.old-deja/g++.other/inline1.C b/gcc/testsuite/g++.old-deja/g++.other/inline1.C index c4c71b7..d862f00 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/inline1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/inline1.C @@ -1,6 +1,6 @@ -// Build don't link: +// { dg-do assemble } +// { dg-options "-O2 -Winline" } // Origin: Martin Reinecke <martin@MPA-Garching.MPG.DE> -// Special g++ Options: -O2 -Winline class foo { diff --git a/gcc/testsuite/g++.old-deja/g++.other/inline10.C b/gcc/testsuite/g++.old-deja/g++.other/inline10.C index 5bfdbae..cd24157 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/inline10.C +++ b/gcc/testsuite/g++.old-deja/g++.other/inline10.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -O2 +// { dg-do assemble } +// { dg-options "-O2" } // Origin: Mark Mitchell <mark@codesourcery.com> struct S diff --git a/gcc/testsuite/g++.old-deja/g++.other/inline11.C b/gcc/testsuite/g++.old-deja/g++.other/inline11.C index 2fde184..56d803b 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/inline11.C +++ b/gcc/testsuite/g++.old-deja/g++.other/inline11.C @@ -1,6 +1,6 @@ -// Build don't link: +// { dg-do assemble } +// { dg-options "-O2" } // Origin: Jakub Jelinek <jakub@redhat.com> -// Special g++ Options: -O2 class baz { diff --git a/gcc/testsuite/g++.old-deja/g++.other/inline12.C b/gcc/testsuite/g++.old-deja/g++.other/inline12.C index b853db1..064827d 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/inline12.C +++ b/gcc/testsuite/g++.old-deja/g++.other/inline12.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -O2 -g +// { dg-do assemble } +// { dg-options "-O2 -g" } // (Should preferrably cycle through options.) // Origin: Hans-Peter Nilsson <hp@axis.com> // See <URL:http://gcc.gnu.org/ml/gcc-patches/2000-06/msg00310.html> diff --git a/gcc/testsuite/g++.old-deja/g++.other/inline13.C b/gcc/testsuite/g++.old-deja/g++.other/inline13.C index a24a74e..bf8e52e 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/inline13.C +++ b/gcc/testsuite/g++.old-deja/g++.other/inline13.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Alexandre Oliva <aoliva@cygnus.com> struct foo { diff --git a/gcc/testsuite/g++.old-deja/g++.other/inline14.C b/gcc/testsuite/g++.old-deja/g++.other/inline14.C index 5a7ea4b..1bd74b4 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/inline14.C +++ b/gcc/testsuite/g++.old-deja/g++.other/inline14.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at> #include <iostream> diff --git a/gcc/testsuite/g++.old-deja/g++.other/inline15.C b/gcc/testsuite/g++.old-deja/g++.other/inline15.C index b6eede5..43f7f5e 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/inline15.C +++ b/gcc/testsuite/g++.old-deja/g++.other/inline15.C @@ -1,6 +1,6 @@ -// Build don't link: +// { dg-do assemble } +// { dg-options "-O1" } // Origin: Jakub Jelinek <jakub@redhat.com> -// Special g++ Options: -O1 class Type; template<class E> diff --git a/gcc/testsuite/g++.old-deja/g++.other/inline16.C b/gcc/testsuite/g++.old-deja/g++.other/inline16.C index 3404f43..95bfa7a 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/inline16.C +++ b/gcc/testsuite/g++.old-deja/g++.other/inline16.C @@ -1,6 +1,6 @@ -// Build don't link: +// { dg-do assemble } +// { dg-options "-O1" } // Origin: Jakub Jelinek <jakub@redhat.com> -// Special g++ Options: -O1 struct foo { bool x; diff --git a/gcc/testsuite/g++.old-deja/g++.other/inline17.C b/gcc/testsuite/g++.old-deja/g++.other/inline17.C index f3266ab..b7890e7 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/inline17.C +++ b/gcc/testsuite/g++.old-deja/g++.other/inline17.C @@ -1,6 +1,6 @@ -// Build don't link: +// { dg-do assemble } +// { dg-options "-O3" } // Origin: Jakub Jelinek <jakub@redhat.com> -// Special g++ Options: -O3 struct foo { diff --git a/gcc/testsuite/g++.old-deja/g++.other/inline18.C b/gcc/testsuite/g++.old-deja/g++.other/inline18.C index 263fd0e..70c4cf6 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/inline18.C +++ b/gcc/testsuite/g++.old-deja/g++.other/inline18.C @@ -1,6 +1,6 @@ -// Build don't link: +// { dg-do assemble } +// { dg-options "-O3" } // Origin: Jakub Jelinek <jakub@redhat.com> -// Special g++ Options: -O3 static void foo (int a) { diff --git a/gcc/testsuite/g++.old-deja/g++.other/inline19.C b/gcc/testsuite/g++.old-deja/g++.other/inline19.C index c27aa53..76731a5 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/inline19.C +++ b/gcc/testsuite/g++.old-deja/g++.other/inline19.C @@ -1,8 +1,7 @@ -// Build don't link: +// { dg-do assemble } +// { dg-options "-O1" } // Origin: Scott Snyder <snyder@fnal.gov> via PR 1733. -// Special g++ Options: -O1 // -// crash test struct TBtItem { diff --git a/gcc/testsuite/g++.old-deja/g++.other/inline2.C b/gcc/testsuite/g++.old-deja/g++.other/inline2.C index 0ed4cf3..f1d1962 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/inline2.C +++ b/gcc/testsuite/g++.old-deja/g++.other/inline2.C @@ -1,6 +1,6 @@ +// { dg-do assemble } +// { dg-options "-O2 -Winline" } // Origin: Martin Reinecke <martin@MPA-Garching.MPG.DE> -// Build don't link: -// Special g++ Options: -O2 -Winline #include <cmath> diff --git a/gcc/testsuite/g++.old-deja/g++.other/inline20.C b/gcc/testsuite/g++.old-deja/g++.other/inline20.C index a4af375..0e94291 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/inline20.C +++ b/gcc/testsuite/g++.old-deja/g++.other/inline20.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } struct A { int a, b, c, d; diff --git a/gcc/testsuite/g++.old-deja/g++.other/inline21.C b/gcc/testsuite/g++.old-deja/g++.other/inline21.C index b7edf01..25715ac 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/inline21.C +++ b/gcc/testsuite/g++.old-deja/g++.other/inline21.C @@ -1,4 +1,5 @@ -// Special g++ Options: -O2 +// { dg-do run } +// { dg-options "-O2" } // Origin: suckfish@ihug.co.nz // DECLARATIONS diff --git a/gcc/testsuite/g++.old-deja/g++.other/inline23.C b/gcc/testsuite/g++.old-deja/g++.other/inline23.C index 3a323e0..dcb443b 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/inline23.C +++ b/gcc/testsuite/g++.old-deja/g++.other/inline23.C @@ -1,4 +1,4 @@ -// Build don't run: +// { dg-do link } struct B { diff --git a/gcc/testsuite/g++.old-deja/g++.other/inline3.C b/gcc/testsuite/g++.old-deja/g++.other/inline3.C index ec3b33a..a614100 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/inline3.C +++ b/gcc/testsuite/g++.old-deja/g++.other/inline3.C @@ -1,6 +1,6 @@ -// Build don't link: +// { dg-do assemble } +// { dg-options "-O3" } // Origin: Mark Mitchell <mark@codesourcery.com> -// Special g++ Options: -O3 class ostream; diff --git a/gcc/testsuite/g++.old-deja/g++.other/inline4.C b/gcc/testsuite/g++.old-deja/g++.other/inline4.C index bad66f3..b68c7c2 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/inline4.C +++ b/gcc/testsuite/g++.old-deja/g++.other/inline4.C @@ -1,6 +1,6 @@ -// Build don't link: +// { dg-do assemble } +// { dg-options "-O2" } // Origin: Mark Mitchell <mark@codesourcery.com> -// Special g++ Options: -O2 inline void f () { diff --git a/gcc/testsuite/g++.old-deja/g++.other/inline5.C b/gcc/testsuite/g++.old-deja/g++.other/inline5.C index 305fd0a..b538cdb 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/inline5.C +++ b/gcc/testsuite/g++.old-deja/g++.other/inline5.C @@ -1,6 +1,6 @@ -// Build don't link: +// { dg-do assemble } +// { dg-options "-O2" } // Origin: Matt Austern <austern@isolde.engr.sgi.com> -// Special g++ Options: -O2 class X; diff --git a/gcc/testsuite/g++.old-deja/g++.other/inline6.C b/gcc/testsuite/g++.old-deja/g++.other/inline6.C index 0617362..04de9fc 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/inline6.C +++ b/gcc/testsuite/g++.old-deja/g++.other/inline6.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -O2 +// { dg-do assemble } +// { dg-options "-O2" } // Origin: Mark Mitchell <mark@codesourcery.com> struct S diff --git a/gcc/testsuite/g++.old-deja/g++.other/inline7.C b/gcc/testsuite/g++.old-deja/g++.other/inline7.C index 2784a28..a3723cf 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/inline7.C +++ b/gcc/testsuite/g++.old-deja/g++.other/inline7.C @@ -1,5 +1,6 @@ +// { dg-do run } +// { dg-options "-O2" } // Origin: Mark Mitchell <mark@codesourcery.com> -// Special g++ Options: -O2 #include <list> diff --git a/gcc/testsuite/g++.old-deja/g++.other/inline8.C b/gcc/testsuite/g++.old-deja/g++.other/inline8.C index 17965d9..b919ab5 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/inline8.C +++ b/gcc/testsuite/g++.old-deja/g++.other/inline8.C @@ -1,5 +1,6 @@ +// { dg-do run } +// { dg-options "-O1" } // Origin: Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at> -// Special g++ Options: -O1 #include <map> #include <cstdlib> diff --git a/gcc/testsuite/g++.old-deja/g++.other/inline9.C b/gcc/testsuite/g++.old-deja/g++.other/inline9.C index 9256c5f..9a82fcf 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/inline9.C +++ b/gcc/testsuite/g++.old-deja/g++.other/inline9.C @@ -1,6 +1,6 @@ -// Build don't link: +// { dg-do assemble } +// { dg-options "-O2" } // Origin: Mark Mitchell <mitchell@codesourcery.com> -// Special g++ Options: -O2 inline void f () { diff --git a/gcc/testsuite/g++.old-deja/g++.other/instan1.C b/gcc/testsuite/g++.old-deja/g++.other/instan1.C index 87c966d..3c294c3 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/instan1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/instan1.C @@ -1,6 +1,6 @@ -// Build don't run: +// { dg-do link } +// { dg-options "-fno-implicit-templates" } // Origin: Mark Mitchell <mark@codesourcery.com> -// Special g++ Options: -fno-implicit-templates template <class T> struct U { diff --git a/gcc/testsuite/g++.old-deja/g++.other/lex1.C b/gcc/testsuite/g++.old-deja/g++.other/lex1.C index b639f05..4e17278 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/lex1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/lex1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // // Copyright (C) 2001 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 26 April 2001 <nathan@codesourcery.com> @@ -8,5 +8,5 @@ void foo () { // there is a ctrl-h on the next line - // ERROR - stray char + // { dg-error "" } stray char } diff --git a/gcc/testsuite/g++.old-deja/g++.other/lineno1.C b/gcc/testsuite/g++.old-deja/g++.other/lineno1.C index ab003e0..8100522 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/lineno1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/lineno1.C @@ -1,14 +1,15 @@ +// { dg-do assemble } +// { dg-options "-w" } // Submitted by Nathan Sidwell <nathan@acm.org> // Bug: g++ was giving the wrong line number for statics. -// Special g++ Options: -w class A { - A(); // ERROR - private - ~A(); // ERROR - private + A(); // { dg-error "" } private + ~A(); // { dg-error "" } private }; -static A a; // ERROR - here +static A a; // { dg-error "" } here diff --git a/gcc/testsuite/g++.old-deja/g++.other/lineno2.C b/gcc/testsuite/g++.old-deja/g++.other/lineno2.C index 4d64d1a..3735d64 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/lineno2.C +++ b/gcc/testsuite/g++.old-deja/g++.other/lineno2.C @@ -1,14 +1,15 @@ +// { dg-do assemble } // Submitted by Nathan Sidwell <nathan@acm.org> // Bug: g++ wasn't listing candidates for a failed conversion. -void f(int, double); // ERROR - candidate -void f(double, int); // ERROR - candidate -void f(int); // ERROR - candidate +void f(int, double); // { dg-error "" } candidate +void f(double, int); // { dg-error "" } candidate +void f(int); // { dg-error "" } candidate int main () { void (*ptr)(int, int); - ptr = &f; // ERROR - no match + ptr = &f; // { dg-error "" } no match } diff --git a/gcc/testsuite/g++.old-deja/g++.other/lineno3.C b/gcc/testsuite/g++.old-deja/g++.other/lineno3.C index e2f3e70..2b3ba059 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/lineno3.C +++ b/gcc/testsuite/g++.old-deja/g++.other/lineno3.C @@ -1,6 +1,6 @@ +// { dg-do assemble } // Bug: g++ gets confused by the #line directive within a method. // Contributed by Mark Mitchell <mark@codesourcery.com> -// Build don't link: struct S { diff --git a/gcc/testsuite/g++.old-deja/g++.other/lineno4.C b/gcc/testsuite/g++.old-deja/g++.other/lineno4.C index 9767262..ce60e2c 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/lineno4.C +++ b/gcc/testsuite/g++.old-deja/g++.other/lineno4.C @@ -1,7 +1,7 @@ -// Build don't link: +// { dg-do assemble } #define x \ y -int; // ERROR - invalid declaration +int; // { dg-error "" } invalid declaration diff --git a/gcc/testsuite/g++.old-deja/g++.other/lineno5.C b/gcc/testsuite/g++.old-deja/g++.other/lineno5.C index dc779ed..d14bd90 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/lineno5.C +++ b/gcc/testsuite/g++.old-deja/g++.other/lineno5.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // // Copyright (C) 2001 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 25 Jul 2001 <nathan@codesourcery.com> @@ -15,5 +15,5 @@ namespace tmp { class A { public: - int kaka(tmp::B = b); // ERROR - no b in scope + int kaka(tmp::B = b); // { dg-error "" } no b in scope }; diff --git a/gcc/testsuite/g++.old-deja/g++.other/linkage1.C b/gcc/testsuite/g++.old-deja/g++.other/linkage1.C index 65a2848..10ee251 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/linkage1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/linkage1.C @@ -1,14 +1,15 @@ +// { dg-do assemble } typedef struct { int i; } *p; -void f (p) { } // ERROR - function uses anonymous type +void f (p) { } // { dg-error "" } function uses anonymous type p q; int main() { extern p j; struct A { int j; }; - extern A a; // ERROR - extern uses local type - extern void f (A); // ERROR - extern uses local type + extern A a; // { dg-error "" } extern uses local type + extern void f (A); // { dg-error "" } extern uses local type } diff --git a/gcc/testsuite/g++.old-deja/g++.other/linkage2.C b/gcc/testsuite/g++.old-deja/g++.other/linkage2.C index c9b6e2a..2385b22 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/linkage2.C +++ b/gcc/testsuite/g++.old-deja/g++.other/linkage2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // From: Klaus-Georg Adams <Klaus-Georg.Adams@chemie.uni-karlsruhe.de> extern "C" { @@ -7,7 +7,7 @@ extern GDBM_FILE gdbm_open(); } typedef struct { int dummy[10]; } *FAIL_FILE; -extern FAIL_FILE fail_open(); // ERROR - non-local function +extern FAIL_FILE fail_open(); // { dg-error "" } non-local function typedef struct { int dummy[10]; } *SUCCESS_FILE, S; extern SUCCESS_FILE success_open(); diff --git a/gcc/testsuite/g++.old-deja/g++.other/linkage3.C b/gcc/testsuite/g++.old-deja/g++.other/linkage3.C index d32d770..8ddff82 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/linkage3.C +++ b/gcc/testsuite/g++.old-deja/g++.other/linkage3.C @@ -1,5 +1,5 @@ -// Build don't link: +// { dg-do assemble } // Origin: Mark Mitchell <mark@codesourcery.com> -extern "C" void f (); // ERROR - previous declaration -static void f () {} // ERROR - extern redeclared static +extern "C" void f (); // { dg-error "" } previous declaration +static void f () {} // { dg-error "" } extern redeclared static diff --git a/gcc/testsuite/g++.old-deja/g++.other/linkage4.C b/gcc/testsuite/g++.old-deja/g++.other/linkage4.C index 65772f7..7531f45 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/linkage4.C +++ b/gcc/testsuite/g++.old-deja/g++.other/linkage4.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Mark Mitchell <mark@codesourcery.com> static int strlen (const char*) { return 0; } @@ -8,4 +8,4 @@ void f () {} // Check that the strlen declaration here is given internal linkage by // using it as a non-type template argument, and expecting an error. -template void f<strlen>(); // ERROR - no matching template +template void f<strlen>(); // { dg-error "" } no matching template diff --git a/gcc/testsuite/g++.old-deja/g++.other/linkage5.C b/gcc/testsuite/g++.old-deja/g++.other/linkage5.C index 4bbcf23..7c420c1 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/linkage5.C +++ b/gcc/testsuite/g++.old-deja/g++.other/linkage5.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Jason Merrill <jason@cygnus.com> static int f (); diff --git a/gcc/testsuite/g++.old-deja/g++.other/linkage6.C b/gcc/testsuite/g++.old-deja/g++.other/linkage6.C index 65374ca..516a242 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/linkage6.C +++ b/gcc/testsuite/g++.old-deja/g++.other/linkage6.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -fno-weak +// { dg-do assemble } +// { dg-options "-fno-weak" } // Origin: Mark Mitchell <mark@codesourcery.com> template <typename T> diff --git a/gcc/testsuite/g++.old-deja/g++.other/linkage7.C b/gcc/testsuite/g++.old-deja/g++.other/linkage7.C index 561181b..d1470a9 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/linkage7.C +++ b/gcc/testsuite/g++.old-deja/g++.other/linkage7.C @@ -1,4 +1,4 @@ -// Build don't run: +// { dg-do link } // Origin: Mark Mitchell <mark@codesourcery.com> namespace N { diff --git a/gcc/testsuite/g++.old-deja/g++.other/local-alloc1.C b/gcc/testsuite/g++.old-deja/g++.other/local-alloc1.C index 2a31309..6c4b6cd 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/local-alloc1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/local-alloc1.C @@ -1,6 +1,6 @@ -// Build don't link: +// { dg-do assemble } +// { dg-options "-O0 -fpic" } // Origin: Jakub Jelinek <jakub@redhat.com> -// Special g++ Options: -O0 -fpic // Skip if target: cris-*-elf* cris-*-aout* mmix-*-* struct bar { diff --git a/gcc/testsuite/g++.old-deja/g++.other/local1.C b/gcc/testsuite/g++.old-deja/g++.other/local1.C index d0ed4f0..a51d50b 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/local1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/local1.C @@ -1,4 +1,4 @@ -// Build don't run: +// { dg-do link } struct Outer { virtual ~Outer() {} diff --git a/gcc/testsuite/g++.old-deja/g++.other/local2.C b/gcc/testsuite/g++.old-deja/g++.other/local2.C index 2d17b33..12b777c 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/local2.C +++ b/gcc/testsuite/g++.old-deja/g++.other/local2.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -O2 +// { dg-do assemble } +// { dg-options "-O2" } void f () { diff --git a/gcc/testsuite/g++.old-deja/g++.other/local3.C b/gcc/testsuite/g++.old-deja/g++.other/local3.C index 0a248b1..3879b14 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/local3.C +++ b/gcc/testsuite/g++.old-deja/g++.other/local3.C @@ -1,7 +1,7 @@ +// { dg-do run } // Bug: g++ lies about DECL_CONTEXT, so the backend thinks B::f is not // function-local. // Contributed by Jason Merrill <jason@cygnus.com> -// excess errors test struct A { virtual void f () = 0; diff --git a/gcc/testsuite/g++.old-deja/g++.other/local4.C b/gcc/testsuite/g++.old-deja/g++.other/local4.C index fd8f512..b5514a5 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/local4.C +++ b/gcc/testsuite/g++.old-deja/g++.other/local4.C @@ -1,3 +1,4 @@ +// { dg-do run } // Test that a local declaration of one of a global overload set works int f () { return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.other/lookup1.C b/gcc/testsuite/g++.old-deja/g++.other/lookup1.C index f3ea5eb..c7f220f 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/lookup1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/lookup1.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // simple test for id from base class during class defn -// Build don't link: struct foo { enum { blah = 1 }; diff --git a/gcc/testsuite/g++.old-deja/g++.other/lookup10.C b/gcc/testsuite/g++.old-deja/g++.other/lookup10.C index da2b485..a60071d 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/lookup10.C +++ b/gcc/testsuite/g++.old-deja/g++.other/lookup10.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } struct A { struct B { diff --git a/gcc/testsuite/g++.old-deja/g++.other/lookup11.C b/gcc/testsuite/g++.old-deja/g++.other/lookup11.C index 61a6e91d..d7f12ed 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/lookup11.C +++ b/gcc/testsuite/g++.old-deja/g++.other/lookup11.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } namespace A { int i; diff --git a/gcc/testsuite/g++.old-deja/g++.other/lookup12.C b/gcc/testsuite/g++.old-deja/g++.other/lookup12.C index 5c3143c..d283e2c 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/lookup12.C +++ b/gcc/testsuite/g++.old-deja/g++.other/lookup12.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Mark Mitchell <mark@codesourcery.com> struct B { diff --git a/gcc/testsuite/g++.old-deja/g++.other/lookup13.C b/gcc/testsuite/g++.old-deja/g++.other/lookup13.C index 0c1e546..872c35f 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/lookup13.C +++ b/gcc/testsuite/g++.old-deja/g++.other/lookup13.C @@ -1,3 +1,4 @@ +// { dg-do run } // Origin: Mark Mitchell <mark@codesourcery.com> int main() diff --git a/gcc/testsuite/g++.old-deja/g++.other/lookup14.C b/gcc/testsuite/g++.old-deja/g++.other/lookup14.C index 5c81c44..2d2560e 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/lookup14.C +++ b/gcc/testsuite/g++.old-deja/g++.other/lookup14.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Mark Mitchell <mark@codesourcery.com> union U { diff --git a/gcc/testsuite/g++.old-deja/g++.other/lookup15.C b/gcc/testsuite/g++.old-deja/g++.other/lookup15.C index be9096a..4d5ce70 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/lookup15.C +++ b/gcc/testsuite/g++.old-deja/g++.other/lookup15.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Benjamin Kosnik <bkoz@cygnus.com> class b diff --git a/gcc/testsuite/g++.old-deja/g++.other/lookup16.C b/gcc/testsuite/g++.old-deja/g++.other/lookup16.C index 150eb07..5294453 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/lookup16.C +++ b/gcc/testsuite/g++.old-deja/g++.other/lookup16.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 1999 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 25 Aug 1999 <nathan@acm.org> diff --git a/gcc/testsuite/g++.old-deja/g++.other/lookup17.C b/gcc/testsuite/g++.old-deja/g++.other/lookup17.C index 6a7510a..80a3b1a 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/lookup17.C +++ b/gcc/testsuite/g++.old-deja/g++.other/lookup17.C @@ -1,3 +1,4 @@ +// { dg-do run } // Bug: t->B is resolved to the type instead of the field. struct A { diff --git a/gcc/testsuite/g++.old-deja/g++.other/lookup18.C b/gcc/testsuite/g++.old-deja/g++.other/lookup18.C index 09549f7..71124a2 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/lookup18.C +++ b/gcc/testsuite/g++.old-deja/g++.other/lookup18.C @@ -1,7 +1,7 @@ +// { dg-do assemble } // Test that referring to an ambiguous base in name lookup prevents // access to the field, even though the field is not ambiguous. -// Build don't link: struct A { int i; @@ -14,10 +14,10 @@ struct E: public C, public D { }; void E::f() { - B::i = 0; // ERROR - B is ambiguous + B::i = 0; // { dg-error "" } B is ambiguous } void f () { E e; - e.B::i = 0; // ERROR - B is ambiguous + e.B::i = 0; // { dg-error "" } B is ambiguous } diff --git a/gcc/testsuite/g++.old-deja/g++.other/lookup19.C b/gcc/testsuite/g++.old-deja/g++.other/lookup19.C index 12663e7..d4104f0 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/lookup19.C +++ b/gcc/testsuite/g++.old-deja/g++.other/lookup19.C @@ -1,15 +1,15 @@ +// { dg-do assemble } // Test for proper handling of type lookup for conversion operator names. -// Build don't link: // Test 1: Only at file scope typedef int B; struct A { int B; - operator B *(); // ERROR - + operator B *(); // { dg-error "" } }; -A::operator B * () // ERROR - +A::operator B * () // { dg-error "" } { return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.other/lookup2.C b/gcc/testsuite/g++.old-deja/g++.other/lookup2.C index 0772399..567f7a4 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/lookup2.C +++ b/gcc/testsuite/g++.old-deja/g++.other/lookup2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } struct B { int i; diff --git a/gcc/testsuite/g++.old-deja/g++.other/lookup20.C b/gcc/testsuite/g++.old-deja/g++.other/lookup20.C index 930c9ab7ad..ff23521 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/lookup20.C +++ b/gcc/testsuite/g++.old-deja/g++.other/lookup20.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // Bug: typename_sub2 returned the type, so we tried to look up "A" in B. -// Build don't link: struct A { struct A1 { }; }; diff --git a/gcc/testsuite/g++.old-deja/g++.other/lookup21.C b/gcc/testsuite/g++.old-deja/g++.other/lookup21.C index 09b3123..3a7795d 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/lookup21.C +++ b/gcc/testsuite/g++.old-deja/g++.other/lookup21.C @@ -1,3 +1,4 @@ +// { dg-do run } // Check that we don't complain about ambiguity between the same static // member function in different subobjects. diff --git a/gcc/testsuite/g++.old-deja/g++.other/lookup22.C b/gcc/testsuite/g++.old-deja/g++.other/lookup22.C index c62ce50..5246fab 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/lookup22.C +++ b/gcc/testsuite/g++.old-deja/g++.other/lookup22.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // Origin: GerhardTonn@gmx.de -// Build don't link: struct super { union { diff --git a/gcc/testsuite/g++.old-deja/g++.other/lookup23.C b/gcc/testsuite/g++.old-deja/g++.other/lookup23.C index 9deee9e..64cb9de 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/lookup23.C +++ b/gcc/testsuite/g++.old-deja/g++.other/lookup23.C @@ -1,6 +1,6 @@ +// { dg-do assemble } // Test for proper handling of type lookup if base class has field with the // same name as the containing class. -// Build don't link: struct a { int a; }; struct b : a {}; diff --git a/gcc/testsuite/g++.old-deja/g++.other/lookup3.C b/gcc/testsuite/g++.old-deja/g++.other/lookup3.C index 347be4e..a2946b7 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/lookup3.C +++ b/gcc/testsuite/g++.old-deja/g++.other/lookup3.C @@ -1,3 +1,4 @@ +// { dg-do run } // Test to make sure that the use of __typeof__ in WIFEXITED works. int main () diff --git a/gcc/testsuite/g++.old-deja/g++.other/lookup4.C b/gcc/testsuite/g++.old-deja/g++.other/lookup4.C index 59b7a75..8fa2968 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/lookup4.C +++ b/gcc/testsuite/g++.old-deja/g++.other/lookup4.C @@ -1,3 +1,4 @@ +// { dg-do run } // Test for proper handling of references to overloaded member functions. struct A { diff --git a/gcc/testsuite/g++.old-deja/g++.other/lookup5.C b/gcc/testsuite/g++.old-deja/g++.other/lookup5.C index 9fe0415..48dd004 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/lookup5.C +++ b/gcc/testsuite/g++.old-deja/g++.other/lookup5.C @@ -1,11 +1,10 @@ -// Build don't link: +// { dg-do assemble { xfail *-*-* } } // Simplified from bug report by Paris Smaragdis <paris@media.mit.edu> -// crash test - XFAIL *-*-* template <class T> class vector {}; class foo {}; int main() { foo f; - f.vector(); // ERROR - not a method + f.vector(); // { dg-error "" } not a method } diff --git a/gcc/testsuite/g++.old-deja/g++.other/lookup6.C b/gcc/testsuite/g++.old-deja/g++.other/lookup6.C index 08f5ac5..a66302b 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/lookup6.C +++ b/gcc/testsuite/g++.old-deja/g++.other/lookup6.C @@ -1,3 +1,4 @@ +// { dg-do run } int f(int i) { struct C { diff --git a/gcc/testsuite/g++.old-deja/g++.other/lookup7.C b/gcc/testsuite/g++.old-deja/g++.other/lookup7.C index 55726a5..53c4a3b 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/lookup7.C +++ b/gcc/testsuite/g++.old-deja/g++.other/lookup7.C @@ -1,3 +1,4 @@ +// { dg-do run } // Test for handling of type shadowing in function scope. int main() diff --git a/gcc/testsuite/g++.old-deja/g++.other/lookup8.C b/gcc/testsuite/g++.old-deja/g++.other/lookup8.C index f81572a..61c3dd3 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/lookup8.C +++ b/gcc/testsuite/g++.old-deja/g++.other/lookup8.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } struct S { int A; diff --git a/gcc/testsuite/g++.old-deja/g++.other/lookup9.C b/gcc/testsuite/g++.old-deja/g++.other/lookup9.C index 2500400..688b379 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/lookup9.C +++ b/gcc/testsuite/g++.old-deja/g++.other/lookup9.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } struct S { typedef long I; diff --git a/gcc/testsuite/g++.old-deja/g++.other/loop1.C b/gcc/testsuite/g++.old-deja/g++.other/loop1.C index 3380dd4..168734c 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/loop1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/loop1.C @@ -1,5 +1,6 @@ +// { dg-do run } +// { dg-options "-O2" } // Test for bad loop optimization of goto fixups. -// Special g++ Options: -O2 typedef bool (*ftype) (); diff --git a/gcc/testsuite/g++.old-deja/g++.other/loop2.C b/gcc/testsuite/g++.old-deja/g++.other/loop2.C index 7fd90c7..a9aa4a3 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/loop2.C +++ b/gcc/testsuite/g++.old-deja/g++.other/loop2.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -O +// { dg-do assemble } +// { dg-options "-O" } class foo { public: diff --git a/gcc/testsuite/g++.old-deja/g++.other/main1.C b/gcc/testsuite/g++.old-deja/g++.other/main1.C index 09ab4113..0501a74 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/main1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/main1.C @@ -1,12 +1,13 @@ +// { dg-do assemble } // Build don't linK: int main() -{ // ERROR - invalid redeclaration of +{ // { dg-error "" } invalid redeclaration of return 0; } int main(int, const char**) -{ // ERROR - as +{ // { dg-error "" } as return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.other/main2.C b/gcc/testsuite/g++.old-deja/g++.other/main2.C index ea4870f..26013e4 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/main2.C +++ b/gcc/testsuite/g++.old-deja/g++.other/main2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Mark Mitchell <mark@codesourcery.com> -double main () {} // ERROR - main must return `int' +double main () {} // { dg-error "" } main must return `int' diff --git a/gcc/testsuite/g++.old-deja/g++.other/mangle10.C b/gcc/testsuite/g++.old-deja/g++.other/mangle10.C index 8d5bb48..b24fe71 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/mangle10.C +++ b/gcc/testsuite/g++.old-deja/g++.other/mangle10.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template<int T> struct A { diff --git a/gcc/testsuite/g++.old-deja/g++.other/mangle2.C b/gcc/testsuite/g++.old-deja/g++.other/mangle2.C index 2a8065e..81cf2f3 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/mangle2.C +++ b/gcc/testsuite/g++.old-deja/g++.other/mangle2.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // Test for overloaded operators in "C" linkage -// Build don't link: extern "C" { typedef struct b diff --git a/gcc/testsuite/g++.old-deja/g++.other/mangle3.C b/gcc/testsuite/g++.old-deja/g++.other/mangle3.C index d77a4b5..3579ed8 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/mangle3.C +++ b/gcc/testsuite/g++.old-deja/g++.other/mangle3.C @@ -1,3 +1,4 @@ +// { dg-do run } struct foo { static int bar () { diff --git a/gcc/testsuite/g++.old-deja/g++.other/mutable1.C b/gcc/testsuite/g++.old-deja/g++.other/mutable1.C index 3fd0c3e..0b2dd8d 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/mutable1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/mutable1.C @@ -1,3 +1,4 @@ +// { dg-do run } // Copyright (C) 1999 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 14 Jan 1999 <nathan@acm.org> diff --git a/gcc/testsuite/g++.old-deja/g++.other/nested1.C b/gcc/testsuite/g++.old-deja/g++.other/nested1.C index 0c03856..957ad45 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/nested1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/nested1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } struct C { @@ -15,5 +15,5 @@ struct E void E::g() { - c.D().f(); // ERROR - no matching function + c.D().f(); // { dg-error "" } no matching function } diff --git a/gcc/testsuite/g++.old-deja/g++.other/nested2.C b/gcc/testsuite/g++.old-deja/g++.other/nested2.C index 5492b53..9e22256 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/nested2.C +++ b/gcc/testsuite/g++.old-deja/g++.other/nested2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // by Bert Bril <bert@dgb.nl> struct M1 { diff --git a/gcc/testsuite/g++.old-deja/g++.other/nested3.C b/gcc/testsuite/g++.old-deja/g++.other/nested3.C index 783caad..6e43ad3 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/nested3.C +++ b/gcc/testsuite/g++.old-deja/g++.other/nested3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Chip Salzenberg <chip@perlsupport.com> class Foo { diff --git a/gcc/testsuite/g++.old-deja/g++.other/nested4.C b/gcc/testsuite/g++.old-deja/g++.other/nested4.C index b6198a1..673fa3c 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/nested4.C +++ b/gcc/testsuite/g++.old-deja/g++.other/nested4.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 10 Aug 2000 <nathan@codesourcery.com> diff --git a/gcc/testsuite/g++.old-deja/g++.other/new.C b/gcc/testsuite/g++.old-deja/g++.other/new.C index 4518762..c3d77c6 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/new.C +++ b/gcc/testsuite/g++.old-deja/g++.other/new.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } #include <new> diff --git a/gcc/testsuite/g++.old-deja/g++.other/new3.C b/gcc/testsuite/g++.old-deja/g++.other/new3.C index 8839a6b..3bea89d 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/new3.C +++ b/gcc/testsuite/g++.old-deja/g++.other/new3.C @@ -1,3 +1,4 @@ +// { dg-do run } typedef __SIZE_TYPE__ size_t; template <class T> diff --git a/gcc/testsuite/g++.old-deja/g++.other/new4.C b/gcc/testsuite/g++.old-deja/g++.other/new4.C index 2eb0954..7b136db 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/new4.C +++ b/gcc/testsuite/g++.old-deja/g++.other/new4.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Mark Mitchell <mark@codesourcery.com> struct S { diff --git a/gcc/testsuite/g++.old-deja/g++.other/new5.C b/gcc/testsuite/g++.old-deja/g++.other/new5.C index 99f3b07..fbb91e8 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/new5.C +++ b/gcc/testsuite/g++.old-deja/g++.other/new5.C @@ -1,3 +1,4 @@ +// { dg-do run } // Test that const-correctness is observed when using new. struct A { diff --git a/gcc/testsuite/g++.old-deja/g++.other/new6.C b/gcc/testsuite/g++.old-deja/g++.other/new6.C index 8b07fa2..3afb2b7 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/new6.C +++ b/gcc/testsuite/g++.old-deja/g++.other/new6.C @@ -1,3 +1,4 @@ +// { dg-do run } // Test that we properly default-initialize the new int when () is given. #include <new> diff --git a/gcc/testsuite/g++.old-deja/g++.other/new7.C b/gcc/testsuite/g++.old-deja/g++.other/new7.C index 35ec0bb..0c0643e 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/new7.C +++ b/gcc/testsuite/g++.old-deja/g++.other/new7.C @@ -1,3 +1,4 @@ +// { dg-do run } // Origin: philip_martin@ntlworld.com #include <new> diff --git a/gcc/testsuite/g++.old-deja/g++.other/null1.C b/gcc/testsuite/g++.old-deja/g++.other/null1.C index f344075..0cf50a2 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/null1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/null1.C @@ -1,4 +1,4 @@ -// Build don't run: +// { dg-do link } #include <cstddef> @@ -22,23 +22,23 @@ void l(long) {} int main() { - int i = NULL; // WARNING - converting NULL to non-pointer type - float z = NULL; // WARNING - converting NULL to non-pointer type + int i = NULL; // { dg-warning "" } converting NULL to non-pointer type + float z = NULL; // { dg-warning "" } converting NULL to non-pointer type int a[2]; - i != NULL; // WARNING - NULL used in arithmetic - NULL != z; // WARNING - NULL used in arithmetic + i != NULL; // { dg-warning "" } NULL used in arithmetic + NULL != z; // { dg-warning "" } NULL used in arithmetic k != NULL; // No warning: decay conversion NULL != a; // Likewise. - -NULL; // WARNING - converting NULL to non-pointer type - +NULL; // WARNING - converting NULL to non-pointer type - ~NULL; // WARNING - converting NULL to non-pointer type - a[NULL] = 3; // WARNING - converting NULL to non-pointer-type - i = NULL; // WARNING - converting NULL to non-pointer type - z = NULL; // WARNING - converting NULL to non-pointer type - k(NULL); // WARNING - converting NULL to int - g(NULL); // WARNING - converting NULL to int - h<NULL>(); // WARNING - NULL bound to integer template parameter - l(NULL); // WARNING - converting NULL to int + -NULL; // { dg-warning "" } converting NULL to non-pointer type + +NULL; // { dg-warning "" } converting NULL to non-pointer type + ~NULL; // { dg-warning "" } converting NULL to non-pointer type + a[NULL] = 3; // { dg-warning "" } converting NULL to non-pointer-type + i = NULL; // { dg-warning "" } converting NULL to non-pointer type + z = NULL; // { dg-warning "" } converting NULL to non-pointer type + k(NULL); // { dg-warning "" } converting NULL to int + g(NULL); // { dg-warning "" } converting NULL to int + h<NULL>(); // { dg-warning "" } NULL bound to integer template parameter + l(NULL); // { dg-warning "" } converting NULL to int NULL && NULL; // No warning: converting NULL to bool is OK } diff --git a/gcc/testsuite/g++.old-deja/g++.other/null2.C b/gcc/testsuite/g++.old-deja/g++.other/null2.C index d7d2c8f2..3c8c50a 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/null2.C +++ b/gcc/testsuite/g++.old-deja/g++.other/null2.C @@ -1,3 +1,4 @@ +// { dg-do run } // Based on a testcase by Eric Dumazet <Eric.Dumazet@COSMOSBAY.COM> extern "C" void abort (); diff --git a/gcc/testsuite/g++.old-deja/g++.other/null3.C b/gcc/testsuite/g++.old-deja/g++.other/null3.C index aef456e..6228caa 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/null3.C +++ b/gcc/testsuite/g++.old-deja/g++.other/null3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } void x() { diff --git a/gcc/testsuite/g++.old-deja/g++.other/op1.C b/gcc/testsuite/g++.old-deja/g++.other/op1.C index cf36886..61af8e1 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/op1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/op1.C @@ -1,6 +1,6 @@ -// Build don't link: +// { dg-do assemble } // Origin: Mark Mitchell <mark@codesourcery.com> struct S { - bool operator! (int, ...); // ERROR - + bool operator! (int, ...); // { dg-error "" } }; diff --git a/gcc/testsuite/g++.old-deja/g++.other/op2.C b/gcc/testsuite/g++.old-deja/g++.other/op2.C index 4e5528f..52f3902 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/op2.C +++ b/gcc/testsuite/g++.old-deja/g++.other/op2.C @@ -1,3 +1,4 @@ +// { dg-do run } // Copyright (C) 2000, 2001 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 28 Nov 2000 <nathan@codesourcery.com> diff --git a/gcc/testsuite/g++.old-deja/g++.other/op3.C b/gcc/testsuite/g++.old-deja/g++.other/op3.C index 08833c4..33f0af6 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/op3.C +++ b/gcc/testsuite/g++.old-deja/g++.other/op3.C @@ -1,3 +1,4 @@ +// { dg-do run } // Copyright (C) 2000, 2001 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 28 Nov 2000 <nathan@codesourcery.com> diff --git a/gcc/testsuite/g++.old-deja/g++.other/optimize1.C b/gcc/testsuite/g++.old-deja/g++.other/optimize1.C index bff78dc..b4707c5 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/optimize1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/optimize1.C @@ -1,4 +1,5 @@ -// Special g++ Options: -O2 +// { dg-do run } +// { dg-options "-O2" } // // Copyright (C) 2001 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 18 May 2001 <nathan@codesourcery.com> diff --git a/gcc/testsuite/g++.old-deja/g++.other/optimize2.C b/gcc/testsuite/g++.old-deja/g++.other/optimize2.C index 8a62b32..b34eae0 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/optimize2.C +++ b/gcc/testsuite/g++.old-deja/g++.other/optimize2.C @@ -1,4 +1,5 @@ -// Special g++ Options: -O2 +// { dg-do run } +// { dg-options "-O2" } // // Copyright (C) 2001 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 26 May 2001 <nathan@codesourcery.com> diff --git a/gcc/testsuite/g++.old-deja/g++.other/optimize3.C b/gcc/testsuite/g++.old-deja/g++.other/optimize3.C index 737aabb..3ec4384 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/optimize3.C +++ b/gcc/testsuite/g++.old-deja/g++.other/optimize3.C @@ -1,4 +1,5 @@ -// Special g++ Options: -O2 +// { dg-do run } +// { dg-options "-O2" } // // Copyright (C) 2001 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 29 May 2001 <nathan@codesourcery.com> diff --git a/gcc/testsuite/g++.old-deja/g++.other/optimize4.C b/gcc/testsuite/g++.old-deja/g++.other/optimize4.C index 7082e2c..f1345e6 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/optimize4.C +++ b/gcc/testsuite/g++.old-deja/g++.other/optimize4.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // // Copyright (C) 2001 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 24 Jul 2001 <nathan@codesourcery.com> diff --git a/gcc/testsuite/g++.old-deja/g++.other/overcnv1.C b/gcc/testsuite/g++.old-deja/g++.other/overcnv1.C index 05941df..a161e9a 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/overcnv1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/overcnv1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } class A { public: diff --git a/gcc/testsuite/g++.old-deja/g++.other/overcnv2.C b/gcc/testsuite/g++.old-deja/g++.other/overcnv2.C index f8ef3d3..ab877d1 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/overcnv2.C +++ b/gcc/testsuite/g++.old-deja/g++.other/overcnv2.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // Test that we resolve this case as mandated by the standard, but also // warn about it. We choose op char* not because it is a member of B -- // the standard says that all conversion ops are treated as coming from @@ -14,7 +15,7 @@ struct B : public A { int main() { B b; - if ((const char *)b != 0) // WARNING - surprising overload resolution + if ((const char *)b != 0) // { dg-warning "" } surprising overload resolution return 1; if ((const char *)(const B)b == 0) return 2; diff --git a/gcc/testsuite/g++.old-deja/g++.other/overload1.C b/gcc/testsuite/g++.old-deja/g++.other/overload1.C index 59191d5..8a833aa 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/overload1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/overload1.C @@ -1,3 +1,4 @@ +// { dg-do run } struct A { A operator+ (int) const { return *this; } }; diff --git a/gcc/testsuite/g++.old-deja/g++.other/overload10.C b/gcc/testsuite/g++.old-deja/g++.other/overload10.C index 50ae8a9..f465279 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/overload10.C +++ b/gcc/testsuite/g++.old-deja/g++.other/overload10.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Jason Merrill <jason@cygnus.com> const char *pc; diff --git a/gcc/testsuite/g++.old-deja/g++.other/overload11.C b/gcc/testsuite/g++.old-deja/g++.other/overload11.C index fdd83ae..17b70d40 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/overload11.C +++ b/gcc/testsuite/g++.old-deja/g++.other/overload11.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 1999 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 5 Sep 1999 <nathan@acm.org> @@ -20,10 +20,9 @@ // (rather inconsistently), but subsequent changes broke the warning. Make // sure that doesn't happen again. -// excess errors test - XFAIL -void ovl (int); // ERROR - candidate -void ovl (float); // ERROR - candidate +void ovl (int); // { dg-error "" } candidate +void ovl (float); // { dg-error "" } candidate void fn (int); void fna (int); @@ -33,16 +32,16 @@ int main (int argc, char **argv) void (*vptr) (); (ovl) (1); // ok - (&ovl) (1); // ERROR - not suitable for overload resolution - (ovl) (); // ERROR - no matching candidates - (&ovl) (); // ERROR - not suitable for overload resolution + (&ovl) (1); // { dg-error "" } not suitable for overload resolution + (ovl) (); // { dg-error "" } no matching candidates + (&ovl) (); // { dg-error "" } not suitable for overload resolution // 13.3.1.1 indicates that the following are errors -- the primary expression // is not the name of a function. - (0, ovl) (1); // ERROR - not suitable for overload resolution - (0, &ovl) (1); // ERROR - not suitable for overload resolution - (argc ? ovl : ovl) (1); // ERROR - not suitable for overload resolution - (argc ? &ovl : &ovl) (1); // ERROR - not suitable for overload resolution + (0, ovl) (1); // { dg-error "" } not suitable for overload resolution + (0, &ovl) (1); // { dg-error "" } not suitable for overload resolution + (argc ? ovl : ovl) (1); // { dg-error "" } not suitable for overload resolution + (argc ? &ovl : &ovl) (1); // { dg-error "" } not suitable for overload resolution (fn) (1); // ok (&fn) (1); // ok (no overload resolution) @@ -54,17 +53,17 @@ int main (int argc, char **argv) ptr = (ovl); // ok ptr = (&ovl); // ok // 13.4 indicates these are ok. - ptr = (0, ovl); // ok - ptr = (0, &ovl); // ok - ptr = (argc ? ovl : ovl); // ok - ptr = (argc ? &ovl : &ovl);// ok + ptr = (0, ovl); // ok { dg-bogus "" "" { xfail *-*-* } } + ptr = (0, &ovl); // ok { dg-bogus "" "" { xfail *-*-* } } + ptr = (argc ? ovl : ovl); // ok { dg-bogus "" "" { xfail *-*-* } } + ptr = (argc ? &ovl : &ovl);// ok { dg-bogus "" "" { xfail *-*-* } } - vptr = (ovl); // ERROR - no matching candidates - vptr = (&ovl); // ERROR - no matching candidates - vptr = (0, ovl); // ERROR - no matching candidates - vptr = (0, &ovl); // ERROR - no matching candidates - vptr = (argc ? ovl : ovl); // ERROR - no matching candidates - vptr = (argc ? &ovl : &ovl);// ERROR - no matching candidates + vptr = (ovl); // { dg-error "" } no matching candidates + vptr = (&ovl); // { dg-error "" } no matching candidates + vptr = (0, ovl); // { dg-error "" } no matching candidates + vptr = (0, &ovl); // { dg-error "" } no matching candidates + vptr = (argc ? ovl : ovl); // { dg-error "" } no matching candidates + vptr = (argc ? &ovl : &ovl);// { dg-error "" } no matching candidates ptr = (fn); ptr = (&fn); @@ -73,21 +72,21 @@ int main (int argc, char **argv) ptr = (argc ? fna : fn); ptr = (argc ? &fna : &fn); - f; // WARNING - not a call - ovl; // ERROR - not suitable for overload - &ovl; // ERROR - not suitable for overload + f; // { dg-warning "" } not a call + ovl; // { dg-error "" } not suitable for overload + &ovl; // { dg-error "" } not suitable for overload (void)f; // ok - (void)ovl; // ERROR - not suitable for overload - (void)&ovl; // ERROR - not suitable for overload + (void)ovl; // { dg-error "" } not suitable for overload + (void)&ovl; // { dg-error "" } not suitable for overload static_cast<void>(f); // ok - static_cast<void>(ovl); // ERROR - not suitable for overload - static_cast<void>(&ovl); // ERROR - not suitable for overload - ((void)1, f); // WARNING - not a call XFAIL - ((void)1, ovl); // ERROR - not suitable for overload - ((void)1, &ovl); // ERROR - not suitable for overload + static_cast<void>(ovl); // { dg-error "" } not suitable for overload + static_cast<void>(&ovl); // { dg-error "" } not suitable for overload + ((void)1, f); // { dg-warning "" "" { xfail *-*-* } } not a call + ((void)1, ovl); // { dg-error "" } not suitable for overload + ((void)1, &ovl); // { dg-error "" } not suitable for overload (void)((void)1, f); // ok - (void)((void)1, ovl); // ERROR - not suitable for overload - (void)((void)1, &ovl); // ERROR - not suitable for overload + (void)((void)1, ovl); // { dg-error "" } not suitable for overload + (void)((void)1, &ovl); // { dg-error "" } not suitable for overload return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.other/overload12.C b/gcc/testsuite/g++.old-deja/g++.other/overload12.C index 7e546da..2e37f07 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/overload12.C +++ b/gcc/testsuite/g++.old-deja/g++.other/overload12.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Neil Booth <neilb@earthling.net> from bug #27. struct A{}; diff --git a/gcc/testsuite/g++.old-deja/g++.other/overload13.C b/gcc/testsuite/g++.old-deja/g++.other/overload13.C index d6728c7..54ab404 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/overload13.C +++ b/gcc/testsuite/g++.old-deja/g++.other/overload13.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Nathan Sidwell <nathan@codesourcery.com> struct A { diff --git a/gcc/testsuite/g++.old-deja/g++.other/overload14.C b/gcc/testsuite/g++.old-deja/g++.other/overload14.C index 6ef73a6..28d5f47 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/overload14.C +++ b/gcc/testsuite/g++.old-deja/g++.other/overload14.C @@ -1,3 +1,4 @@ +// { dg-do run } extern "C" void abort(); struct A { diff --git a/gcc/testsuite/g++.old-deja/g++.other/overload2.C b/gcc/testsuite/g++.old-deja/g++.other/overload2.C index 598f71c..88fe0a2 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/overload2.C +++ b/gcc/testsuite/g++.old-deja/g++.other/overload2.C @@ -1,4 +1,4 @@ -// Build don't run: +// { dg-do link } template <class T> class ConstArray { diff --git a/gcc/testsuite/g++.old-deja/g++.other/overload3.C b/gcc/testsuite/g++.old-deja/g++.other/overload3.C index fc1d5c0..cf5ceeb 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/overload3.C +++ b/gcc/testsuite/g++.old-deja/g++.other/overload3.C @@ -1,4 +1,4 @@ -// Build don't run: +// { dg-do link } void f(const int *); void f(int *) {} diff --git a/gcc/testsuite/g++.old-deja/g++.other/overload4.C b/gcc/testsuite/g++.old-deja/g++.other/overload4.C index 2247853..a81fd2d 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/overload4.C +++ b/gcc/testsuite/g++.old-deja/g++.other/overload4.C @@ -1,4 +1,4 @@ -// Build don't run: +// { dg-do link } void f(int* const volatile * const * const*); void f(int* const * const * const*) {} diff --git a/gcc/testsuite/g++.old-deja/g++.other/overload5.C b/gcc/testsuite/g++.old-deja/g++.other/overload5.C index 5f5e11f..9298767 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/overload5.C +++ b/gcc/testsuite/g++.old-deja/g++.other/overload5.C @@ -1,4 +1,4 @@ -// Build don't run: +// { dg-do link } struct S {}; diff --git a/gcc/testsuite/g++.old-deja/g++.other/overload6.C b/gcc/testsuite/g++.old-deja/g++.other/overload6.C index fae26c3..fda2283 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/overload6.C +++ b/gcc/testsuite/g++.old-deja/g++.other/overload6.C @@ -1,3 +1,4 @@ +// { dg-do run } extern "C" void abort(); struct S1 diff --git a/gcc/testsuite/g++.old-deja/g++.other/overload7.C b/gcc/testsuite/g++.old-deja/g++.other/overload7.C index 57bec8b..c028d5e 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/overload7.C +++ b/gcc/testsuite/g++.old-deja/g++.other/overload7.C @@ -1,3 +1,4 @@ +// { dg-do run } // Check that object call works when there are multiple conversion ops // returning the same type. diff --git a/gcc/testsuite/g++.old-deja/g++.other/overload8.C b/gcc/testsuite/g++.old-deja/g++.other/overload8.C index d2c1483..4615bd8 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/overload8.C +++ b/gcc/testsuite/g++.old-deja/g++.other/overload8.C @@ -1,3 +1,4 @@ +// { dg-do run } class a { public: int f() { return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.other/overload9.C b/gcc/testsuite/g++.old-deja/g++.other/overload9.C index 521f4bd..93491fa 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/overload9.C +++ b/gcc/testsuite/g++.old-deja/g++.other/overload9.C @@ -1,3 +1,4 @@ +// { dg-do run } struct T { ~T() {}; }; int g () diff --git a/gcc/testsuite/g++.old-deja/g++.other/override1.C b/gcc/testsuite/g++.old-deja/g++.other/override1.C index c7f3a4c..62d55a7 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/override1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/override1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Frank Pilhofer <fp@fpx.de> struct A { diff --git a/gcc/testsuite/g++.old-deja/g++.other/override2.C b/gcc/testsuite/g++.old-deja/g++.other/override2.C index 6466b7d..01ff84c 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/override2.C +++ b/gcc/testsuite/g++.old-deja/g++.other/override2.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // Copyright (C) 2001 Free Software Foundation, Inc. // Contributed by Jason Merrill 14 Jun 2001 <jason@redhat.com> @@ -6,4 +7,4 @@ struct A { virtual void f (); }; struct B1: virtual A { virtual void f (); }; struct B2: virtual A { virtual void f (); }; -struct C: public B1, public B2 {}; // ERROR - no final overrider +struct C: public B1, public B2 {}; // { dg-error "" } no final overrider diff --git a/gcc/testsuite/g++.old-deja/g++.other/parse1.C b/gcc/testsuite/g++.old-deja/g++.other/parse1.C index d817512..8c46f7f 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/parse1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/parse1.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // Test that we save declspecs before a class defn properly. -// Build don't link: static volatile union { void f() { } diff --git a/gcc/testsuite/g++.old-deja/g++.other/parse2.C b/gcc/testsuite/g++.old-deja/g++.other/parse2.C index 6ecc6e5..330b05f 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/parse2.C +++ b/gcc/testsuite/g++.old-deja/g++.other/parse2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 24 Nov 2000 <nathan@codesourcery.com> @@ -7,5 +7,5 @@ struct X { - bool operator (const X &) const; // ERROR - parse error + bool operator (const X &) const; // { dg-error "" } parse error }; diff --git a/gcc/testsuite/g++.old-deja/g++.other/perf1.C b/gcc/testsuite/g++.old-deja/g++.other/perf1.C index 3f89811..d755427 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/perf1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/perf1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Test of severe performance regression from 2.95. This code generates // a heavily self-referential tree which caused the inliner to take diff --git a/gcc/testsuite/g++.old-deja/g++.other/pmf1.C b/gcc/testsuite/g++.old-deja/g++.other/pmf1.C index e84a39a..685688e 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/pmf1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/pmf1.C @@ -1,3 +1,4 @@ +// { dg-do run } struct foo {}; typedef long unsigned int & (foo::*pmf)(void); void fn (...) {} diff --git a/gcc/testsuite/g++.old-deja/g++.other/pmf2.C b/gcc/testsuite/g++.old-deja/g++.other/pmf2.C index 92935c0..e28a770 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/pmf2.C +++ b/gcc/testsuite/g++.old-deja/g++.other/pmf2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // submitted by David C Binderman <dcb@pncl.co.uk> @@ -14,5 +14,5 @@ S * pf; void f() { - pmf = & pf->f; // ERROR - not a valid pmf expression + pmf = & pf->f; // { dg-error "" } not a valid pmf expression } diff --git a/gcc/testsuite/g++.old-deja/g++.other/pmf3.C b/gcc/testsuite/g++.old-deja/g++.other/pmf3.C index 2378122..695a1c5 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/pmf3.C +++ b/gcc/testsuite/g++.old-deja/g++.other/pmf3.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // Submitted by Nathan Sidwell <nathan@acm.org> // Bug: g++ was crashing after giving errors. @@ -19,6 +20,6 @@ public: Gtk_Base::Gtk_Base() { - connect_to_method(this,&show); // ERROR - invalid pmf expression - connect_to_method(this,&expose); // ERROR - invalid pmf expression + connect_to_method(this,&show); // { dg-error "" } invalid pmf expression + connect_to_method(this,&expose); // { dg-error "" } invalid pmf expression } diff --git a/gcc/testsuite/g++.old-deja/g++.other/pmf4.C b/gcc/testsuite/g++.old-deja/g++.other/pmf4.C index cfe084c7..cefb361 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/pmf4.C +++ b/gcc/testsuite/g++.old-deja/g++.other/pmf4.C @@ -1,3 +1,4 @@ +// { dg-do run } // Bug: g++ doesn't compensate for finding a virtual function in a // non-primary vtable when generating PMFs. // Submitted by Jason Merrill <jason@cygnus.com> diff --git a/gcc/testsuite/g++.old-deja/g++.other/pmf5.C b/gcc/testsuite/g++.old-deja/g++.other/pmf5.C index e3e6a9f..73fceda 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/pmf5.C +++ b/gcc/testsuite/g++.old-deja/g++.other/pmf5.C @@ -1,3 +1,4 @@ +// { dg-do run } // Bug: g++ expanded b->member() multiple times, causing the optimizer to // decide that things weren't related and optimize 'die' into an infinite // loop. diff --git a/gcc/testsuite/g++.old-deja/g++.other/pmf6.C b/gcc/testsuite/g++.old-deja/g++.other/pmf6.C index cb9da30..4dea631 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/pmf6.C +++ b/gcc/testsuite/g++.old-deja/g++.other/pmf6.C @@ -1,3 +1,4 @@ +// { dg-do run } // Test that we only call f once and that pointers to different subobjects // compare as different. diff --git a/gcc/testsuite/g++.old-deja/g++.other/pmf7.C b/gcc/testsuite/g++.old-deja/g++.other/pmf7.C index e33ee2c..1968a79 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/pmf7.C +++ b/gcc/testsuite/g++.old-deja/g++.other/pmf7.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // Test for proper diagnostics on trying to take the address of a non-static // member function. @@ -10,6 +11,6 @@ struct A { int main () { A a; - &a.f; // ERROR - overloaded - &a.g; // ERROR - can't write a pmf like this + &a.f; // { dg-error "" } overloaded + &a.g; // { dg-error "" } can't write a pmf like this } diff --git a/gcc/testsuite/g++.old-deja/g++.other/pod1.C b/gcc/testsuite/g++.old-deja/g++.other/pod1.C index c6faf0d..b708926 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/pod1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/pod1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 2001 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 28 Feb 2001 <nathan@codesourcery.com> diff --git a/gcc/testsuite/g++.old-deja/g++.other/printf1.C b/gcc/testsuite/g++.old-deja/g++.other/printf1.C index 04c4d9f..65fda3f 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/printf1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/printf1.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -Wall +// { dg-do assemble } +// { dg-options "-Wall" } struct a { @@ -9,6 +9,6 @@ struct a int main() { a A; - A.x("%d"); // WARNING - too few arguments for format + A.x("%d"); // { dg-warning "" } too few arguments for format return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.other/ptrmem1.C b/gcc/testsuite/g++.old-deja/g++.other/ptrmem1.C index 1b5d5df..ec73e62 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/ptrmem1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/ptrmem1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } class x { @@ -9,7 +9,7 @@ public: void foo() { x* y; - if (y->is_constant) // ERROR - assuming & + if (y->is_constant) // { dg-error "" } assuming & { } } diff --git a/gcc/testsuite/g++.old-deja/g++.other/ptrmem10.C b/gcc/testsuite/g++.old-deja/g++.other/ptrmem10.C index 21deeb5..f6f97d9 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/ptrmem10.C +++ b/gcc/testsuite/g++.old-deja/g++.other/ptrmem10.C @@ -1,3 +1,4 @@ +// { dg-do run } // Test that we properly convert a constant ptm to bool. class A { }; diff --git a/gcc/testsuite/g++.old-deja/g++.other/ptrmem2.C b/gcc/testsuite/g++.old-deja/g++.other/ptrmem2.C index 8573095..88c3932 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/ptrmem2.C +++ b/gcc/testsuite/g++.old-deja/g++.other/ptrmem2.C @@ -1,3 +1,4 @@ +// { dg-do assemble } class cow { public: void moo (char *); @@ -8,8 +9,8 @@ void f() cow* c; void (cow::*fp0)(char*) = &cow::moo; // OK - void (cow::*fp1)(int) = &cow::moo; // ERROR - conversion - int (cow::*fp2)(char*) = &cow::moo; // ERROR - conversion - int (cow::*fp3)(char*, void*) = fp2; // ERROR - conversion + void (cow::*fp1)(int) = &cow::moo; // { dg-error "" } conversion + int (cow::*fp2)(char*) = &cow::moo; // { dg-error "" } conversion + int (cow::*fp3)(char*, void*) = fp2; // { dg-error "" } conversion int (cow::*fp4)(double) = (int (cow::*)(double)) fp2; // OK } diff --git a/gcc/testsuite/g++.old-deja/g++.other/ptrmem3.C b/gcc/testsuite/g++.old-deja/g++.other/ptrmem3.C index 3f6a2af..09ae9db 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/ptrmem3.C +++ b/gcc/testsuite/g++.old-deja/g++.other/ptrmem3.C @@ -1,7 +1,7 @@ -// Build don't link: +// { dg-do assemble } class c { void (c::*x)(); public: - void f() { this->x(); } // ERROR - pointer-to-member + void f() { this->x(); } // { dg-error "" } pointer-to-member }; diff --git a/gcc/testsuite/g++.old-deja/g++.other/ptrmem4.C b/gcc/testsuite/g++.old-deja/g++.other/ptrmem4.C index dc378b2..6df10a9 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/ptrmem4.C +++ b/gcc/testsuite/g++.old-deja/g++.other/ptrmem4.C @@ -1,3 +1,4 @@ +// { dg-do run } // Test to make sure g++ can handle target types that aren't identical // with pointers to members. diff --git a/gcc/testsuite/g++.old-deja/g++.other/ptrmem5.C b/gcc/testsuite/g++.old-deja/g++.other/ptrmem5.C index 7c38857..e64f84d 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/ptrmem5.C +++ b/gcc/testsuite/g++.old-deja/g++.other/ptrmem5.C @@ -1,6 +1,6 @@ +// { dg-do assemble } // Bug: g++ doesn't see that A is a vbase of C. // Submitted by Jason Merrill <jason@cygnus.com> -// Build don't link: struct A { int i; @@ -12,6 +12,6 @@ struct C: public virtual B { }; void g () { - int C::*p = &A::i; // ERROR - conversion from vbase - void (C::*fp)() = &A::f; // ERROR - conversion from vbase + int C::*p = &A::i; // { dg-error "" } conversion from vbase + void (C::*fp)() = &A::f; // { dg-error "" } conversion from vbase } diff --git a/gcc/testsuite/g++.old-deja/g++.other/ptrmem6.C b/gcc/testsuite/g++.old-deja/g++.other/ptrmem6.C index 7e9ab4e..7e1a992 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/ptrmem6.C +++ b/gcc/testsuite/g++.old-deja/g++.other/ptrmem6.C @@ -1,5 +1,4 @@ -// Build don't link: -// crash test +// { dg-do assemble } // Copyright (c) 2000, 2001 Free Software Foundation. // Distilled from a bug report by Eric Ford <eford@princeton.edu> @@ -12,5 +11,5 @@ void SetInitCond(void) { int i; for(i = 2; i < nPoints; ++i) - y[i] = y[nPoints] .* (x[i]-x[1]) / (x[nPoints]-x[1]); // ERROR - .* + y[i] = y[nPoints] .* (x[i]-x[1]) / (x[nPoints]-x[1]); // { dg-error "" } .* } diff --git a/gcc/testsuite/g++.old-deja/g++.other/ptrmem7.C b/gcc/testsuite/g++.old-deja/g++.other/ptrmem7.C index 188af76..3848854 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/ptrmem7.C +++ b/gcc/testsuite/g++.old-deja/g++.other/ptrmem7.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 14 Aug 2000 <nathan@codesourcery.com> @@ -20,9 +20,9 @@ struct A void A::foo () { int (A::*ptr1) (int) = &A::ns; - int (A::*ptr2) (int) = A::ns; // ERROR - not ptr mem - int (A::*ptr3) (int) = &ns; // ERROR - not ptr mem - int (A::*ptr4) (int) = ns; // ERROR - not ptr mem + 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 (*ptr5) (short) = &A::ns; int (*ptr6) (short) = A::ns; @@ -30,12 +30,12 @@ void A::foo () int (*ptr8) (short) = ns; int (A::*ptr11) (int) = &A::single; - int (A::*ptr12) (int) = A::single; // ERROR - not ptr mem - int (A::*ptr13) (int) = &single; // ERROR - not ptr mem - int (A::*ptr14) (int) = single; // ERROR - not ptr mem + 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::*ptr20) (int) = &(A::ns); // ERROR - not ptr mem - int (A::*ptr21) (int) = &(A::single); // ERROR - not ptr mem + int (A::*ptr20) (int) = &(A::ns); // { dg-error "" } not ptr mem + int (A::*ptr21) (int) = &(A::single); // { dg-error "" } not ptr mem int (*ptr31) (short) = &A::sole; int (*ptr32) (short) = A::sole; diff --git a/gcc/testsuite/g++.old-deja/g++.other/ptrmem8.C b/gcc/testsuite/g++.old-deja/g++.other/ptrmem8.C index f99371a..b7af77a 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/ptrmem8.C +++ b/gcc/testsuite/g++.old-deja/g++.other/ptrmem8.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 22 Nov 2000 <nathan@codesourcery.com> @@ -34,8 +35,8 @@ typedef int foo::*foomPtr; int main () { foofPtr fp = &foo::b; - barfPtr bp = (barfPtr)fp; // WARNING - pointer to member - foofPtr fp2 = (foofPtr)bp; // WARNING - pointer to member + barfPtr bp = (barfPtr)fp; // { dg-warning "" } pointer to member + foofPtr fp2 = (foofPtr)bp; // { dg-warning "" } pointer to member if (fp2 != fp) return 1; @@ -50,8 +51,8 @@ int main () fobj.m = 78; foomPtr fmp = &foo::m; - barmPtr bmp = (barmPtr)fmp; // WARNING - pointer to member - foomPtr fmp2 = (foomPtr)bmp; // WARNING - pointer to member + barmPtr bmp = (barmPtr)fmp; // { dg-warning "" } pointer to member + foomPtr fmp2 = (foomPtr)bmp; // { dg-warning "" } pointer to member bar *bptr = &fobj; if (fmp != fmp2) diff --git a/gcc/testsuite/g++.old-deja/g++.other/ptrmem9.C b/gcc/testsuite/g++.old-deja/g++.other/ptrmem9.C index f50ba22..67d4f28 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/ptrmem9.C +++ b/gcc/testsuite/g++.old-deja/g++.other/ptrmem9.C @@ -1,3 +1,4 @@ +// { dg-do run } // Test that const-correctness is observed when using pointers-to-members. struct A { diff --git a/gcc/testsuite/g++.old-deja/g++.other/qual1.C b/gcc/testsuite/g++.old-deja/g++.other/qual1.C index 13f9bbe..03c3854 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/qual1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/qual1.C @@ -1,6 +1,6 @@ -// Build don't link: +// { dg-do assemble } +// { dg-options "-O" } // Origin: Benjamin Pflugmann <philemon@spin.de> -// Special g++ Options: -O // DR 295 allows qualification via typedef @@ -11,8 +11,8 @@ class public: func_type *Function; // The following is DR 295 dependent - const func_type* function(void) { return Function; } // ERROR - constifying - volatile func_type* functionv(void); // ERROR - qualifier + const func_type* function(void) { return Function; } // { dg-error "" } constifying + volatile func_type* functionv(void); // { dg-error "" } qualifier } action; void work(const char *source) diff --git a/gcc/testsuite/g++.old-deja/g++.other/realloc.C b/gcc/testsuite/g++.old-deja/g++.other/realloc.C index 1e1c6db..3e50aa8 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/realloc.C +++ b/gcc/testsuite/g++.old-deja/g++.other/realloc.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } extern "C" void realloc(); diff --git a/gcc/testsuite/g++.old-deja/g++.other/redecl1.C b/gcc/testsuite/g++.old-deja/g++.other/redecl1.C index d08e5aa..bd6382e 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/redecl1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/redecl1.C @@ -1,6 +1,6 @@ -//Build don't link: +// { dg-do assemble } struct X{ void i(); - void i(int); // ERROR - - int i; // ERROR - conflict + void i(int); // { dg-error "" } + int i; // { dg-error "" } conflict }; diff --git a/gcc/testsuite/g++.old-deja/g++.other/redecl2.C b/gcc/testsuite/g++.old-deja/g++.other/redecl2.C index 7dcdeb4..70f703b 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/redecl2.C +++ b/gcc/testsuite/g++.old-deja/g++.other/redecl2.C @@ -1,9 +1,9 @@ -// Build don't link: +// { dg-do assemble } struct S { S(int); - S(int); // ERROR - already declared + S(int); // { dg-error "" } already declared ~S(); - ~S(); // ERROR - already declared + ~S(); // { dg-error "" } already declared }; diff --git a/gcc/testsuite/g++.old-deja/g++.other/redecl3.C b/gcc/testsuite/g++.old-deja/g++.other/redecl3.C index d2a5fed..96940d5 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/redecl3.C +++ b/gcc/testsuite/g++.old-deja/g++.other/redecl3.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // Bug: g++ thought this was a redeclaration of a local variable. -// Build don't link: int i; int main () diff --git a/gcc/testsuite/g++.old-deja/g++.other/redecl4.C b/gcc/testsuite/g++.old-deja/g++.other/redecl4.C index 958cfdc..9b7f8c5 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/redecl4.C +++ b/gcc/testsuite/g++.old-deja/g++.other/redecl4.C @@ -1,6 +1,7 @@ +// { dg-do assemble } int main() { struct A { void f(); - void f(); // ERROR - already declared + void f(); // { dg-error "" } already declared }; } diff --git a/gcc/testsuite/g++.old-deja/g++.other/ref1.C b/gcc/testsuite/g++.old-deja/g++.other/ref1.C index b6d82aa2..df4ff47 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/ref1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/ref1.C @@ -1,10 +1,10 @@ -// Build don't link: +// { dg-do assemble } int f(); void g() { const int& i = f(); // OK - int& j = f(); // ERROR - initialization of non-const reference - const volatile int& k = f(); // ERROR - initialization of volatile ref + int& j = f(); // { dg-error "" } initialization of non-const reference + const volatile int& k = f(); // { dg-error "" } initialization of volatile ref } diff --git a/gcc/testsuite/g++.old-deja/g++.other/ref2.C b/gcc/testsuite/g++.old-deja/g++.other/ref2.C index 5acbcc4..45c0b76 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/ref2.C +++ b/gcc/testsuite/g++.old-deja/g++.other/ref2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Jason Merrill <jason@cygnus.com> struct A { diff --git a/gcc/testsuite/g++.old-deja/g++.other/ref3.C b/gcc/testsuite/g++.old-deja/g++.other/ref3.C index 6d615d4..3a5853c 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/ref3.C +++ b/gcc/testsuite/g++.old-deja/g++.other/ref3.C @@ -1,3 +1,4 @@ +// { dg-do run } // Origin: Mark Mitchell <mark@codesourcery.com> struct B1 diff --git a/gcc/testsuite/g++.old-deja/g++.other/ref4.C b/gcc/testsuite/g++.old-deja/g++.other/ref4.C index c3535d0..5eb97b9 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/ref4.C +++ b/gcc/testsuite/g++.old-deja/g++.other/ref4.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 2001 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 27 Feb 2001 <nathan@codesourcery.com> diff --git a/gcc/testsuite/g++.old-deja/g++.other/refinit1.C b/gcc/testsuite/g++.old-deja/g++.other/refinit1.C index 2f01e16..e120078 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/refinit1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/refinit1.C @@ -1,6 +1,6 @@ +// { dg-do assemble } // Test that we don't allow multiple user-defined conversions in reference // initialization. -// Build don't link: struct B { }; @@ -14,4 +14,4 @@ struct C { C c; -const A& ref (c); // ERROR - requires two UDCs +const A& ref (c); // { dg-error "" } requires two UDCs diff --git a/gcc/testsuite/g++.old-deja/g++.other/refinit2.C b/gcc/testsuite/g++.old-deja/g++.other/refinit2.C index 6b0211c..ab84542 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/refinit2.C +++ b/gcc/testsuite/g++.old-deja/g++.other/refinit2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // // Copyright (C) 2000, 2002 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 10 Aug 2000 <nathan@codesourcery.com> @@ -9,10 +9,10 @@ namespace A { template <class T> void f(T) {} } -void (* &h)(int) = A::f<int>; // ERROR - rvalue to non-const -void (*const volatile &i)(int) = A::f<int>; // ERROR - rvalue to volatile +void (* &h)(int) = A::f<int>; // { dg-error "" } rvalue to non-const +void (*const volatile &i)(int) = A::f<int>; // { dg-error "" } rvalue to volatile void (*const &j)(int) = A::f<int>; -int &k = 1; // ERROR - rvalue to non-const -int &const volatile l = 1; // ERROR - rvalue to volatile +int &k = 1; // { dg-error "" } rvalue to non-const +int &const volatile l = 1; // { dg-error "" } rvalue to volatile int const &m = 1; diff --git a/gcc/testsuite/g++.old-deja/g++.other/regstack.C b/gcc/testsuite/g++.old-deja/g++.other/regstack.C index ea72221..5be2fcd 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/regstack.C +++ b/gcc/testsuite/g++.old-deja/g++.other/regstack.C @@ -1,5 +1,5 @@ -// Special g++ Options: -O2 -// Skip if not target: i?86-*-* +// { dg-do run { target i?86-*-* } } +// { dg-options "-O2" } inline double foo (double x) { diff --git a/gcc/testsuite/g++.old-deja/g++.other/reload1.C b/gcc/testsuite/g++.old-deja/g++.other/reload1.C index 4ad0d68..6358955 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/reload1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/reload1.C @@ -1,3 +1,4 @@ +// { dg-do run } extern "C" void abort (); struct A { diff --git a/gcc/testsuite/g++.old-deja/g++.other/return1.C b/gcc/testsuite/g++.old-deja/g++.other/return1.C index 42a7e47..61bc3b1 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/return1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/return1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Special g++ Option: // Origin: holmen@mail.nu @@ -14,5 +14,5 @@ struct D { C* D::g() { int i = 0; while (i < 1 && a[i].f() != 1) {} - return undefined_variable; // ERROR - + return undefined_variable; // { dg-error "" } } diff --git a/gcc/testsuite/g++.old-deja/g++.other/rtti1.C b/gcc/testsuite/g++.old-deja/g++.other/rtti1.C index 603c7d2..a49695b 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/rtti1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/rtti1.C @@ -1,5 +1,6 @@ +// { dg-do run } +// { dg-options "-frtti" } // test of rtti of non-class types -// Special g++ Options: -frtti #include <typeinfo> diff --git a/gcc/testsuite/g++.old-deja/g++.other/rtti2.C b/gcc/testsuite/g++.old-deja/g++.other/rtti2.C index a7a218b..4cc1319 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/rtti2.C +++ b/gcc/testsuite/g++.old-deja/g++.other/rtti2.C @@ -1,5 +1,6 @@ +// { dg-do run } +// { dg-options "-frtti" } // test of rtti of single inheritance and multiple inheritance classes -// Special g++ Options: -frtti #include <typeinfo> diff --git a/gcc/testsuite/g++.old-deja/g++.other/rtti3.C b/gcc/testsuite/g++.old-deja/g++.other/rtti3.C index 70f227b..760cc75 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/rtti3.C +++ b/gcc/testsuite/g++.old-deja/g++.other/rtti3.C @@ -1,6 +1,7 @@ +// { dg-do run } +// { dg-options "-frtti" } // test of rtti of single inheritance and multiple inheritance with // virtual functions -// Special g++ Options: -frtti #include <typeinfo> diff --git a/gcc/testsuite/g++.old-deja/g++.other/rtti4.C b/gcc/testsuite/g++.old-deja/g++.other/rtti4.C index 571ed68..b9cb672 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/rtti4.C +++ b/gcc/testsuite/g++.old-deja/g++.other/rtti4.C @@ -1,6 +1,7 @@ +// { dg-do run } +// { dg-options "-frtti -w" } // test of rtti of single inheritance and multiple inheritance with // virtual inheritance -// Special g++ Options: -frtti -w #include <typeinfo> diff --git a/gcc/testsuite/g++.old-deja/g++.other/rtti5.C b/gcc/testsuite/g++.old-deja/g++.other/rtti5.C index 38a5146..a8ab885 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/rtti5.C +++ b/gcc/testsuite/g++.old-deja/g++.other/rtti5.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -fno-rtti +// { dg-do assemble } +// { dg-options "-fno-rtti" } // Copyright (C) 1999 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 9 Apr 1999 <nathan@acm.org> @@ -10,5 +10,5 @@ int main(void) { int i; - typeid(i); // ERROR - rtti disabled + typeid(i); // { dg-error "" } rtti disabled } diff --git a/gcc/testsuite/g++.old-deja/g++.other/rttid2.C b/gcc/testsuite/g++.old-deja/g++.other/rttid2.C index 50c1867..0674650 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/rttid2.C +++ b/gcc/testsuite/g++.old-deja/g++.other/rttid2.C @@ -1,6 +1,7 @@ +// { dg-do run } +// { dg-options "-frtti" } // test of rtti of single inheritance and multiple inheritance classes // dynamic casting -// Special g++ Options: -frtti #include <typeinfo> diff --git a/gcc/testsuite/g++.old-deja/g++.other/rttid3.C b/gcc/testsuite/g++.old-deja/g++.other/rttid3.C index 80162aa..0e3b974 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/rttid3.C +++ b/gcc/testsuite/g++.old-deja/g++.other/rttid3.C @@ -1,7 +1,8 @@ +// { dg-do run } +// { dg-options "-frtti" } // test of rtti of single inheritance and multiple inheritance with // virtual functions // dynamic casting -// Special g++ Options: -frtti #include <typeinfo> diff --git a/gcc/testsuite/g++.old-deja/g++.other/rttid4.C b/gcc/testsuite/g++.old-deja/g++.other/rttid4.C index 0b72bae..91c4262 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/rttid4.C +++ b/gcc/testsuite/g++.old-deja/g++.other/rttid4.C @@ -1,7 +1,8 @@ +// { dg-do run } +// { dg-options "-w" } // test of rtti of single inheritance and multiple inheritance with // virtual inheritance // dynamic casting -// Special g++ Options: -w #include <typeinfo> diff --git a/gcc/testsuite/g++.old-deja/g++.other/sc1.C b/gcc/testsuite/g++.old-deja/g++.other/sc1.C index 8d99ed0..054a57a 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/sc1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/sc1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Mark Mitchell <mark@codesourcery.com> void f() { @@ -6,5 +6,5 @@ void f() { const int *c = 0; static_cast <const int *>(i); - static_cast <int *>(c); // ERROR - casts away constness + static_cast <int *>(c); // { dg-error "" } casts away constness } diff --git a/gcc/testsuite/g++.old-deja/g++.other/scope1.C b/gcc/testsuite/g++.old-deja/g++.other/scope1.C index 8b6354c..0b349f2 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/scope1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/scope1.C @@ -1,3 +1,4 @@ +// { dg-do run } // Testcase for proper scoping of local externs. int x = 1; diff --git a/gcc/testsuite/g++.old-deja/g++.other/shadow1.C b/gcc/testsuite/g++.old-deja/g++.other/shadow1.C index 1691ed4..3b67e77 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/shadow1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/shadow1.C @@ -1,6 +1,6 @@ +// { dg-do assemble } // Bug: g++ thinks that the i in g() shadows the parm from f() // Contributed by Jason Merrill <jason@cygnus.com> -// Build don't link: void f (int i) { diff --git a/gcc/testsuite/g++.old-deja/g++.other/sibcall1.C b/gcc/testsuite/g++.old-deja/g++.other/sibcall1.C index c6eadaa..7b5a82b 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/sibcall1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/sibcall1.C @@ -1,4 +1,5 @@ -// Special g++ Options: -O2 +// { dg-do run } +// { dg-options "-O2" } #include <iostream> diff --git a/gcc/testsuite/g++.old-deja/g++.other/sibcall2.C b/gcc/testsuite/g++.old-deja/g++.other/sibcall2.C index 0248574..818fa23 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/sibcall2.C +++ b/gcc/testsuite/g++.old-deja/g++.other/sibcall2.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -O2 -foptimize-sibling-calls -fno-exceptions +// { dg-do assemble } +// { dg-options "-O2 -foptimize-sibling-calls -fno-exceptions" } struct X { diff --git a/gcc/testsuite/g++.old-deja/g++.other/signed.C b/gcc/testsuite/g++.old-deja/g++.other/signed.C index 3bdce03..2c95f3d 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/signed.C +++ b/gcc/testsuite/g++.old-deja/g++.other/signed.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 1999 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 24 Mar 1999 <nathan@acm.org> diff --git a/gcc/testsuite/g++.old-deja/g++.other/singleton.C b/gcc/testsuite/g++.old-deja/g++.other/singleton.C index 36d00f9..2a27ca3 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/singleton.C +++ b/gcc/testsuite/g++.old-deja/g++.other/singleton.C @@ -1,3 +1,4 @@ +// { dg-do run } // This tests two things: // 1. there is an annoying warning. // singleton.C:26: warning: `class singleton' only defines private constructors and has no friends diff --git a/gcc/testsuite/g++.old-deja/g++.other/sizeof1.C b/gcc/testsuite/g++.old-deja/g++.other/sizeof1.C index 6b547ae..b774a04 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/sizeof1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/sizeof1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Jason Merrill <jason@cygnus.com> struct X { @@ -8,5 +8,5 @@ struct X { void f(int i) { - i = sizeof(X::f); // ERROR - cannot take sizeof a member function + i = sizeof(X::f); // { dg-error "" } cannot take sizeof a member function } diff --git a/gcc/testsuite/g++.old-deja/g++.other/sizeof2.C b/gcc/testsuite/g++.old-deja/g++.other/sizeof2.C index 1a45fe3..d8ac60dd 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/sizeof2.C +++ b/gcc/testsuite/g++.old-deja/g++.other/sizeof2.C @@ -1,15 +1,15 @@ -// Build don't link: +// { dg-do assemble } // Origin: Mark Mitchell <mark@codesourcery.com> struct S { - int j; // ERROR - non-static data member - int i[2]; // ERROR - non-static data member + int j; // { dg-error "" } non-static data member + int i[2]; // { dg-error "" } non-static data member }; void f () { - sizeof (S::j); // ERROR - used here - sizeof (S::i[0]); // ERROR - used here + sizeof (S::j); // { dg-error "" } used here + sizeof (S::i[0]); // { dg-error "" } used here } diff --git a/gcc/testsuite/g++.old-deja/g++.other/sizeof3.C b/gcc/testsuite/g++.old-deja/g++.other/sizeof3.C index fbdd5c3..b3f74db 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/sizeof3.C +++ b/gcc/testsuite/g++.old-deja/g++.other/sizeof3.C @@ -1,3 +1,4 @@ +// { dg-do run } // Copyright (C) 1999 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 5 Sep 1999 <nathan@acm.org> diff --git a/gcc/testsuite/g++.old-deja/g++.other/sizeof4.C b/gcc/testsuite/g++.old-deja/g++.other/sizeof4.C index 3ebddb6..325d3d0 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/sizeof4.C +++ b/gcc/testsuite/g++.old-deja/g++.other/sizeof4.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 1999 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 5 Sep 1999 <nathan@acm.org> @@ -17,21 +17,21 @@ void fn () {} int main (int argc, char **argv) { - sizeof (s); // ERROR - incomplete - sizeof (0, s); // ERROR - incomplete - sizeof (argc ? s : s); // ERROR - incomplete + sizeof (s); // { dg-error "" } incomplete + sizeof (0, s); // { dg-error "" } incomplete + sizeof (argc ? s : s); // { dg-error "" } incomplete - sizeof (arys); // ERROR - incomplete - sizeof (0, arys); // ERROR - incomplete - sizeof (argc ? arys : arys); // ERROR - incomplete + sizeof (arys); // { dg-error "" } incomplete + sizeof (0, arys); // { dg-error "" } incomplete + sizeof (argc ? arys : arys); // { dg-error "" } incomplete - sizeof (aryt); // ERROR - incomplete - sizeof (0, aryt); // ERROR - incomplete - sizeof (argc ? aryt : aryt); // ERROR - incomplete + sizeof (aryt); // { dg-error "" } incomplete + sizeof (0, aryt); // { dg-error "" } incomplete + sizeof (argc ? aryt : aryt); // { dg-error "" } incomplete - sizeof (fn); // ERROR - cannot take size of function - sizeof (0, fn); // ERROR - cannot take size of function - sizeof (argc ? fn : fn); // ERROR - cannot take size of function + sizeof (fn); // { dg-error "" } cannot take size of function + sizeof (0, fn); // { dg-error "" } cannot take size of function + sizeof (argc ? fn : fn); // { dg-error "" } cannot take size of function sizeof (&fn); // ok sizeof (0, &fn); // ok diff --git a/gcc/testsuite/g++.old-deja/g++.other/sizeof5.C b/gcc/testsuite/g++.old-deja/g++.other/sizeof5.C index 8b56053..ae07620 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/sizeof5.C +++ b/gcc/testsuite/g++.old-deja/g++.other/sizeof5.C @@ -1,17 +1,16 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 23 Feb 2000 <nathan@codesourcery.com> // Derived from a bug report by Marko Maekelae <Marko.Makela@HUT.FI> -// crash test struct A; void foo () { - sizeof ( void ()); // ERROR - ISO forbids + sizeof ( void ()); // { dg-error "" } ISO forbids sizeof ( void (A::*) ()); sizeof ( void (A::*) () const); - sizeof (void (*) () const); // ERROR - invalid quals - sizeof ( void () const); // ERROR - ISO forbids, ERROR - invalid quals + sizeof (void (*) () const); // { dg-error "" } invalid quals + sizeof ( void () const); // { dg-error "" } ISO forbids, ERROR - invalid quals } diff --git a/gcc/testsuite/g++.old-deja/g++.other/static1.C b/gcc/testsuite/g++.old-deja/g++.other/static1.C index c18e55c..2b04252 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/static1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/static1.C @@ -1,3 +1,4 @@ +// { dg-do assemble } extern "C" void abort(); struct S @@ -5,4 +6,4 @@ struct S static const int i = 3; }; -const int S::i = 2; // ERROR - duplicate initialization +const int S::i = 2; // { dg-error "" } duplicate initialization diff --git a/gcc/testsuite/g++.old-deja/g++.other/static10.C b/gcc/testsuite/g++.old-deja/g++.other/static10.C index 432e07b..16b1524 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/static10.C +++ b/gcc/testsuite/g++.old-deja/g++.other/static10.C @@ -1,6 +1,6 @@ -// Build don't link: +// { dg-do assemble } +// { dg-options "-w" } // Origin: Ulrich Drepper <drepper@cygnus.com> -// Special g++ Options: -w struct st { diff --git a/gcc/testsuite/g++.old-deja/g++.other/static11.C b/gcc/testsuite/g++.old-deja/g++.other/static11.C index f993fd3..a3c5bc0 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/static11.C +++ b/gcc/testsuite/g++.old-deja/g++.other/static11.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Raja R Harinath <harinath@cs.umn.edu> enum ReservedName { diff --git a/gcc/testsuite/g++.old-deja/g++.other/static12.C b/gcc/testsuite/g++.old-deja/g++.other/static12.C index 5b302d4..7c39489 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/static12.C +++ b/gcc/testsuite/g++.old-deja/g++.other/static12.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Jason Merrill <jason@redhat.com> int main () diff --git a/gcc/testsuite/g++.old-deja/g++.other/static13.C b/gcc/testsuite/g++.old-deja/g++.other/static13.C index 4ebffa6..fa45e8a 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/static13.C +++ b/gcc/testsuite/g++.old-deja/g++.other/static13.C @@ -1,4 +1,4 @@ -// Build don't run: +// { dg-do link } // Origin: scott snyder <snyder@fnal.gov> struct Cleaner diff --git a/gcc/testsuite/g++.old-deja/g++.other/static14.C b/gcc/testsuite/g++.old-deja/g++.other/static14.C index 6df4c4c..32f8b3b 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/static14.C +++ b/gcc/testsuite/g++.old-deja/g++.other/static14.C @@ -1,4 +1,4 @@ -// Build don't run: +// { dg-do link } // Origin: scott snyder <snyder@fnal.gov> struct basic_string diff --git a/gcc/testsuite/g++.old-deja/g++.other/static15.C b/gcc/testsuite/g++.old-deja/g++.other/static15.C index 2c978a4..ecf477f 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/static15.C +++ b/gcc/testsuite/g++.old-deja/g++.other/static15.C @@ -1,3 +1,4 @@ +// { dg-do run } // Origin: Mark Mitchell <mark@codesourcery.com> // Special g++ Option: -fdata-sections diff --git a/gcc/testsuite/g++.old-deja/g++.other/static16.C b/gcc/testsuite/g++.old-deja/g++.other/static16.C index 0fbaea8..6425814 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/static16.C +++ b/gcc/testsuite/g++.old-deja/g++.other/static16.C @@ -1,3 +1,4 @@ +// { dg-do run } // Test that we properly evaluate the object parameter when accessing static // members. diff --git a/gcc/testsuite/g++.old-deja/g++.other/static2.C b/gcc/testsuite/g++.old-deja/g++.other/static2.C index 471448d..b68699c 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/static2.C +++ b/gcc/testsuite/g++.old-deja/g++.other/static2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Based on a test case by Koos Vriezen <koos@polder.ubc.kun.nl> struct foo { diff --git a/gcc/testsuite/g++.old-deja/g++.other/static20.C b/gcc/testsuite/g++.old-deja/g++.other/static20.C index 08db2db..00afd24 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/static20.C +++ b/gcc/testsuite/g++.old-deja/g++.other/static20.C @@ -1,4 +1,4 @@ -// Build don't run: +// { dg-do link } struct foo { foo() {}; diff --git a/gcc/testsuite/g++.old-deja/g++.other/static3.C b/gcc/testsuite/g++.old-deja/g++.other/static3.C index b75771e..efa094d 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/static3.C +++ b/gcc/testsuite/g++.old-deja/g++.other/static3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } class S { diff --git a/gcc/testsuite/g++.old-deja/g++.other/static4.C b/gcc/testsuite/g++.old-deja/g++.other/static4.C index 7021337..2b7b1fa 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/static4.C +++ b/gcc/testsuite/g++.old-deja/g++.other/static4.C @@ -1,5 +1,6 @@ +// { dg-do run } +// { dg-options "-O" } // Origin: Andrew Pollard <andrew@odie.demon.co.uk> -// Special g++ Options: -O struct A { A(int, int); diff --git a/gcc/testsuite/g++.old-deja/g++.other/static5.C b/gcc/testsuite/g++.old-deja/g++.other/static5.C index aedecf2..b4032be 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/static5.C +++ b/gcc/testsuite/g++.old-deja/g++.other/static5.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Mark Mitchell <mark@codesourcery.com> struct S @@ -9,7 +9,7 @@ struct S inline void f() { static S s; - atexit (0); // ERROR - implicit declaration + atexit (0); // { dg-error "" } implicit declaration } diff --git a/gcc/testsuite/g++.old-deja/g++.other/static6.C b/gcc/testsuite/g++.old-deja/g++.other/static6.C index e660d80..1705c5c 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/static6.C +++ b/gcc/testsuite/g++.old-deja/g++.other/static6.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Jason Merrill <jason@cygnus.com> void f (int i) diff --git a/gcc/testsuite/g++.old-deja/g++.other/static7.C b/gcc/testsuite/g++.old-deja/g++.other/static7.C index d710e4f..548485b 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/static7.C +++ b/gcc/testsuite/g++.old-deja/g++.other/static7.C @@ -1,3 +1,4 @@ +// { dg-do run } // Origin: Jason Merrill <jason@cygnus.com> int j = 42; diff --git a/gcc/testsuite/g++.old-deja/g++.other/static9.C b/gcc/testsuite/g++.old-deja/g++.other/static9.C index e1bb50b..c371288 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/static9.C +++ b/gcc/testsuite/g++.old-deja/g++.other/static9.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Ulrich Drepper <drepper@cygnus.com> struct st diff --git a/gcc/testsuite/g++.old-deja/g++.other/std1.C b/gcc/testsuite/g++.old-deja/g++.other/std1.C index 6761404..eacf539 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/std1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/std1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Mark Mitchell <mark@codesourcery.com> extern "C" int memcmp (const void * __s1, diff --git a/gcc/testsuite/g++.old-deja/g++.other/stmtexpr1.C b/gcc/testsuite/g++.old-deja/g++.other/stmtexpr1.C index db73cd7..3623865 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/stmtexpr1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/stmtexpr1.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -O +// { dg-do assemble } +// { dg-options "-O" } // Origin: Thomas Kunert <kunert@physik.tu-dresden.de> #include <ctype.h> diff --git a/gcc/testsuite/g++.old-deja/g++.other/stmtexpr2.C b/gcc/testsuite/g++.old-deja/g++.other/stmtexpr2.C index 3b35fd3..cbe6aab 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/stmtexpr2.C +++ b/gcc/testsuite/g++.old-deja/g++.other/stmtexpr2.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -O2 +// { dg-do assemble } +// { dg-options "-O2" } // Origin: Jakub Jelinek <jakub@redhat.com> void bar(int); diff --git a/gcc/testsuite/g++.old-deja/g++.other/store-expr1.C b/gcc/testsuite/g++.old-deja/g++.other/store-expr1.C index 100de03..5a37666 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/store-expr1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/store-expr1.C @@ -1,5 +1,5 @@ -// Skip if not target: i?86-*-* -// Special g++ Options: -mtune=i686 -O2 -fpic +// { dg-do run { target i?86-*-* } } +// { dg-options "-mtune=i686 -O2 -fpic" } class G {}; struct N { diff --git a/gcc/testsuite/g++.old-deja/g++.other/store-expr2.C b/gcc/testsuite/g++.old-deja/g++.other/store-expr2.C index 011f40c..430a2c6 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/store-expr2.C +++ b/gcc/testsuite/g++.old-deja/g++.other/store-expr2.C @@ -1,5 +1,5 @@ -// Skip if not target: i?86-*-* -// Special g++ Options: -mtune=i686 -O2 +// { dg-do run { target i?86-*-* } } +// { dg-options "-mtune=i686 -O2" } class G {}; struct N { diff --git a/gcc/testsuite/g++.old-deja/g++.other/string1.C b/gcc/testsuite/g++.old-deja/g++.other/string1.C index 425e9bf..503533a 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/string1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/string1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: mrs@wrs.com (Mike Stump) class Wrapper { diff --git a/gcc/testsuite/g++.old-deja/g++.other/string2.C b/gcc/testsuite/g++.old-deja/g++.other/string2.C index 0442094..bf0699a 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/string2.C +++ b/gcc/testsuite/g++.old-deja/g++.other/string2.C @@ -1,3 +1,4 @@ +// { dg-do run } // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 6 Mar 2000 <nathan@codesourcery.com> diff --git a/gcc/testsuite/g++.old-deja/g++.other/struct1.C b/gcc/testsuite/g++.old-deja/g++.other/struct1.C index 4f1c52a..f4fa322 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/struct1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/struct1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 1999 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 3 Jun 1999 <nathan@acm.org> @@ -7,36 +7,36 @@ // politely, but we used to die horribly. class Y -{ // ERROR - previous definition +{ // { dg-error "" } previous definition }; class Y -{ // ERROR - redefinition +{ // { dg-error "" } redefinition }; template<class T> class X -{ // ERROR - previous definition +{ // { dg-error "" } previous definition }; template<class T> class X -{ // ERROR - redefinition +{ // { dg-error "" } redefinition }; template<class T> class X<T *> -{ // ERROR - previous definition +{ // { dg-error "" } previous definition }; template<class T> class X<T *> -{ // ERROR - redefinition +{ // { dg-error "" } redefinition }; template<> class X<int> -{ // ERROR - previous definition +{ // { dg-error "" } previous definition }; template<> class X<int> -{ // ERROR - redefinition +{ // { dg-error "" } redefinition }; template<> class X<int *> -{ // ERROR - previous definition +{ // { dg-error "" } previous definition }; template<> class X<int *> -{ // ERROR - redefinition +{ // { dg-error "" } redefinition }; diff --git a/gcc/testsuite/g++.old-deja/g++.other/syntax1.C b/gcc/testsuite/g++.old-deja/g++.other/syntax1.C index 90419a2..f1d3a86 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/syntax1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/syntax1.C @@ -1,6 +1,6 @@ -// Build don't link: +// { dg-do assemble } +// { dg-options "-fsyntax-only" } // Origin: Mark Mitchell <mark@codesourcery.com> -// Special g++ Options: -fsyntax-only class AAA{ public: diff --git a/gcc/testsuite/g++.old-deja/g++.other/syntax2.C b/gcc/testsuite/g++.old-deja/g++.other/syntax2.C index 5775af0..159f28f 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/syntax2.C +++ b/gcc/testsuite/g++.old-deja/g++.other/syntax2.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -fsyntax-only +// { dg-do assemble } +// { dg-options "-fsyntax-only" } // Origin: Mark Mitchell <mark@codesourcery.com> struct B diff --git a/gcc/testsuite/g++.old-deja/g++.other/syntax3.C b/gcc/testsuite/g++.old-deja/g++.other/syntax3.C index 9869333..5ea7d38 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/syntax3.C +++ b/gcc/testsuite/g++.old-deja/g++.other/syntax3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 22 June 2000 <nathan@codesourcery.com> @@ -17,5 +17,5 @@ class X X(); }; -class X::X () {} // ERROR - parse error +class X::X () {} // { dg-error "" } parse error X::X () {} diff --git a/gcc/testsuite/g++.old-deja/g++.other/syntax4.C b/gcc/testsuite/g++.old-deja/g++.other/syntax4.C index ee8e1a9..d323ff0 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/syntax4.C +++ b/gcc/testsuite/g++.old-deja/g++.other/syntax4.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 22 June 2000 <nathan@codesourcery.com> @@ -22,5 +22,5 @@ class Y { }; class Y::Z {}; -class Y::W () {} // ERROR - parse error +class Y::W () {} // { dg-error "" } parse error Y::W::X () {} diff --git a/gcc/testsuite/g++.old-deja/g++.other/syshdr1.C b/gcc/testsuite/g++.old-deja/g++.other/syshdr1.C index 309bfd7..89a7fbf 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/syshdr1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/syshdr1.C @@ -1,6 +1,6 @@ -// Build don't link: +// { dg-do assemble } +// { dg-options "" } // Origin: Mark Mitchell <mark@codesourcery.com> -// Special g++ Options: # 1 "foo" 3 void f () {} diff --git a/gcc/testsuite/g++.old-deja/g++.other/temporary1.C b/gcc/testsuite/g++.old-deja/g++.other/temporary1.C index ed9798b..b1c8cd6 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/temporary1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/temporary1.C @@ -1,3 +1,4 @@ +// { dg-do run } extern "C" int printf (const char *, ...); int c, d; diff --git a/gcc/testsuite/g++.old-deja/g++.other/thunk1.C b/gcc/testsuite/g++.old-deja/g++.other/thunk1.C index 72ca2ce..35243f5 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/thunk1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/thunk1.C @@ -1,3 +1,4 @@ +// { dg-do run } extern "C" void abort(); int ic; diff --git a/gcc/testsuite/g++.old-deja/g++.other/type.C b/gcc/testsuite/g++.old-deja/g++.other/type.C index a7dcde1..3c36c47 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/type.C +++ b/gcc/testsuite/g++.old-deja/g++.other/type.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } typedef unsigned short ushort; class foo { diff --git a/gcc/testsuite/g++.old-deja/g++.other/typeck1.C b/gcc/testsuite/g++.old-deja/g++.other/typeck1.C index 6dd5fed..574fd7e 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/typeck1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/typeck1.C @@ -1,11 +1,11 @@ -// Build don't link: +// { dg-do assemble } -extern int a[][]; // ERROR - invalid multidimensional array -extern int b[7][]; // ERROR - invalid multidimensional array +extern int a[][]; // { dg-error "" } invalid multidimensional array +extern int b[7][]; // { dg-error "" } invalid multidimensional array extern int c[][7]; // OK -extern int (*i)[]; // ERROR - previous declaration -extern int (*i)[7]; // ERROR - conflicting types for `i' +extern int (*i)[]; // { dg-error "" } previous declaration +extern int (*i)[7]; // { dg-error "" } conflicting types for `i' extern int m[]; extern int m[7]; // OK @@ -13,5 +13,5 @@ extern int m[7]; // OK void f(int (*j)[3]) { extern int (*k)[]; - f(k); // ERROR - passing wrong type + f(k); // { dg-error "" } passing wrong type } diff --git a/gcc/testsuite/g++.old-deja/g++.other/typedef1.C b/gcc/testsuite/g++.old-deja/g++.other/typedef1.C index b9ebac2..38d77e1 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/typedef1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/typedef1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } typedef const struct { int x; @@ -8,6 +8,6 @@ static void foo(Test); static void foo(Test t) { - t.x = 0; // ERROR - assignment of read-only member + t.x = 0; // { dg-error "" } assignment of read-only member return; } diff --git a/gcc/testsuite/g++.old-deja/g++.other/typedef2.C b/gcc/testsuite/g++.old-deja/g++.other/typedef2.C index b12ed13..8c45130 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/typedef2.C +++ b/gcc/testsuite/g++.old-deja/g++.other/typedef2.C @@ -1,4 +1,4 @@ -//Build don't link: +// { dg-do assemble } struct S{ static const int i; diff --git a/gcc/testsuite/g++.old-deja/g++.other/typedef3.C b/gcc/testsuite/g++.old-deja/g++.other/typedef3.C index 465e9a0..99076b4 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/typedef3.C +++ b/gcc/testsuite/g++.old-deja/g++.other/typedef3.C @@ -1,4 +1,4 @@ -//Build don't link: +// { dg-do assemble } template<class T> struct X{ T v; diff --git a/gcc/testsuite/g++.old-deja/g++.other/typedef4.C b/gcc/testsuite/g++.old-deja/g++.other/typedef4.C index 8b5ba49..02aa4a6 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/typedef4.C +++ b/gcc/testsuite/g++.old-deja/g++.other/typedef4.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } struct A { void f (); diff --git a/gcc/testsuite/g++.old-deja/g++.other/typedef5.C b/gcc/testsuite/g++.old-deja/g++.other/typedef5.C index d8f74ae..f9e7147 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/typedef5.C +++ b/gcc/testsuite/g++.old-deja/g++.other/typedef5.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // by Alexandre Oliva <oliva@dcc.unicamp.br> @@ -10,7 +10,7 @@ typedef int t; typedef t* u; typedef u v; typedef v* (*w)(t const); // this is ok -typedef v* (*w)(t); // ERROR - covers message `previously declared here' -typedef v* (*const w)(t); // ERROR - invalid redeclaration -typedef v const* (*w)(t); // ERROR - invalid redeclaration -typedef v* const (*w)(t); // ERROR - invalid redeclaration +typedef v* (*w)(t); // { dg-error "" } covers message `previously declared here' +typedef v* (*const w)(t); // { dg-error "" } invalid redeclaration +typedef v const* (*w)(t); // { dg-error "" } invalid redeclaration +typedef v* const (*w)(t); // { dg-error "" } invalid redeclaration diff --git a/gcc/testsuite/g++.old-deja/g++.other/typedef6.C b/gcc/testsuite/g++.old-deja/g++.other/typedef6.C index 53b8166..29e9f92 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/typedef6.C +++ b/gcc/testsuite/g++.old-deja/g++.other/typedef6.C @@ -1,6 +1,6 @@ +// { dg-do assemble } // Submitted by Jason Merrill <jason@cygnus.com>. // Bug: g++ fails to see through the T typedef in the C ctor. -// Build don't link: struct A { A (int) { } diff --git a/gcc/testsuite/g++.old-deja/g++.other/typedef7.C b/gcc/testsuite/g++.old-deja/g++.other/typedef7.C index d0e9dab..f49ae47 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/typedef7.C +++ b/gcc/testsuite/g++.old-deja/g++.other/typedef7.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Mark Mitchell <mark@codesourcery.com> typedef int I; diff --git a/gcc/testsuite/g++.old-deja/g++.other/typedef8.C b/gcc/testsuite/g++.old-deja/g++.other/typedef8.C index ce9d0bd..2d3507a 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/typedef8.C +++ b/gcc/testsuite/g++.old-deja/g++.other/typedef8.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 17 Aug 2000 <nathan@codesourcery.com> diff --git a/gcc/testsuite/g++.old-deja/g++.other/typeid1.C b/gcc/testsuite/g++.old-deja/g++.other/typeid1.C index e50f3c2..abe4f9d 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/typeid1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/typeid1.C @@ -1,6 +1,6 @@ -// Build don't link: +// { dg-do assemble } +// { dg-options "" } // Origin: sk@gluit.de -// Special g++ Options: #include <typeinfo> @@ -10,6 +10,6 @@ int main () int len = 1; char carr[len]; - typeid(typeof(carr)); // ERROR - type has variable size - typeid(carr); // ERROR - type has variable size + typeid(typeof(carr)); // { dg-error "" } type has variable size + typeid(carr); // { dg-error "" } type has variable size } diff --git a/gcc/testsuite/g++.old-deja/g++.other/typeinfo1.C b/gcc/testsuite/g++.old-deja/g++.other/typeinfo1.C index 89c8e80..0674988 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/typeinfo1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/typeinfo1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } #include <typeinfo> diff --git a/gcc/testsuite/g++.old-deja/g++.other/typename1.C b/gcc/testsuite/g++.old-deja/g++.other/typename1.C index 271fd57..81e7571 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/typename1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/typename1.C @@ -1,8 +1,8 @@ +// { dg-do assemble } +// { dg-options "-pedantic -Wno-deprecated" } // This code snippet should be rejected with -pedantic // Based on a test case by Louidor Erez <s3824888@techst02.technion.ac.il> -// Build don't link: -// Special g++ Options: -pedantic -Wno-deprecated template<class T> class Vector { @@ -13,5 +13,5 @@ public: template<class T> void f() { - Vector<T>::iterator i = 0; // WARNING - missing typename + Vector<T>::iterator i = 0; // { dg-warning "" } missing typename } diff --git a/gcc/testsuite/g++.old-deja/g++.other/typename2.C b/gcc/testsuite/g++.old-deja/g++.other/typename2.C index 78df7b2..7c87c5b 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/typename2.C +++ b/gcc/testsuite/g++.old-deja/g++.other/typename2.C @@ -1,7 +1,7 @@ -// Build don't link: +// { dg-do assemble } template<typename T> void f() { - typename T::u; // ERROR - declare anything + typename T::u; // { dg-error "" } declare anything } diff --git a/gcc/testsuite/g++.old-deja/g++.other/unchanging1.C b/gcc/testsuite/g++.old-deja/g++.other/unchanging1.C index 6bad7a4..6b2999c 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/unchanging1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/unchanging1.C @@ -1,4 +1,5 @@ -// Special g++ Options: -O2 +// { dg-do run } +// { dg-options "-O2" } #include <iostream> #include <complex> diff --git a/gcc/testsuite/g++.old-deja/g++.other/union1.C b/gcc/testsuite/g++.old-deja/g++.other/union1.C index 6573b4d..37424a1 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/union1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/union1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } class A { @@ -12,5 +12,5 @@ class A union B { char f1; - A f2; // gets bogus error - non-copy assignment op is OK + A f2; // { dg-bogus "" } non-copy assignment op is OK }; diff --git a/gcc/testsuite/g++.old-deja/g++.other/union2.C b/gcc/testsuite/g++.old-deja/g++.other/union2.C index e2daea3..cfa9896 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/union2.C +++ b/gcc/testsuite/g++.old-deja/g++.other/union2.C @@ -1,3 +1,4 @@ +// { dg-do run } // Bug: g++ crashed on empty intializers for unions. // Bug: gcc and g++ didn't zero unions with empty initializers. // Submitted by J"orn Rennecke <amylaar@cygnus.co.uk> diff --git a/gcc/testsuite/g++.old-deja/g++.other/union3.C b/gcc/testsuite/g++.old-deja/g++.other/union3.C index 543b714..67903b7 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/union3.C +++ b/gcc/testsuite/g++.old-deja/g++.other/union3.C @@ -1,3 +1,4 @@ +// { dg-do run } // Origin: Mark Mitchell <mark@codesourcery.com> struct A diff --git a/gcc/testsuite/g++.old-deja/g++.other/union4.C b/gcc/testsuite/g++.old-deja/g++.other/union4.C index ac1925e..26f12e9 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/union4.C +++ b/gcc/testsuite/g++.old-deja/g++.other/union4.C @@ -1,13 +1,13 @@ -// Build don't link: +// { dg-do assemble } +// { dg-options "" } // Origin: Mark Mitchell <mark@codesourcery.com> -// Special g++ Options: union A { int i; int j; - A () : i (3), j (2) {} // ERROR - multiple initializations + A () : i (3), j (2) {} // { dg-error "" } multiple initializations }; union B @@ -17,7 +17,7 @@ union B int j; }; - B () : i (3), j (2) {} // ERROR - multiple initializations + B () : i (3), j (2) {} // { dg-error "" } multiple initializations }; union C diff --git a/gcc/testsuite/g++.old-deja/g++.other/using1.C b/gcc/testsuite/g++.old-deja/g++.other/using1.C index a431a95..d734576 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/using1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/using1.C @@ -1,21 +1,22 @@ +// { dg-do assemble } class D2; class B { private: - int a; // ERROR - B::a is private + int a; // { dg-error "" } B::a is private protected: int b; friend class D2; }; -class D : public B { // ERROR - within this context +class D : public B { // { dg-error "" } within this context public: using B::a; using B::b; }; -class D2 : public B { // ERROR - conflicting access specifications +class D2 : public B { // { dg-error "" } conflicting access specifications public: using B::a; using B::b; diff --git a/gcc/testsuite/g++.old-deja/g++.other/using2.C b/gcc/testsuite/g++.old-deja/g++.other/using2.C index cb457bf..92c65eb 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/using2.C +++ b/gcc/testsuite/g++.old-deja/g++.other/using2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } struct X{ void f(); }; diff --git a/gcc/testsuite/g++.old-deja/g++.other/using3.C b/gcc/testsuite/g++.old-deja/g++.other/using3.C index 7d75d8a..f30ecbc 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/using3.C +++ b/gcc/testsuite/g++.old-deja/g++.other/using3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } struct A{ A(); }; @@ -8,5 +8,5 @@ typedef struct { } S; struct B: S{ - using S::S; // ERROR - no such field + using S::S; // { dg-error "" } no such field }; diff --git a/gcc/testsuite/g++.old-deja/g++.other/using4.C b/gcc/testsuite/g++.old-deja/g++.other/using4.C index bb653e4..9d6e27e 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/using4.C +++ b/gcc/testsuite/g++.old-deja/g++.other/using4.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Based on a testcase by Martin Bachtold <martinb@coyotesystems.com> diff --git a/gcc/testsuite/g++.old-deja/g++.other/using5.C b/gcc/testsuite/g++.old-deja/g++.other/using5.C index 65dc952..6725301 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/using5.C +++ b/gcc/testsuite/g++.old-deja/g++.other/using5.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Based on bug report by Klaus-Georg Adams // <Klaus-Georg.Adams@chemie.uni-karlsruhe.de> diff --git a/gcc/testsuite/g++.old-deja/g++.other/using6.C b/gcc/testsuite/g++.old-deja/g++.other/using6.C index 40b21b5..272c35d 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/using6.C +++ b/gcc/testsuite/g++.old-deja/g++.other/using6.C @@ -1,3 +1,4 @@ +// { dg-do run } // Test of class-scope using-declaration for functions. #define assert(COND) if (!(COND)) return 1 diff --git a/gcc/testsuite/g++.old-deja/g++.other/using7.C b/gcc/testsuite/g++.old-deja/g++.other/using7.C index 56f2e84..9ae8568 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/using7.C +++ b/gcc/testsuite/g++.old-deja/g++.other/using7.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } class A { protected: diff --git a/gcc/testsuite/g++.old-deja/g++.other/using8.C b/gcc/testsuite/g++.old-deja/g++.other/using8.C index 1dc29de..2700bb2 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/using8.C +++ b/gcc/testsuite/g++.old-deja/g++.other/using8.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 14 Nov 2000 <nathan@codesourcery.com> @@ -39,5 +39,5 @@ void foo (B *bp, C* cp) struct D : A { - using A::D; // ERROR - names constructor + using A::D; // { dg-error "" } names constructor }; diff --git a/gcc/testsuite/g++.old-deja/g++.other/using9.C b/gcc/testsuite/g++.old-deja/g++.other/using9.C index acfab50..9779f72 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/using9.C +++ b/gcc/testsuite/g++.old-deja/g++.other/using9.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 26 Feb 2001 <nathan@codesourcery.com> @@ -17,5 +17,5 @@ extern "C" void foo (); namespace { extern "C" int foo (); - using ::foo; // ERROR - already in use + using ::foo; // { dg-error "" } already in use } diff --git a/gcc/testsuite/g++.old-deja/g++.other/vaarg1.C b/gcc/testsuite/g++.old-deja/g++.other/vaarg1.C index d58104c..bcc9df3 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/vaarg1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/vaarg1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Mark Mitchell <mark@codesourcery.com> #include <stdarg.h> diff --git a/gcc/testsuite/g++.old-deja/g++.other/vaarg2.C b/gcc/testsuite/g++.old-deja/g++.other/vaarg2.C index fe1fa7e..2992a25 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/vaarg2.C +++ b/gcc/testsuite/g++.old-deja/g++.other/vaarg2.C @@ -1,3 +1,4 @@ +// { dg-do run } // Copyright (C) 1999, 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 4 Oct 1999 <nathan@acm.org> diff --git a/gcc/testsuite/g++.old-deja/g++.other/vaarg3.C b/gcc/testsuite/g++.old-deja/g++.other/vaarg3.C index 4002e2d..d86d8c1 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/vaarg3.C +++ b/gcc/testsuite/g++.old-deja/g++.other/vaarg3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 1999 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 4 Oct 1999 <nathan@acm.org> @@ -9,19 +9,19 @@ struct X {int m;}; struct Y : X {int m;}; -struct Z; // 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); // WARNING - cannot receive - Y y = va_arg (args, struct Y); // WARNING - cannot receive - int &r = va_arg (args, int &); // 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); // ERROR - incomplete - const Z &z2 = va_arg (args, Z); // 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); // ERROR - promote - va_arg (args, int []); // ERROR - promote - va_arg (args, int ()); // ERROR - promote - va_arg (args, bool); // ERROR - promote + 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 } diff --git a/gcc/testsuite/g++.old-deja/g++.other/vaarg4.C b/gcc/testsuite/g++.old-deja/g++.other/vaarg4.C index 3b312ab..3f08b0a 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/vaarg4.C +++ b/gcc/testsuite/g++.old-deja/g++.other/vaarg4.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Bug 845. We were treating __builtin_va_arg as a unary expr, not a primary, // and hence getting parse errors. diff --git a/gcc/testsuite/g++.old-deja/g++.other/vbase1.C b/gcc/testsuite/g++.old-deja/g++.other/vbase1.C index 99a3867..4392784 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/vbase1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/vbase1.C @@ -1,5 +1,6 @@ +// { dg-do run } +// { dg-options "-w" } // Origin: Mark Mitchell <mark@codesourcery.com> -// Special g++ Options: -w int result; diff --git a/gcc/testsuite/g++.old-deja/g++.other/vbase2.C b/gcc/testsuite/g++.old-deja/g++.other/vbase2.C index 2f15249..812b547 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/vbase2.C +++ b/gcc/testsuite/g++.old-deja/g++.other/vbase2.C @@ -1,3 +1,4 @@ +// { dg-do run } // Origin: Mark Mitchell <mark@codesourcery.com> int i; diff --git a/gcc/testsuite/g++.old-deja/g++.other/vbase3.C b/gcc/testsuite/g++.old-deja/g++.other/vbase3.C index 6d61118..2cdc805 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/vbase3.C +++ b/gcc/testsuite/g++.old-deja/g++.other/vbase3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: scott snyder <snyder@fnal.gov> class d0_Collection_Base {}; diff --git a/gcc/testsuite/g++.old-deja/g++.other/vbase4.C b/gcc/testsuite/g++.old-deja/g++.other/vbase4.C index 59974c3..178f4b7 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/vbase4.C +++ b/gcc/testsuite/g++.old-deja/g++.other/vbase4.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 10 Jan 2001 <nathan@codesourcery.com> diff --git a/gcc/testsuite/g++.old-deja/g++.other/vbase5.C b/gcc/testsuite/g++.old-deja/g++.other/vbase5.C index 03b846f..10c2f31 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/vbase5.C +++ b/gcc/testsuite/g++.old-deja/g++.other/vbase5.C @@ -1,3 +1,4 @@ +// { dg-do run } // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 19 Jan 2001 <nathan@codesourcery.com> diff --git a/gcc/testsuite/g++.old-deja/g++.other/virtual1.C b/gcc/testsuite/g++.old-deja/g++.other/virtual1.C index 2848317..f8ee4ed 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/virtual1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/virtual1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } struct S0 { virtual void f1 () { } }; diff --git a/gcc/testsuite/g++.old-deja/g++.other/virtual10.C b/gcc/testsuite/g++.old-deja/g++.other/virtual10.C index 020a082..ba3dea7 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/virtual10.C +++ b/gcc/testsuite/g++.old-deja/g++.other/virtual10.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 14 Nov 2000 <nathan@codesourcery.com> @@ -9,12 +9,12 @@ struct A { virtual int foo (char); static int foo (); - virtual int foo (int); // ERROR - this function + virtual int foo (int); // { dg-error "" } this function static int foo (float); virtual int foo (double); }; struct B : A { - static int foo (int); // ERROR - cannot override + static int foo (int); // { dg-error "" } cannot override }; diff --git a/gcc/testsuite/g++.old-deja/g++.other/virtual11.C b/gcc/testsuite/g++.old-deja/g++.other/virtual11.C index 62c9b24..8b46dc7 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/virtual11.C +++ b/gcc/testsuite/g++.old-deja/g++.other/virtual11.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 14 Nov 2000 <nathan@codesourcery.com> @@ -12,7 +12,7 @@ struct A struct B { - virtual void foo (); // ERROR - of this function + virtual void foo (); // { dg-error "" } of this function }; struct C : A , B @@ -27,5 +27,5 @@ struct D : C struct E : D { - virtual int foo (); // ERROR - invalid override + virtual int foo (); // { dg-error "" } invalid override }; diff --git a/gcc/testsuite/g++.old-deja/g++.other/virtual2.C b/gcc/testsuite/g++.old-deja/g++.other/virtual2.C index a3ebbcd..c93b89f 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/virtual2.C +++ b/gcc/testsuite/g++.old-deja/g++.other/virtual2.C @@ -1,3 +1,4 @@ +// { dg-do run } struct B { virtual int f() volatile diff --git a/gcc/testsuite/g++.old-deja/g++.other/virtual3.C b/gcc/testsuite/g++.old-deja/g++.other/virtual3.C index b9a7719..c62af54 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/virtual3.C +++ b/gcc/testsuite/g++.old-deja/g++.other/virtual3.C @@ -1,3 +1,4 @@ +// { dg-do run } struct B { virtual int f() volatile diff --git a/gcc/testsuite/g++.old-deja/g++.other/virtual4.C b/gcc/testsuite/g++.old-deja/g++.other/virtual4.C index 8a44ee1..6933755 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/virtual4.C +++ b/gcc/testsuite/g++.old-deja/g++.other/virtual4.C @@ -1,8 +1,8 @@ -// Build don't link: +// { dg-do assemble } class A { public: - virtual int foo() = 0; // ERROR - original definition + virtual int foo() = 0; // { dg-error "" } original definition }; class B { @@ -14,12 +14,12 @@ class C : public A, public B { public: - virtual double foo() { return 2; } // ERROR - conflicting return type + virtual double foo() { return 2; } // { dg-error "" } conflicting return type }; class D : public B, public A { public: - virtual double foo() { return 2; } // ERROR - conflicting return type + virtual double foo() { return 2; } // { dg-error "" } conflicting return type }; diff --git a/gcc/testsuite/g++.old-deja/g++.other/virtual5.C b/gcc/testsuite/g++.old-deja/g++.other/virtual5.C index bf70056..e163e9e 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/virtual5.C +++ b/gcc/testsuite/g++.old-deja/g++.other/virtual5.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -w +// { dg-do assemble } +// { dg-options "-w" } // Origin: Derived from code by Andris Pavenis <andris@stargate.astr.lu.lv> class vector {}; diff --git a/gcc/testsuite/g++.old-deja/g++.other/virtual6.C b/gcc/testsuite/g++.old-deja/g++.other/virtual6.C index d0769fc..37a1797 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/virtual6.C +++ b/gcc/testsuite/g++.old-deja/g++.other/virtual6.C @@ -1,8 +1,8 @@ +// { dg-do assemble } +// { dg-options "-Woverloaded-virtual" } // Bug: g++ checks certain non-virtual functions to see if they override // virtual functions. // Submitted by Jason Merrill <jason@cygnus.com> -// Special g++ Options: -Woverloaded-virtual -// Build don't link: struct A { virtual void f (int); diff --git a/gcc/testsuite/g++.old-deja/g++.other/virtual7.C b/gcc/testsuite/g++.old-deja/g++.other/virtual7.C index 8b5338e..20845ec 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/virtual7.C +++ b/gcc/testsuite/g++.old-deja/g++.other/virtual7.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -fno-rtti +// { dg-do assemble } +// { dg-options "-fno-rtti" } // Origin: Anthony Green <green@cygnus.com> class _JvObjectPrefix diff --git a/gcc/testsuite/g++.old-deja/g++.other/virtual8.C b/gcc/testsuite/g++.old-deja/g++.other/virtual8.C index 32c8e54..f1ec9ad 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/virtual8.C +++ b/gcc/testsuite/g++.old-deja/g++.other/virtual8.C @@ -1,3 +1,4 @@ +// { dg-do run } extern "C" int printf (const char*, ...); struct A diff --git a/gcc/testsuite/g++.old-deja/g++.other/virtual9.C b/gcc/testsuite/g++.old-deja/g++.other/virtual9.C index 29472b8..c10eef6 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/virtual9.C +++ b/gcc/testsuite/g++.old-deja/g++.other/virtual9.C @@ -1,3 +1,4 @@ +// { dg-do run } // Source: Neil Booth, from PR #111. class A diff --git a/gcc/testsuite/g++.old-deja/g++.other/volatile1.C b/gcc/testsuite/g++.old-deja/g++.other/volatile1.C index c85a394..32eef6f 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/volatile1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/volatile1.C @@ -1,8 +1,9 @@ +// { dg-do assemble } // Test that failed lvalue-to-rvalue conversion of vf doesn't crash the // compiler. class f_class -{ }; // ERROR - candidates +{ }; // { dg-error "" } candidates volatile f_class ret_v_f_class() @@ -14,6 +15,6 @@ ret_v_f_class() int main(void) { volatile f_class vf; - 0 ? ret_v_f_class() : vf; // ERROR - can't copy volatile lvalue + 0 ? ret_v_f_class() : vf; // { dg-error "" } can't copy volatile lvalue return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.other/vtbl1.C b/gcc/testsuite/g++.old-deja/g++.other/vtbl1.C index 4724ee1..a8157f4 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/vtbl1.C +++ b/gcc/testsuite/g++.old-deja/g++.other/vtbl1.C @@ -1,4 +1,4 @@ -// Build don't run: +// { dg-do link } // Origin: DJ Delorie <dj@delorie.com> class X { diff --git a/gcc/testsuite/g++.old-deja/g++.other/vtbl2.C b/gcc/testsuite/g++.old-deja/g++.other/vtbl2.C index c812d30..5c7721e 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/vtbl2.C +++ b/gcc/testsuite/g++.old-deja/g++.other/vtbl2.C @@ -1,3 +1,4 @@ +// { dg-do run } // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 8 Feb 2000 <nathan@acm.org> diff --git a/gcc/testsuite/g++.old-deja/g++.other/warn01.C b/gcc/testsuite/g++.old-deja/g++.other/warn01.C index 229363a..3f56942 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/warn01.C +++ b/gcc/testsuite/g++.old-deja/g++.other/warn01.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -W -Wall +// { dg-do assemble } +// { dg-options "-W -Wall" } typedef unsigned long size_t; extern void* malloc (size_t); @@ -12,4 +12,4 @@ struct vtable { void* (* _realloc) (void*, size_t); }; -struct vtable mtable = { malloc, free }; // WARNING - _realloc +struct vtable mtable = { malloc, free }; // { dg-warning "" } _realloc diff --git a/gcc/testsuite/g++.old-deja/g++.other/warn3.C b/gcc/testsuite/g++.old-deja/g++.other/warn3.C index 6429630..b38936d 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/warn3.C +++ b/gcc/testsuite/g++.old-deja/g++.other/warn3.C @@ -1,10 +1,10 @@ -// Build don't link: +// { dg-do assemble } class A { }; -class B { // WARNING - only private constructors +class B { // { dg-warning "" } only private constructors public: void f(); @@ -14,7 +14,7 @@ private: }; -class C { // WARNING - only private destructors +class C { // { dg-warning "" } only private destructors public: void f(); @@ -23,14 +23,14 @@ private: }; -class D { // WARNING - all member functions are private +class D { // { dg-warning "" } all member functions are private private: void f(); }; template <class T> -class X { // WARNING - only private destructors +class X { // { dg-warning "" } only private destructors private: ~X (); }; @@ -40,7 +40,7 @@ template class X<double>; template <class T> -class Y { // WARNING - only private constructors +class Y { // { dg-warning "" } only private constructors private: Y (); Y (const Y&); @@ -48,7 +48,7 @@ private: template <class T> -class Z { // WARNING - all member functions are private +class Z { // { dg-warning "" } all member functions are private private: void f(); }; diff --git a/gcc/testsuite/g++.old-deja/g++.other/warn4.C b/gcc/testsuite/g++.old-deja/g++.other/warn4.C index e2baf47..dca3ed4 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/warn4.C +++ b/gcc/testsuite/g++.old-deja/g++.other/warn4.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 1999 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 21 Nov 1999 <nathan@acm.org> @@ -35,13 +35,13 @@ void fU () void fs () { - unsigned s1 = -1; // WARNING - initialization - unsigned s2(-1); // WARNING - initialization - unsigned volatile s3 = -1;// WARNING - initialization - unsigned const s4 = -1; // WARNING - initialization - unsigned const &s5(-1); // WARNING - initialization - s1 = -1; // WARNING - assignment - fn (-1); // WARNING - passing + unsigned s1 = -1; // { dg-warning "" } initialization + unsigned s2(-1); // { dg-warning "" } initialization + unsigned volatile s3 = -1;// { dg-warning "" } initialization + unsigned const s4 = -1; // { dg-warning "" } initialization + unsigned const &s5(-1); // { dg-warning "" } initialization + s1 = -1; // { dg-warning "" } assignment + fn (-1); // { dg-warning "" } passing } void fss () diff --git a/gcc/testsuite/g++.old-deja/g++.other/warn5.C b/gcc/testsuite/g++.old-deja/g++.other/warn5.C index 4c17dc6..84fa3e4 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/warn5.C +++ b/gcc/testsuite/g++.old-deja/g++.other/warn5.C @@ -1,5 +1,5 @@ -// Special g++ Options: -W -// Build don't link: +// { dg-do assemble } +// { dg-options "-W " } // // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 6 Febs 2001 <nathan@codesourcery.com> @@ -16,4 +16,4 @@ X *foo () return new X (); // gets bogus warning } -X x = {}; // WARNING - missing initializer +X x = {}; // { dg-warning "" } missing initializer diff --git a/gcc/testsuite/g++.old-deja/g++.other/warn6.C b/gcc/testsuite/g++.old-deja/g++.other/warn6.C index 1a54b32..4325df7 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/warn6.C +++ b/gcc/testsuite/g++.old-deja/g++.other/warn6.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -W -Wall +// { dg-do assemble } +// { dg-options "-W -Wall" } // Copyright (C) 2001 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 2 Mar 2001 <nathan@codesourcery.com> diff --git a/gcc/testsuite/g++.old-deja/g++.other/warn7.C b/gcc/testsuite/g++.old-deja/g++.other/warn7.C index a27756a..4e764502 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/warn7.C +++ b/gcc/testsuite/g++.old-deja/g++.other/warn7.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -W -Wall +// { dg-do assemble } +// { dg-options "-W -Wall" } // // Copyright (C) 2001 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 26 April 2001 <nathan@codesourcery.com> @@ -35,11 +35,11 @@ struct Y void bar (int); Y::Y(int i) -{ // WARNING - unused parameter +{ // { dg-warning "" } unused parameter } void Y::bar (int i) -{ // WARNING - unused parameter +{ // { dg-warning "" } unused parameter } void bar (int i) -{ // WARNING - unused parameter +{ // { dg-warning "" } unused parameter } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/alignof.C b/gcc/testsuite/g++.old-deja/g++.pt/alignof.C index 0cfeed4..d6af268 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/alignof.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/alignof.C @@ -1,3 +1,4 @@ +// { dg-do run } extern "C" void abort(); struct S diff --git a/gcc/testsuite/g++.old-deja/g++.pt/array1.C b/gcc/testsuite/g++.old-deja/g++.pt/array1.C index 669600f..50e3724 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/array1.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/array1.C @@ -1,3 +1,4 @@ +// { dg-do run } template <class T, unsigned N> unsigned size(T (&)[N]) { return N; } template <class T, unsigned N> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/array2.C b/gcc/testsuite/g++.old-deja/g++.pt/array2.C index 6c5810e..edab15b 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/array2.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/array2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template<int N, class C> class Bar {}; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/array3.C b/gcc/testsuite/g++.old-deja/g++.pt/array3.C index ec5e1e0..4f9d894 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/array3.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/array3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Brendan Kehoe <brendan@cygnus.com> template <int x> int foo(char[4][x]) { return x; } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/array4.C b/gcc/testsuite/g++.old-deja/g++.pt/array4.C index fab2d5b..0bd580a 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/array4.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/array4.C @@ -1,9 +1,9 @@ +// { dg-do assemble } // Test to make sure that the array bounds are treated as an expression // in template parm substitution. // Written by Jason Merrill <jason@cygnus.com> -// Build don't link: template <class T> void f (T t) { int ar[sizeof (T)]; } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/array5.C b/gcc/testsuite/g++.old-deja/g++.pt/array5.C index cda2ecb..87bd0a2 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/array5.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/array5.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Mark Mitchell <mark@codesourcery.com> template <class T> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/array6.C b/gcc/testsuite/g++.old-deja/g++.pt/array6.C index 0888df8..b48cabd 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/array6.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/array6.C @@ -1,6 +1,6 @@ -// Build don't link: +// { dg-do assemble } +// { dg-options "" } // Origin: Alfred Minarik <a8601248@unet.univie.ac.at> -// Special g++ Options: template<typename _CharT> struct basic_filebuf diff --git a/gcc/testsuite/g++.old-deja/g++.pt/array7.C b/gcc/testsuite/g++.old-deja/g++.pt/array7.C index 02e0733..c045a349 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/array7.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/array7.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Mark Mitchell <mark@codesourcery.com> template <typename T> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/asm1.C b/gcc/testsuite/g++.old-deja/g++.pt/asm1.C index 7009252..6cf869d 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/asm1.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/asm1.C @@ -1,6 +1,5 @@ -// Build don't link: +// { dg-do assemble { target i?86-*-linux* x86_64-*-linux } } // Origin: "Weidmann, Nicholas" <nicholas.weidmann@swx.ch> -// Skip if not target: i?86-*-linux* x86_64-*-linux template<int i> int foo(int v) { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/asm2.C b/gcc/testsuite/g++.old-deja/g++.pt/asm2.C index 4f6bd0a..b7e7648 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/asm2.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/asm2.C @@ -1,6 +1,5 @@ -// Build don't link: +// { dg-do assemble { target i?86-*-linux* } } // Origin: "Weidmann, Nicholas" <nicholas.weidmann@swx.ch> -// Skip if not target: i?86-*-linux* typedef void (function_ptr)(int); diff --git a/gcc/testsuite/g++.old-deja/g++.pt/assign1.C b/gcc/testsuite/g++.old-deja/g++.pt/assign1.C index dfdaab2..5f6ad34 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/assign1.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/assign1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Mark Mitchell <mark@codesourcery.com> template <class T> @@ -10,5 +10,5 @@ struct S { void f() { S<const int> s; - s = s; // ERROR - generated assignment operator is illegal + s = s; // { dg-error "" } generated assignment operator is illegal } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/auto_ptr.C b/gcc/testsuite/g++.old-deja/g++.pt/auto_ptr.C index c91d9c7..93f4536 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/auto_ptr.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/auto_ptr.C @@ -1,3 +1,4 @@ +// { dg-do assemble } template <typename Y> struct auto_ptr_ref { Y* py; auto_ptr_ref(Y* p) : py(p) {} @@ -8,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()) {} // ERROR - candidate + auto_ptr(auto_ptr& r) throw() : px(r.release()) {} // { dg-error "" } candidate template<typename Y> - auto_ptr(auto_ptr<Y>& r) throw() : px(r.release()) {}// ERROR - candidate + auto_ptr(auto_ptr<Y>& r) throw() : px(r.release()) {}// { dg-error "" } candidate auto_ptr& operator=(auto_ptr& r) throw() { reset(r.release()); @@ -29,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) {} // ERROR - candidate + auto_ptr(auto_ptr_ref<X> r) throw() : px(r.py) {} // { dg-error "" } candidate template<typename Y> operator auto_ptr_ref<Y>() throw() { return auto_ptr_ref<Y>(release()); } @@ -50,5 +51,5 @@ int main() { auto_ptr<Derived> y(f()); x = y; g(f()); - h(f()); // ERROR - no usable copy ctor + h(f()); // { dg-error "" } no usable copy ctor } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/bad-type.C b/gcc/testsuite/g++.old-deja/g++.pt/bad-type.C index 6b22b86..fffa8c5 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/bad-type.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/bad-type.C @@ -1,3 +1,4 @@ +// { dg-do assemble } template<class Type> class A { @@ -8,7 +9,7 @@ public: template<class Type> void f(A<Type>& a, Type d) { - A.m=d; // ERROR - invalid use of template + A.m=d; // { dg-error "" } invalid use of template } int main() diff --git a/gcc/testsuite/g++.old-deja/g++.pt/builtin.C b/gcc/testsuite/g++.old-deja/g++.pt/builtin.C index 6ed6fcf..cd79d8a 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/builtin.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/builtin.C @@ -1,7 +1,7 @@ +// { dg-do assemble } // Bug: Checking whether A depends on template parms, we crash because // __builtin_va_list lacks TYPE_LANG_SPECIFIC. -// Build don't link: void f (__builtin_va_list arg) { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/call1.C b/gcc/testsuite/g++.old-deja/g++.pt/call1.C index b9836bbc..26a49b5 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/call1.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/call1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } struct IsCompressed { }; struct Field { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/call2.C b/gcc/testsuite/g++.old-deja/g++.pt/call2.C index e38a29e..94e4928 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/call2.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/call2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } struct IsCompressed { }; struct Field { @@ -8,7 +8,7 @@ template<class C> inline bool for_each(const Field& p, IsCompressed, C) { - return p.IsCompressed(); // ERROR - calling type like a method + return p.IsCompressed(); // { dg-error "" } calling type like a method } template bool for_each<int>(const Field& p, IsCompressed, int); diff --git a/gcc/testsuite/g++.old-deja/g++.pt/cast1.C b/gcc/testsuite/g++.old-deja/g++.pt/cast1.C index e37b169..ab27e65 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/cast1.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/cast1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Mark Mitchell <mark@codesourcery.com> template <class T> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/cast2.C b/gcc/testsuite/g++.old-deja/g++.pt/cast2.C index fb0a260..ec1c6b2 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/cast2.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/cast2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 10 Jan 2001 <nathan@codesourcery.com> @@ -15,7 +15,7 @@ template <class T> void A::f(void *CLUTp) { void *CLUT; - CLUT = (unsigned char [3][256])CLUTp; // ERROR - cast to array + CLUT = (unsigned char [3][256])CLUTp; // { dg-error "" } cast to array return; } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/codegen1.C b/gcc/testsuite/g++.old-deja/g++.pt/codegen1.C index f9a39c0..c07083a 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/codegen1.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/codegen1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Mark Mitchell <mark@codesourcery.com> int i; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/cond2.C b/gcc/testsuite/g++.old-deja/g++.pt/cond2.C index b5cd961..37bc146 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/cond2.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/cond2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Mark Mitchell <mark@codesourcery.com> struct S diff --git a/gcc/testsuite/g++.old-deja/g++.pt/cond3.C b/gcc/testsuite/g++.old-deja/g++.pt/cond3.C index f73a495..e82b686 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/cond3.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/cond3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Loring Holden <lsh@lsh.cs.brown.edu> template <class T> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/const1.C b/gcc/testsuite/g++.old-deja/g++.pt/const1.C index 8ac8a51..6c61822 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/const1.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/const1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class T> struct B { static const int i = 3; }; template <class T> struct A { static const int i = B<T>::i; }; enum { i = A<int>::i }; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/const2.C b/gcc/testsuite/g++.old-deja/g++.pt/const2.C index 3c064fe..1e63ca5 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/const2.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/const2.C @@ -1,6 +1,6 @@ +// { dg-do link } // This test should get a linker error for the reference to A<int>::i. -// An XPASS on this test is really a FAIL. -// excess errors test - XFAIL *-*-* +// { dg-error "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; }; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/conv1.C b/gcc/testsuite/g++.old-deja/g++.pt/conv1.C index 19e433e..7909e3f 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/conv1.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/conv1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class T> struct S1 {}; @@ -15,5 +15,5 @@ struct D: public S1<int> { void f() { S2 s; - (D*) s; // ERROR - cannot convert + (D*) s; // { dg-error "" } cannot convert } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/conv2.C b/gcc/testsuite/g++.old-deja/g++.pt/conv2.C index f3e0b35..d668a545 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/conv2.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/conv2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template<class T> class A { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/conv3.C b/gcc/testsuite/g++.old-deja/g++.pt/conv3.C index 861b688..78cf5ce 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/conv3.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/conv3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Chris Heath <cheath@math.lsa.umich.edu> struct A { @@ -7,4 +7,4 @@ struct A { void f(A a) {} -int main() {f(1);} // ERROR - no conversion from int to A. +int main() {f(1);} // { dg-error "" } no conversion from int to A. diff --git a/gcc/testsuite/g++.old-deja/g++.pt/copy1.C b/gcc/testsuite/g++.old-deja/g++.pt/copy1.C index 7981530..24aa5e0 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/copy1.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/copy1.C @@ -1,3 +1,4 @@ +// { dg-do run } int i = 0; template <class T> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/crash1.C b/gcc/testsuite/g++.old-deja/g++.pt/crash1.C index 3d3dd5e..f9a6e16 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/crash1.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/crash1.C @@ -1,3 +1,4 @@ +// { dg-do assemble } template<class T> class A { public: class subA {}; @@ -6,6 +7,6 @@ template<class T> class A { template<class T> class B : public A<T> { public: - class subB : public A::subA {}; // ERROR - not a class or namespace + class subB : public A::subA {}; // { dg-error "" } not a class or namespace }; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/crash10.C b/gcc/testsuite/g++.old-deja/g++.pt/crash10.C index a7633a0..bd2efc6 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/crash10.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/crash10.C @@ -1,11 +1,11 @@ -// Build don't link: +// { dg-do assemble } template<int M, int N> class GCD { public: - enum { val = (N == 0) ? M : GCD<N, M % N>::val }; // ERROR - division + enum { val = (N == 0) ? M : GCD<N, M % N>::val }; // { dg-error "" } division }; int main() { - GCD< 1, 0 >::val; // ERROR - instantiated + GCD< 1, 0 >::val; // { dg-error "" } instantiated } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/crash11.C b/gcc/testsuite/g++.old-deja/g++.pt/crash11.C index 30c72a6..bbf08bb 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/crash11.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/crash11.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } class A { @@ -9,5 +9,5 @@ class A template <class j> class A::A_impl -{ // ERROR - does not declare a template +{ // { dg-error "" } does not declare a template }; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/crash12.C b/gcc/testsuite/g++.old-deja/g++.pt/crash12.C index ade8139..37388c8 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/crash12.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/crash12.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -g +// { dg-do assemble } +// { dg-options "-g" } template <class C> class CenteringTag { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/crash13.C b/gcc/testsuite/g++.old-deja/g++.pt/crash13.C index f3de38e..0108081 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/crash13.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/crash13.C @@ -1,6 +1,6 @@ -// Build don't link: +// { dg-do assemble } template <class T> struct A {}; -template <class T> struct A<T>; // ERROR - does not specialize args -template <class T> const struct A; // ERROR - parse error -template <class T> template A<int>; // ERROR - .* +template <class T> struct A<T>; // { dg-error "" } does not specialize args +template <class T> const struct A; // { dg-error "" } parse error +template <class T> template A<int>; // { dg-error "" } .* diff --git a/gcc/testsuite/g++.old-deja/g++.pt/crash14.C b/gcc/testsuite/g++.old-deja/g++.pt/crash14.C index f698316..773ed28 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/crash14.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/crash14.C @@ -1,5 +1,5 @@ -// Build don't link: +// { dg-do assemble } template <class T> struct A {}; template <class T> struct A<T*>; -A<int*> ai; // ERROR - incomplete type +A<int*> ai; // { dg-error "" } incomplete type diff --git a/gcc/testsuite/g++.old-deja/g++.pt/crash15.C b/gcc/testsuite/g++.old-deja/g++.pt/crash15.C index d0af82f..446a256 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/crash15.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/crash15.C @@ -1,8 +1,8 @@ -// Build don't link: +// { dg-do assemble } template <class T> template <class U> -struct A { // ERROR - too many template parameter lists +struct A { // { dg-error "" } too many template parameter lists public: A() {} diff --git a/gcc/testsuite/g++.old-deja/g++.pt/crash16.C b/gcc/testsuite/g++.old-deja/g++.pt/crash16.C index d8a4e15..e03f22f 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/crash16.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/crash16.C @@ -1,6 +1,5 @@ -// Build don't link: -// Special g++ Options: -// excess errors test - XFAIL xstormy16-*-* +// { dg-do assemble { xfail xstormy16-*-* } } +// { dg-options "" } extern "C" void qsort(void *base, __SIZE_TYPE__ nmemb, __SIZE_TYPE__ size, int (*compar)(const void *, const void *)); diff --git a/gcc/testsuite/g++.old-deja/g++.pt/crash17.C b/gcc/testsuite/g++.old-deja/g++.pt/crash17.C index c4dd969..bd9e20b 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/crash17.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/crash17.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <int B> class foo; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/crash18.C b/gcc/testsuite/g++.old-deja/g++.pt/crash18.C index b12c702..a331dd4 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/crash18.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/crash18.C @@ -1,4 +1,4 @@ -// Build don't run: +// { dg-do link } template<class T> class foo { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/crash19.C b/gcc/testsuite/g++.old-deja/g++.pt/crash19.C index 2da6dd9..9e15961 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/crash19.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/crash19.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <int I> void f() diff --git a/gcc/testsuite/g++.old-deja/g++.pt/crash2.C b/gcc/testsuite/g++.old-deja/g++.pt/crash2.C index 3b900c7..dfccc95 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/crash2.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/crash2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class T> struct S1 diff --git a/gcc/testsuite/g++.old-deja/g++.pt/crash20.C b/gcc/testsuite/g++.old-deja/g++.pt/crash20.C index 9efff9d..44f6c8c 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/crash20.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/crash20.C @@ -1,9 +1,9 @@ -// Build don't link: +// { dg-do assemble } template <class T = int> struct A { const T x; A() : x(0) { } A(T x) : x(x) { } }; template <class B> -void func () { B y; y = B(); } // ERROR - can't use default assignment +void func () { B y; y = B(); } // { dg-error "" } can't use default assignment int main (void) { func< A<> >(); } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/crash21.C b/gcc/testsuite/g++.old-deja/g++.pt/crash21.C index c84809b..05654b5 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/crash21.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/crash21.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: +// { dg-do assemble } +// { dg-options "" } class Pooled { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/crash22.C b/gcc/testsuite/g++.old-deja/g++.pt/crash22.C index e947ef3..c1d81b4 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/crash22.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/crash22.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class T> struct S1 {}; @@ -6,4 +6,4 @@ struct S1 {}; template <class T, class U = S1<T> > struct S2 {}; -template struct S2<100>; // ERROR - type/value mismatch +template struct S2<100>; // { dg-error "" } type/value mismatch diff --git a/gcc/testsuite/g++.old-deja/g++.pt/crash23.C b/gcc/testsuite/g++.old-deja/g++.pt/crash23.C index ac4fae0..242624e 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/crash23.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/crash23.C @@ -1,10 +1,10 @@ -// Build don't link: +// { dg-do assemble } template <class A, class B> void foo(); template <class C> class bar { public: int i; - template <class B> friend void foo<C,B>(); // ERROR - template-id + template <class B> friend void foo<C,B>(); // { dg-error "" } template-id }; template <class A, class B> void foo() { bar<A> baz; baz.i = 1; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/crash24.C b/gcc/testsuite/g++.old-deja/g++.pt/crash24.C index 9c31af6..8b0a87e 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/crash24.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/crash24.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template<typename T, template <class> class U> void template_fn (T); template<typename T> void callme ( void (*)(T)); diff --git a/gcc/testsuite/g++.old-deja/g++.pt/crash25.C b/gcc/testsuite/g++.old-deja/g++.pt/crash25.C index f587585..7c9791d 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/crash25.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/crash25.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class T> void f() diff --git a/gcc/testsuite/g++.old-deja/g++.pt/crash26.C b/gcc/testsuite/g++.old-deja/g++.pt/crash26.C index d2101bd..94682dd 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/crash26.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/crash26.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Theodore Papadopoulo <Theodore.Papadopoulo@sophia.inria.fr> double f(double); diff --git a/gcc/testsuite/g++.old-deja/g++.pt/crash27.C b/gcc/testsuite/g++.old-deja/g++.pt/crash27.C index f52f1ba..ccc002d 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/crash27.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/crash27.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template<int i> int f (void) { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/crash28.C b/gcc/testsuite/g++.old-deja/g++.pt/crash28.C index 6b0df69..09b5600 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/crash28.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/crash28.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: +// { dg-do assemble } +// { dg-options "" } template <class ARRY> inline unsigned int asize(ARRY &a) @@ -10,5 +10,5 @@ inline unsigned int asize(ARRY &a) void f(unsigned int n) { int x[n]; - asize(x); // ERROR - no matching function + asize(x); // { dg-error "" } no matching function } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/crash29.C b/gcc/testsuite/g++.old-deja/g++.pt/crash29.C index 5334cd3..0aee9c3 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/crash29.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/crash29.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Steven Parkes <parkes@sierravista.com> typedef __SIZE_TYPE__ size_t; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/crash3.C b/gcc/testsuite/g++.old-deja/g++.pt/crash3.C index a6133e1..160cbe5 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/crash3.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/crash3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class Type> class CVector { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/crash30.C b/gcc/testsuite/g++.old-deja/g++.pt/crash30.C index 3b953d4..dfbef10 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/crash30.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/crash30.C @@ -1,15 +1,15 @@ -// Build don't link: +// { dg-do assemble } extern "C" int printf(const char *, ...); template <class T> struct A { - typedef typename T::X B; // ERROR - not a class + typedef typename T::X B; // { dg-error "" } not a class A(double); }; template <class T> void xxx(typename A<T>::B); template <class T> struct B { - friend void xxx<T>(T); // ERROR - does not match any template + friend void xxx<T>(T); // { dg-error "" } does not match any template }; template struct B<double>; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/crash31.C b/gcc/testsuite/g++.old-deja/g++.pt/crash31.C index 3475896..9c9ce15 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/crash31.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/crash31.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Corey Kosak struct cow_t { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/crash32.C b/gcc/testsuite/g++.old-deja/g++.pt/crash32.C index 80864db..64ed229 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/crash32.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/crash32.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Jason Merrill <jason@cygnus.com> template <class T> struct A @@ -8,6 +8,6 @@ template <class T> struct A template<class T> struct C { - friend typename A<T>::B; // ERROR - `typename' not allowed + friend typename A<T>::B; // { dg-error "" } `typename' not allowed }; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/crash33.C b/gcc/testsuite/g++.old-deja/g++.pt/crash33.C index bc7dcf5..e2a59eb 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/crash33.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/crash33.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Theodore Papadopoulo <Theodore.Papadopoulo@sophia.inria.fr> class A { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/crash34.C b/gcc/testsuite/g++.old-deja/g++.pt/crash34.C index d178a40..31f89c8 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/crash34.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/crash34.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Theodore Papadopoulo <Theodore.Papadopoulo@sophia.inria.fr> template <class T> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/crash35.C b/gcc/testsuite/g++.old-deja/g++.pt/crash35.C index d4084fe..6e2cd74 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/crash35.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/crash35.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Miniussi <miniussi@ilog.fr> template <class O> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/crash36.C b/gcc/testsuite/g++.old-deja/g++.pt/crash36.C index 938591f..055df04 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/crash36.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/crash36.C @@ -1,9 +1,9 @@ -// Build don't link: +// { dg-do assemble } // Origin: Andreas Kloeckner <ak@ixion.net> template<class Iterator> struct iterator_traits { typedef typename Iterator::iterator_category - iterator_category; // ERROR - no type iterator_category + iterator_category; // { dg-error "" } no type iterator_category }; template<class Category> @@ -28,8 +28,8 @@ struct list { }; reverse_iterator<list_iterator<T> > rbegin() - { return reverse_iterator<list_iterator<T> > // ERROR - no type|instantiated here - (list_iterator<T>(Head->next())); } // ERROR - not declared + { return reverse_iterator<list_iterator<T> > // { dg-error "" } no type|instantiated here + (list_iterator<T>(Head->next())); } // { dg-error "" } not declared }; template class list<int>; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/crash37.C b/gcc/testsuite/g++.old-deja/g++.pt/crash37.C index c2325bf..c07ccd5 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/crash37.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/crash37.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Jens Maurer <jmaurer@menuett.rhein-main.de> template<class T, void (T::*f)(int)> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/crash38.C b/gcc/testsuite/g++.old-deja/g++.pt/crash38.C index 4927064..a2f1e28 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/crash38.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/crash38.C @@ -1,10 +1,10 @@ -// Build don't link: +// { dg-do assemble } // Origin: Mark Mitchell <mark@codesourcery.com> template <class T> struct S { - typedef typename T::Y<T>::Z X; // ERROR - No Y in A - X x; // ERROR - No Y in A + typedef typename T::Y<T>::Z X; // { dg-error "" } No Y in A + X x; // { dg-error "" } No Y in A }; struct A { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/crash39.C b/gcc/testsuite/g++.old-deja/g++.pt/crash39.C index 2c4bb5a..a8f70aa 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/crash39.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/crash39.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Ian Nixon <ian@tharas.com> class Action { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/crash4.C b/gcc/testsuite/g++.old-deja/g++.pt/crash4.C index 510d4cd..9bdc51f 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/crash4.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/crash4.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <unsigned rank> class Tensor @@ -6,6 +6,6 @@ class Tensor }; template <unsigned rank> -class Tensor<2> : Tensor<rank> { // ERROR - template parameters not used +class Tensor<2> : Tensor<rank> { // { dg-error "" } template parameters not used }; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/crash40.C b/gcc/testsuite/g++.old-deja/g++.pt/crash40.C index da828d9..c075757 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/crash40.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/crash40.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: rch@larissa.sd.bi.ruhr-uni-bochum.de template< class X > diff --git a/gcc/testsuite/g++.old-deja/g++.pt/crash41.C b/gcc/testsuite/g++.old-deja/g++.pt/crash41.C index 3ab7c15..a3d8088 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/crash41.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/crash41.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Mark Mitchell <mark@codesourcery.com> template <int> struct S1{}; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/crash42.C b/gcc/testsuite/g++.old-deja/g++.pt/crash42.C index 69df535..6536585 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/crash42.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/crash42.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Walter Brisken <walterfb@puppsr14.princeton.edu> template <class T> class list {}; @@ -10,5 +10,5 @@ class newtype void crash() { newtype* n; - n->list.size (); // ERROR - invalid use of template + n->list.size (); // { dg-error "" } invalid use of template } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/crash43.C b/gcc/testsuite/g++.old-deja/g++.pt/crash43.C index 802e01d..5172bbc 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/crash43.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/crash43.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Mark Mitchell <mark@codesourcery.com> template <int T> @@ -10,7 +10,7 @@ struct S { friend struct S<U>::X; template <int U> - friend typename S<U>::Y; // ERROR - typename as friend + friend typename S<U>::Y; // { dg-error "" } typename as friend }; struct T { @@ -20,5 +20,5 @@ struct T { struct U { template <int T> - friend typename S<T>::X; // ERROR - typename as friend + friend typename S<T>::X; // { dg-error "" } typename as friend }; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/crash44.C b/gcc/testsuite/g++.old-deja/g++.pt/crash44.C index 9fba1bc..4aea214 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/crash44.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/crash44.C @@ -1,11 +1,11 @@ -// Build don't link: +// { dg-do assemble } // Origin: Mark Mitchell <mark@codesourcery.com> template <class T> struct S { template <class U> - friend S<U>; // ERROR - friend must use tag + friend S<U>; // { dg-error "" } friend must use tag }; template struct S<int>; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/crash45.C b/gcc/testsuite/g++.old-deja/g++.pt/crash45.C index 6201a5c..0251d0b 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/crash45.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/crash45.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Jason Merrill <jason@cygnus.com> template <class T> void f() diff --git a/gcc/testsuite/g++.old-deja/g++.pt/crash46.C b/gcc/testsuite/g++.old-deja/g++.pt/crash46.C index e226559..ac16b40 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/crash46.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/crash46.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Leon Bottou <leonb@research.att.com> class AA { protected: diff --git a/gcc/testsuite/g++.old-deja/g++.pt/crash47.C b/gcc/testsuite/g++.old-deja/g++.pt/crash47.C index 96a23fd..212beda 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/crash47.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/crash47.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Rick Campbell <rick.campbell@db.com> template <class Owner, typename Type> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/crash48.C b/gcc/testsuite/g++.old-deja/g++.pt/crash48.C index 907360b..2785cdd 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/crash48.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/crash48.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Jean-Francois Panisset <panisset@discreet.com> template<class T> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/crash49.C b/gcc/testsuite/g++.old-deja/g++.pt/crash49.C index b9f7801..a3e3eff 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/crash49.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/crash49.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Loring Holden <lsh@cs.brown.edu> template <class T> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/crash5.C b/gcc/testsuite/g++.old-deja/g++.pt/crash5.C index c36f5d7..2c50dde 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/crash5.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/crash5.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class T, int i> struct K { @@ -7,6 +7,6 @@ struct K { template <class T> void -K<T, i>::f() // ERROR - i has not been declared +K<T, i>::f() // { dg-error "" } i has not been declared { } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/crash50.C b/gcc/testsuite/g++.old-deja/g++.pt/crash50.C index 6415fc3..02cf6c0 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/crash50.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/crash50.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Mark Mitchell <mark@codesourcery.com> template <class T> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/crash51.C b/gcc/testsuite/g++.old-deja/g++.pt/crash51.C index 3f547e5..d851a3b 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/crash51.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/crash51.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -fpermissive -w +// { dg-do assemble } +// { dg-options "-fpermissive -w" } // Origin: Mark Mitchell <mark@codesourcery.com> char foo[26]; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/crash52.C b/gcc/testsuite/g++.old-deja/g++.pt/crash52.C index 4d2de61..f2c3167 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/crash52.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/crash52.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Mark Mitchell <mark@codesourcery.com> template <class T> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/crash53.C b/gcc/testsuite/g++.old-deja/g++.pt/crash53.C index 2324a37..909b866 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/crash53.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/crash53.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Mark Mitchell <mark@codesourcery.com> struct S diff --git a/gcc/testsuite/g++.old-deja/g++.pt/crash54.C b/gcc/testsuite/g++.old-deja/g++.pt/crash54.C index da66d75..72f92d1 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/crash54.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/crash54.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Mark Mitchell <mark@codesourcery.com> template <class T> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/crash55.C b/gcc/testsuite/g++.old-deja/g++.pt/crash55.C index 8a8c9f2..57a6606 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/crash55.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/crash55.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Jakub Jelinek <jakub@redhat.com> template<class T> struct foo { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/crash56.C b/gcc/testsuite/g++.old-deja/g++.pt/crash56.C index 89c3422..7de5742 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/crash56.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/crash56.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 1 Sep 2000 <nathan@codesourcery.com> @@ -15,5 +15,5 @@ public: }; void foo () { - basic_string<char>::iterator<char> p; // ERROR - not a template // ERROR - no type + basic_string<char>::iterator<char> p; // { dg-error "" } not a template // ERROR - no type } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/crash57.C b/gcc/testsuite/g++.old-deja/g++.pt/crash57.C index 8d5be6b..eb6d615 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/crash57.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/crash57.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 11 Aug 2000 <nathan@codesourcery.com> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/crash58.C b/gcc/testsuite/g++.old-deja/g++.pt/crash58.C index 387b5f5..315f3e0 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/crash58.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/crash58.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // // Copyright (C) 2000, 2002 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 5 Sept 2000 <nathan@codesourcery.com> @@ -6,28 +6,28 @@ // bug 147. We ICE'd on an unprocessed LOOKUP_EXPR during tsubsting namespace EManip { - template <class T> void do_assign(T* d); // ERROR - candidate + template <class T> void do_assign(T* d); // { dg-error "" } candidate } -template <class T> void do_assign(T* d); // ERROR - candidate +template <class T> void do_assign(T* d); // { dg-error "" } candidate template <class T> struct MatrixC { void foo () { EManip::do_assign<T> (0); - &EManip::do_assign<T>; // ERROR - unresolved - &do_assign<T>; // ERROR - unresolved - EManip::do_assign<T>; // ERROR - unresolved - do_assign<T>; // ERROR - unresolved + &EManip::do_assign<T>; // { dg-error "" } unresolved + &do_assign<T>; // { dg-error "" } unresolved + EManip::do_assign<T>; // { dg-error "" } unresolved + do_assign<T>; // { dg-error "" } unresolved } }; void foo(MatrixC <double> *ptr) { - EManip::do_assign<double>; // ERROR - unresolved - &EManip::do_assign<double>; // ERROR - unresolved + EManip::do_assign<double>; // { dg-error "" } unresolved + &EManip::do_assign<double>; // { dg-error "" } unresolved ptr->foo (); - void (*p1) (int *) = &do_assign<double>; // ERROR - cannot convert - void (*p2) (int *) = &EManip::do_assign<double>; // ERROR - cannot convert + void (*p1) (int *) = &do_assign<double>; // { dg-error "" } cannot convert + void (*p2) (int *) = &EManip::do_assign<double>; // { dg-error "" } cannot convert void (*p3) (int *) = &do_assign; void (*p4) (int *) = &EManip::do_assign; } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/crash59.C b/gcc/testsuite/g++.old-deja/g++.pt/crash59.C index e42f348..37a2fc5 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/crash59.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/crash59.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 4 Oct 2000 <nathan@codesourcery.com> // Origin: Bug 543 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at> @@ -12,7 +12,7 @@ class ATOMSET template <class T> void addConstsTo(const T &container) { -typename T::const_iterator l = 0; // ERROR - no type const_iterator +typename T::const_iterator l = 0; // { dg-error "" } no type const_iterator } void tallyConstants() diff --git a/gcc/testsuite/g++.old-deja/g++.pt/crash6.C b/gcc/testsuite/g++.old-deja/g++.pt/crash6.C index 8e96940..34bd564 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/crash6.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/crash6.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class T> class List; @@ -13,7 +13,7 @@ template <class T> struct List { void length () const { - for (ListIterator<T> li; li; ); // ERROR - used where a `bool' + for (ListIterator<T> li; li; ); // { dg-error "" } used where a `bool' } }; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/crash60.C b/gcc/testsuite/g++.old-deja/g++.pt/crash60.C index 3d7eb1c..60f5c4d 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/crash60.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/crash60.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 7 Nov 2000 <nathan@codesourcery.com> @@ -14,5 +14,5 @@ struct S { void f( int ); }; void f() { - k( E(), (S*)0, &S::f ); // ERROR - no match + k( E(), (S*)0, &S::f ); // { dg-error "" } no match } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/crash61.C b/gcc/testsuite/g++.old-deja/g++.pt/crash61.C index 30312c7..2124504 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/crash61.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/crash61.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Source: Neil Booth, from PR # 106. 4 Dec 2000. template <bool b> class bar diff --git a/gcc/testsuite/g++.old-deja/g++.pt/crash62.C b/gcc/testsuite/g++.old-deja/g++.pt/crash62.C index faf97af..b4b90e4 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/crash62.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/crash62.C @@ -1,8 +1,8 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 5 Jan 2001 <nathan@codesourcery.com> // Bug 911, ICE on bogus template declaration -template <class T> class A<T>; // ERROR - not a template +template <class T> class A<T>; // { dg-error "" } not a template diff --git a/gcc/testsuite/g++.old-deja/g++.pt/crash63.C b/gcc/testsuite/g++.old-deja/g++.pt/crash63.C index f88af72..15d26b6 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/crash63.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/crash63.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 10 Jan 2001 <nathan@codesourcery.com> @@ -6,4 +6,4 @@ // Bug 1585. We ICEd on a template template parm with no parms. template<template<class> class C> class B; -template<template<> class C> class D; // ERROR - parse error +template<template<> class C> class D; // { dg-error "" } parse error diff --git a/gcc/testsuite/g++.old-deja/g++.pt/crash64.C b/gcc/testsuite/g++.old-deja/g++.pt/crash64.C index 8949411..d2457e8 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/crash64.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/crash64.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 10 Jan 2001 <nathan@codesourcery.com> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/crash65.C b/gcc/testsuite/g++.old-deja/g++.pt/crash65.C index 2e66d5d..4d5696c 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/crash65.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/crash65.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble { xfail *-*-* } } // Copyright (C) 2000, 2002 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 11 Jan 2001 <nathan@codesourcery.com> @@ -6,8 +6,7 @@ // Bug 1506. We ICE'd on a struct definition inside a template parms. // This is still not completely fixed, but now issues a diagnostic -// crash test - XFAIL *-*-* template<class T = -struct W {}; // ERROR - inside template parms +struct W {}; // { dg-error "" } inside template parms > struct S{}; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/crash66.C b/gcc/testsuite/g++.old-deja/g++.pt/crash66.C index 5bbac5e..cbcef18 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/crash66.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/crash66.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // // Copyright (C) 2001 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 7 May 2001 <nathan@codesourcery.com> @@ -18,7 +18,7 @@ namespace N1 struct D : B<T> { D (T r) - : B (r) // ERROR - no field named B + : B (r) // { dg-error "" } no field named B {} }; } @@ -35,6 +35,6 @@ template<typename T> struct D2 : N1::B<T> { D2 (T r) - : N1::B (r) // ERROR - no field named N1::B + : N1::B (r) // { dg-error "" } no field named N1::B {} }; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/crash67.C b/gcc/testsuite/g++.old-deja/g++.pt/crash67.C index 646763a..6325c72 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/crash67.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/crash67.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: +// { dg-do assemble } +// { dg-options "" } // // Copyright (C) 2001, 2003 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 6 May 2001 <nathan@codesourcery.com> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/crash68.C b/gcc/testsuite/g++.old-deja/g++.pt/crash68.C index b856f22..e665787 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/crash68.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/crash68.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // // Copyright (C) 2001 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 25 Jul 2001 <nathan@codesourcery.com> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/crash7.C b/gcc/testsuite/g++.old-deja/g++.pt/crash7.C index 9ee7b2c..e575bca 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/crash7.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/crash7.C @@ -1,10 +1,10 @@ -// Build don't link: +// { dg-do assemble } class foo { }; -template <class T : public foo> // ERROR - base clause +template <class T : public foo> // { dg-error "" } base clause struct bar { }; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/crash8.C b/gcc/testsuite/g++.old-deja/g++.pt/crash8.C index deff42d..de2dd9d 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/crash8.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/crash8.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template<class T> class TestClass1 { @@ -21,10 +21,10 @@ void doit(T x) { q2 = TestClass2<T>(); TestClass1<T> p1; - p1 = TestClass1(); // ERROR - template used as expression + p1 = TestClass1(); // { dg-error "" } template used as expression TestClass2<T> p2; - p2 = TestClass2(); // ERROR - template used as expression + p2 = TestClass2(); // { dg-error "" } template used as expression } int main() { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/crash9.C b/gcc/testsuite/g++.old-deja/g++.pt/crash9.C index d72699d..dab0e4c 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/crash9.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/crash9.C @@ -1,11 +1,11 @@ -// Build don't link: +// { dg-do assemble } template <class T> -void f(T) {} // ERROR - parameter has incomplete type +void f(T) {} // { dg-error "" } parameter has incomplete type -class C; // ERROR - forward declaration +class C; // { dg-error "" } forward declaration void g(const C& c) { - f(c); // ERROR - invalid use of undefined type + f(c); // { dg-error "" } invalid use of undefined type } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ctor1.C b/gcc/testsuite/g++.old-deja/g++.pt/ctor1.C index 9e36706..c711da6 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/ctor1.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/ctor1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <typename _CharT> struct moneypunct diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ctor2.C b/gcc/testsuite/g++.old-deja/g++.pt/ctor2.C index c2554a2..e7dbfb7 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/ctor2.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/ctor2.C @@ -1,6 +1,6 @@ +// { dg-do assemble } // Test for use of template parms in constructor name. // Submitted by Jason Merrill <jason@cygnus.com> -// Build don't link: template <class T> struct A { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/debug1.C b/gcc/testsuite/g++.old-deja/g++.pt/debug1.C index 81f9424..7746346 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/debug1.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/debug1.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -g +// { dg-do assemble } +// { dg-options "-g" } // Origin: Jim Wilson <wilson@cygnus.com> template<template<class> class _Oper, diff --git a/gcc/testsuite/g++.old-deja/g++.pt/decl1.C b/gcc/testsuite/g++.old-deja/g++.pt/decl1.C index 5814251..34b3b13 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/decl1.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/decl1.C @@ -1,10 +1,11 @@ +// { dg-do assemble } struct S { template <class T> - int f(T), g(T); // ERROR - more than one declarator + int f(T), g(T); // { dg-error "" } more than one declarator }; template <class T> -void x(T), y(T); // ERROR - more than one declarator +void x(T), y(T); // { dg-error "" } more than one declarator template <class T> struct S2 @@ -13,7 +14,7 @@ struct S2 }; template <class T> -int S2<T>::i, S2<T>::j; // ERROR - more than one declarator +int S2<T>::i, S2<T>::j; // { dg-error "" } more than one declarator template <> -int S2<int>::i, S2<double>::i; // ERROR - more than one declarator +int S2<int>::i, S2<double>::i; // { dg-error "" } more than one declarator diff --git a/gcc/testsuite/g++.old-deja/g++.pt/decl2.C b/gcc/testsuite/g++.old-deja/g++.pt/decl2.C index bdb72a8..962af51 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/decl2.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/decl2.C @@ -1,8 +1,7 @@ -// Build don't link: -// crash test - XFAIL *-*-* +// { dg-do assemble { xfail *-*-* } } // Simplified from testcase by Christophe Boyanique <boyan@imac.u-paris2.fr> template <class T> struct foo { foo(); }; template<class T> foo<T>::foo() {} -T; // ERROR - no type +T; // { dg-error "" } no type diff --git a/gcc/testsuite/g++.old-deja/g++.pt/decl3.C b/gcc/testsuite/g++.old-deja/g++.pt/decl3.C index bdc2501..194d9a8 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/decl3.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/decl3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Jason Merrill <jason@cygnus.com> template <class T, class U = int> struct A; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/decl4.C b/gcc/testsuite/g++.old-deja/g++.pt/decl4.C index 29fcea1..94f2939 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/decl4.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/decl4.C @@ -1,8 +1,7 @@ -// Build don't link: -// crash test - +// { dg-do assemble } // by Paul Burchard <burchard@pobox.com>, Level Set Systems, Inc. // Copyright (C) 1999 Free Software Foundation -typedef std::vector<int>::iterator iter; // ERROR - syntax error before `::' +typedef std::vector<int>::iterator iter; // { dg-error "" } syntax error before `::' diff --git a/gcc/testsuite/g++.old-deja/g++.pt/deduct1.C b/gcc/testsuite/g++.old-deja/g++.pt/deduct1.C index a87b2a7..c48fa08 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/deduct1.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/deduct1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template<class CoordinateSystem, class MeshTag> struct Mesh { }; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/deduct2.C b/gcc/testsuite/g++.old-deja/g++.pt/deduct2.C index 9ff204c..5501f36 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/deduct2.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/deduct2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 5 Sept 2000 <nathan@codesourcery.com> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/deduct3.C b/gcc/testsuite/g++.old-deja/g++.pt/deduct3.C index 8b9b76e..b54c5a1 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/deduct3.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/deduct3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 18 Jan 2001 <nathan@codesourcery.com> @@ -12,7 +12,7 @@ template <class T> int Foo (T const *); void Baz (int *p1, int const *p2) { - int i = Foo (p1); // ERROR - cannot convert + int i = Foo (p1); // { dg-error "" } cannot convert int j = Foo (p2); } void Baz (float *p1, float const *p2) diff --git a/gcc/testsuite/g++.old-deja/g++.pt/deduct4.C b/gcc/testsuite/g++.old-deja/g++.pt/deduct4.C index b80a932..02d6b2c 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/deduct4.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/deduct4.C @@ -1,3 +1,4 @@ +// { dg-do run } // Test that we can deduce t even though T is deduced from a later argument. template <int I> struct A { }; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/deduct5.C b/gcc/testsuite/g++.old-deja/g++.pt/deduct5.C index 7c3769c..c295107 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/deduct5.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/deduct5.C @@ -1,3 +1,4 @@ +// { dg-do run } // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 13 Feb 2001 <nathan@codesourcery.com> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/deduct6.C b/gcc/testsuite/g++.old-deja/g++.pt/deduct6.C index 7fcef4e..94c6c66 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/deduct6.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/deduct6.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 13 Feb 2001 <nathan@codesourcery.com> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/deduct7.C b/gcc/testsuite/g++.old-deja/g++.pt/deduct7.C index ec51d30..99f9696 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/deduct7.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/deduct7.C @@ -1,3 +1,4 @@ +// { dg-do run } // Copyright (C) 2001 Free Software Foundation, Inc. // Contributed by Jason Merrill 14 Jun 2001 <jason@redhat.com> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/defarg.C b/gcc/testsuite/g++.old-deja/g++.pt/defarg.C index 314339d..833b98f 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/defarg.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/defarg.C @@ -1,3 +1,4 @@ +// { dg-do run } template <class T> void f(T t, int i = 10); diff --git a/gcc/testsuite/g++.old-deja/g++.pt/defarg10.C b/gcc/testsuite/g++.old-deja/g++.pt/defarg10.C index 02f16b6..bd83052 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/defarg10.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/defarg10.C @@ -1,11 +1,11 @@ -// Build don't link: +// { dg-do assemble } // Origin: Ian Nixon <ian@tharas.com> struct A {}; -template<class M, class T = A, class C> class Tc {}; // ERROR - no defarg +template<class M, class T = A, class C> class Tc {}; // { dg-error "" } no defarg int main () { - Tc<int> oops; // ERROR - using template + Tc<int> oops; // { dg-error "" } using template } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/defarg11.C b/gcc/testsuite/g++.old-deja/g++.pt/defarg11.C index 7026b76..5f189b1 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/defarg11.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/defarg11.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Jason Merrill <jason@cygnus.com> template <class T, class U = int> struct A; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/defarg12.C b/gcc/testsuite/g++.old-deja/g++.pt/defarg12.C index 3c53e8e..8d1da09 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/defarg12.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/defarg12.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Mark Mitchell <mark@codesourcery.com> template <class T = int> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/defarg13.C b/gcc/testsuite/g++.old-deja/g++.pt/defarg13.C index 0f7e84f..83539f5 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/defarg13.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/defarg13.C @@ -1,10 +1,10 @@ -// Build don't link: +// { dg-do assemble } // Origin: Mark Mitchell <mark@codesourcery.com> template <class T> void f (int i) { - struct S { void g (int j = i) {} }; // ERROR - default argument uses local + struct S { void g (int j = i) {} }; // { dg-error "" } default argument uses local S s; } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/defarg14.C b/gcc/testsuite/g++.old-deja/g++.pt/defarg14.C index 7ae4941..c4e2061 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/defarg14.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/defarg14.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Larry Evans <jcampbell3@prodigy.net> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/defarg2.C b/gcc/testsuite/g++.old-deja/g++.pt/defarg2.C index 444ecc4..ff036f1 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/defarg2.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/defarg2.C @@ -1,3 +1,4 @@ +// { dg-do run } template <int S=0, class T=int> struct X {}; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/defarg3.C b/gcc/testsuite/g++.old-deja/g++.pt/defarg3.C index 9a7e046..feb4eae 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/defarg3.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/defarg3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class T> struct S; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/defarg4.C b/gcc/testsuite/g++.old-deja/g++.pt/defarg4.C index 9d5df8c..ddc24c9 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/defarg4.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/defarg4.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class T> struct S1 diff --git a/gcc/testsuite/g++.old-deja/g++.pt/defarg5.C b/gcc/testsuite/g++.old-deja/g++.pt/defarg5.C index facd0b6..661cb8f 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/defarg5.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/defarg5.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <int dim> class Point { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/defarg6.C b/gcc/testsuite/g++.old-deja/g++.pt/defarg6.C index 0094c5c..d5425d1 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/defarg6.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/defarg6.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class T> struct C { @@ -9,7 +9,7 @@ struct C { struct I {}; // OK template <class W = int> - void h(W); // ERROR - default argument + void h(W); // { dg-error "" } default argument template <class Y> void k(Y); @@ -17,11 +17,11 @@ struct C { template <class T> template <class U = double> -void C<T>::f(U) {} // ERROR - default argument +void C<T>::f(U) {} // { dg-error "" } default argument template <class X = void*> -void g(X); // ERROR - default argument +void g(X); // { dg-error "" } default argument template <class T = double> template <class Y> -void C<T>::k(Y) {} // ERROR - default argument +void C<T>::k(Y) {} // { dg-error "" } default argument diff --git a/gcc/testsuite/g++.old-deja/g++.pt/defarg7.C b/gcc/testsuite/g++.old-deja/g++.pt/defarg7.C index 0db043f..5cf0286 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/defarg7.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/defarg7.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <int Dim, class T, class EngineTag> class Engine {}; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/defarg8.C b/gcc/testsuite/g++.old-deja/g++.pt/defarg8.C index b267409..4748e3d 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/defarg8.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/defarg8.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Default arguments containing more than one non-nested explicit // template argument leads to parse error @@ -8,7 +8,7 @@ template <class T, class U> class foo2; struct bar { template <class T, class U> - bar(int i = foo1<T>::baz, // gets bogus error - XFAIL *-*-* + bar(int i = foo1<T>::baz, // { dg-bogus "" "" { xfail *-*-* } } - int j = int(foo2<T, U>::baz), // ok - int k = foo2<T, U>::baz) {} // gets bogus error - before > - XFAIL *-*-* + int k = foo2<T, U>::baz) {} // { dg-bogus "" "" { xfail *-*-* } } - before > - }; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/defarg9.C b/gcc/testsuite/g++.old-deja/g++.pt/defarg9.C index f9de4aa..2f0dbba 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/defarg9.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/defarg9.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Mark Mitchell <mark@codesourcery.com> template <class T = int> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/derived1.C b/gcc/testsuite/g++.old-deja/g++.pt/derived1.C index e2275f4..aebb3d5 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/derived1.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/derived1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } class A { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/derived2.C b/gcc/testsuite/g++.old-deja/g++.pt/derived2.C index 737792c..7335369 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/derived2.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/derived2.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: +// { dg-do assemble } +// { dg-options "" } template <typename T> void f(T); diff --git a/gcc/testsuite/g++.old-deja/g++.pt/derived3.C b/gcc/testsuite/g++.old-deja/g++.pt/derived3.C index 262c1c7..24d2c0d 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/derived3.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/derived3.C @@ -1,5 +1,4 @@ -// Build don't link: -// crash test - +// { dg-do assemble } // by Paul Burchard <burchard@pobox.com>, Level Set Systems, Inc. // Copyright (C) 1999, 2002 Free Software Foundation @@ -7,9 +6,9 @@ template<class T> class X { class Y : public T {}; - Y y; // ERROR - invalid base type + Y y; // { dg-error "" } invalid base type }; int main() { - X<int> x; // ERROR - instantiated + X<int> x; // { dg-error "" } instantiated } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/dynarray.C b/gcc/testsuite/g++.old-deja/g++.pt/dynarray.C index 62371fc..7376f91 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/dynarray.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/dynarray.C @@ -1,7 +1,6 @@ -// Build don't link: -// Special g++ Options: -ansi +// { dg-do assemble } +// { dg-options "" } // Origin: Theo Papadopoulo <Theodore.Papadopoulo@sophia.inria.fr> -// Special g++ Options: inline const unsigned& f(unsigned const& a) { return a; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ehspec1.C b/gcc/testsuite/g++.old-deja/g++.pt/ehspec1.C index ad1f6c5..e75704e 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/ehspec1.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/ehspec1.C @@ -1,6 +1,6 @@ +// { dg-do assemble } // Bug: g++ forgets to instantiate A<int> // Contributed by Jason Merrill <jason@cygnus.com> -// Build don't link: template <class T> struct A { }; void f () throw (A<int>); diff --git a/gcc/testsuite/g++.old-deja/g++.pt/eichin01.C b/gcc/testsuite/g++.old-deja/g++.pt/eichin01.C index 102ab29..bc38065 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/eichin01.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/eichin01.C @@ -1,4 +1,4 @@ -// Build don't run: +// { dg-do link } /* diff --git a/gcc/testsuite/g++.old-deja/g++.pt/eichin01a.C b/gcc/testsuite/g++.old-deja/g++.pt/eichin01a.C index a4c5f16..d1b0c22 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/eichin01a.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/eichin01a.C @@ -1,3 +1,4 @@ +// { dg-do run } template <class X> class TC { public: X aaa; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/eichin01b.C b/gcc/testsuite/g++.old-deja/g++.pt/eichin01b.C index 25f269c..8639575 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/eichin01b.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/eichin01b.C @@ -1,3 +1,4 @@ +// { dg-do run } template <class X> class TC { public: X aaa; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/enum.C b/gcc/testsuite/g++.old-deja/g++.pt/enum.C index 4fe84a4..f2192e7 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/enum.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/enum.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed enums template<class T> struct templ diff --git a/gcc/testsuite/g++.old-deja/g++.pt/enum10.C b/gcc/testsuite/g++.old-deja/g++.pt/enum10.C index 713c11c..b5cf3f3 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/enum10.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/enum10.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class T> struct S { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/enum11.C b/gcc/testsuite/g++.old-deja/g++.pt/enum11.C index 77631c4..d64fab2 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/enum11.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/enum11.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class T> void f1() { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/enum12.C b/gcc/testsuite/g++.old-deja/g++.pt/enum12.C index b1c2b16..595954b 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/enum12.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/enum12.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <int I> struct S1 { }; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/enum13.C b/gcc/testsuite/g++.old-deja/g++.pt/enum13.C index f361c53..1c83647 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/enum13.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/enum13.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Theodore Papadopoulo <Theodore.Papadopoulo@sophia.inria.fr> template <typename T> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/enum14.C b/gcc/testsuite/g++.old-deja/g++.pt/enum14.C index 9607755..2405cc8 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/enum14.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/enum14.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 4 Oct 2000 <nathan@codesourcery.com> // Origin: bug 511 malte.starostik@t-online.de @@ -24,13 +24,13 @@ template <class> struct B { private: - enum foo {bar}; // ERROR - private - typedef int baz; // ERROR - private + enum foo {bar}; // { dg-error "" } private + typedef int baz; // { dg-error "" } private }; struct D: public B<int> { - void choke (foo); // ERROR - within this context - void choke (baz); // ERROR - within this context + void choke (foo); // { dg-error "" } within this context + void choke (baz); // { dg-error "" } within this context }; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/enum2.C b/gcc/testsuite/g++.old-deja/g++.pt/enum2.C index 5a2d7f3..c313970 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/enum2.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/enum2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } struct U { static int STATIC; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/enum3.C b/gcc/testsuite/g++.old-deja/g++.pt/enum3.C index d39da3a..2e43608 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/enum3.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/enum3.C @@ -1,3 +1,4 @@ +// { dg-do run } struct S { enum en { s0, s1, s2 }; }; template<typename S::en e> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/enum4.C b/gcc/testsuite/g++.old-deja/g++.pt/enum4.C index 28f4b29..6e9f1e0 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/enum4.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/enum4.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class T> struct U diff --git a/gcc/testsuite/g++.old-deja/g++.pt/enum5.C b/gcc/testsuite/g++.old-deja/g++.pt/enum5.C index f6feefb..a7c5ea3 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/enum5.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/enum5.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <> -enum E {e}; // ERROR - template declaration of enum +enum E {e}; // { dg-error "" } template declaration of enum diff --git a/gcc/testsuite/g++.old-deja/g++.pt/enum6.C b/gcc/testsuite/g++.old-deja/g++.pt/enum6.C index acfd681..254b48b 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/enum6.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/enum6.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class T> struct vector {}; @@ -8,7 +8,7 @@ void fn(T) { enum tern { H, L, X, U }; - vector<tern> ternvec; // ERROR - composed from a local type + vector<tern> ternvec; // { dg-error "" } composed from a local type } template void fn(int); diff --git a/gcc/testsuite/g++.old-deja/g++.pt/enum7.C b/gcc/testsuite/g++.old-deja/g++.pt/enum7.C index d2ea201..e813761 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/enum7.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/enum7.C @@ -1,3 +1,4 @@ +// { dg-do run } template <int I> int f() { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/enum8.C b/gcc/testsuite/g++.old-deja/g++.pt/enum8.C index e5cc58a..e62428f 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/enum8.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/enum8.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <int I> void f(); diff --git a/gcc/testsuite/g++.old-deja/g++.pt/enum9.C b/gcc/testsuite/g++.old-deja/g++.pt/enum9.C index 5ab8e8b..9bb19da 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/enum9.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/enum9.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <typename _CharT> class _Format_cache diff --git a/gcc/testsuite/g++.old-deja/g++.pt/error1.C b/gcc/testsuite/g++.old-deja/g++.pt/error1.C index 5216a42..c94fd65 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/error1.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/error1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Mark Mitchell <mark@codesourcery.com> template <class T> @@ -13,7 +13,7 @@ template <class T> template <class U> void S<T>::f () { - U& u; // ERROR - uninitialized reference + U& u; // { dg-error "" } uninitialized reference } template void S<int>::f<double>(); diff --git a/gcc/testsuite/g++.old-deja/g++.pt/error2.C b/gcc/testsuite/g++.old-deja/g++.pt/error2.C index 21518aa..2f777af 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/error2.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/error2.C @@ -1,15 +1,15 @@ -// Build don't link: +// { dg-do assemble } // Origin: Carl Nygard <cnygard@bellatlantic.net> template <class RT> -class Test { // ERROR - in instantiation +class Test { // { dg-error "" } in instantiation public: - Test(const RT& c = RT()) {} // ERROR - reference to void + Test(const RT& c = RT()) {} // { dg-error "" } reference to void }; void f () { - Test<void> c; // ERROR - instantiated from here + Test<void> c; // { dg-error "" } instantiated from here } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/error3.C b/gcc/testsuite/g++.old-deja/g++.pt/error3.C index 60a2ad5..a6588c9 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/error3.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/error3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 10 Jan 2001 <nathan@codesourcery.com> @@ -14,5 +14,5 @@ struct B { void foo (B *ptr) { - ptr->Tpl.t (); // ERROR - template as expression + ptr->Tpl.t (); // { dg-error "" } template as expression } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/explarg1.C b/gcc/testsuite/g++.old-deja/g++.pt/explarg1.C index 4a1c66b..b78b483 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/explarg1.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/explarg1.C @@ -1,3 +1,4 @@ +// { dg-do run } // Bug: g++ generates an error trying to generate the first foo<int>, when // it should silently fail and go on to the next one. diff --git a/gcc/testsuite/g++.old-deja/g++.pt/explicit1.C b/gcc/testsuite/g++.old-deja/g++.pt/explicit1.C index d218474..85997b3 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/explicit1.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/explicit1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed templates template <class T> void foo(T t) {} diff --git a/gcc/testsuite/g++.old-deja/g++.pt/explicit10.C b/gcc/testsuite/g++.old-deja/g++.pt/explicit10.C index 7f38f72..b88dfd3 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/explicit10.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/explicit10.C @@ -1,6 +1,6 @@ -// Build don't link: +// { dg-do assemble } +// { dg-options "-ansi -pedantic-errors -w" } // GROUPS passed templates -// Special g++ Options: -ansi -pedantic-errors -w template <class T> void foo(T t); diff --git a/gcc/testsuite/g++.old-deja/g++.pt/explicit11.C b/gcc/testsuite/g++.old-deja/g++.pt/explicit11.C index fb7834f..7f4d85f 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/explicit11.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/explicit11.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed templates template <class T> void foo(T t); diff --git a/gcc/testsuite/g++.old-deja/g++.pt/explicit12.C b/gcc/testsuite/g++.old-deja/g++.pt/explicit12.C index 03355a7..ac8b7c5 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/explicit12.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/explicit12.C @@ -1,5 +1,5 @@ -// Build don't run: -// Special g++ Options: -ansi -pedantic-errors -w +// { dg-do link } +// { dg-options "-ansi -pedantic-errors -w" } // GROUPS passed templates template <class U> struct S diff --git a/gcc/testsuite/g++.old-deja/g++.pt/explicit13.C b/gcc/testsuite/g++.old-deja/g++.pt/explicit13.C index 9391586..a0dbfaa 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/explicit13.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/explicit13.C @@ -1,6 +1,6 @@ -// Build don't run: +// { dg-do link } +// { dg-options "-ansi -pedantic-errors -w" } // GROUPS passed templates -// Special g++ Options: -ansi -pedantic-errors -w template <class U> struct S diff --git a/gcc/testsuite/g++.old-deja/g++.pt/explicit14.C b/gcc/testsuite/g++.old-deja/g++.pt/explicit14.C index aa9d03f..132845d 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/explicit14.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/explicit14.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed templates template <class T> struct S diff --git a/gcc/testsuite/g++.old-deja/g++.pt/explicit15.C b/gcc/testsuite/g++.old-deja/g++.pt/explicit15.C index 290da42..e3d598b 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/explicit15.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/explicit15.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed templates template<int N_rank> class Array; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/explicit16.C b/gcc/testsuite/g++.old-deja/g++.pt/explicit16.C index c7a8733..6ae273a 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/explicit16.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/explicit16.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed templates template<int N_rank> class Array; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/explicit17.C b/gcc/testsuite/g++.old-deja/g++.pt/explicit17.C index 4abd17e..9a83fb0 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/explicit17.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/explicit17.C @@ -1,6 +1,6 @@ -// Build don't link: +// { dg-do assemble } +// { dg-options "-ansi -pedantic-errors -w" } // GROUPS passed templates -// Special g++ Options: -ansi -pedantic-errors -w template <class T, class U> void foo(U u, T t); diff --git a/gcc/testsuite/g++.old-deja/g++.pt/explicit18.C b/gcc/testsuite/g++.old-deja/g++.pt/explicit18.C index b63fc3f..fff27f0 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/explicit18.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/explicit18.C @@ -1,6 +1,6 @@ -// Build don't run: +// { dg-do link } +// { dg-options "-ansi -pedantic-errors -w" } // GROUPS passed templates -// Special g++ Options: -ansi -pedantic-errors -w template <class T> int foo(T t) { return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/explicit19.C b/gcc/testsuite/g++.old-deja/g++.pt/explicit19.C index 3b29403..053629a 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/explicit19.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/explicit19.C @@ -1,6 +1,6 @@ -// Build don't run: +// { dg-do link } +// { dg-options "-ansi -pedantic-errors -w" } // GROUPS passed templates -// Special g++ Options: -ansi -pedantic-errors -w template <class T> int foo(T t); diff --git a/gcc/testsuite/g++.old-deja/g++.pt/explicit2.C b/gcc/testsuite/g++.old-deja/g++.pt/explicit2.C index 7388031..14d9f46 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/explicit2.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/explicit2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed templates template <class T> void foo(T t) {} diff --git a/gcc/testsuite/g++.old-deja/g++.pt/explicit20.C b/gcc/testsuite/g++.old-deja/g++.pt/explicit20.C index 918ff3a..a3feaa6 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/explicit20.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/explicit20.C @@ -1,7 +1,7 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed templates template <class T> T foo(T t); template <> -int foo<char>(char c); // ERROR - does not match any template declaration +int foo<char>(char c); // { dg-error "" } does not match any template declaration diff --git a/gcc/testsuite/g++.old-deja/g++.pt/explicit21.C b/gcc/testsuite/g++.old-deja/g++.pt/explicit21.C index a99a49b..8d22f3e 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/explicit21.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/explicit21.C @@ -1,10 +1,10 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed templates template <class T> T foo(T* t); template <> -int foo<char>(char c); // ERROR - does not match declaration. +int foo<char>(char c); // { dg-error "" } does not match declaration. template <> -int bar<char>(); // ERROR - no template bar. +int bar<char>(); // { dg-error "" } no template bar. diff --git a/gcc/testsuite/g++.old-deja/g++.pt/explicit22.C b/gcc/testsuite/g++.old-deja/g++.pt/explicit22.C index 0f06c53..49b4f74 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/explicit22.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/explicit22.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed templates template <class T, class U> T foo(T t, U* u); diff --git a/gcc/testsuite/g++.old-deja/g++.pt/explicit23.C b/gcc/testsuite/g++.old-deja/g++.pt/explicit23.C index 85fab00..bf6a5263 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/explicit23.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/explicit23.C @@ -1,6 +1,6 @@ -// Build don't run: +// { dg-do link } +// { dg-options "-ansi -pedantic-errors -w" } // GROUPS passed templates -// Special g++ Options: -ansi -pedantic-errors -w template <class T> int foo(T t) { return 1; } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/explicit24.C b/gcc/testsuite/g++.old-deja/g++.pt/explicit24.C index 42f4c3c..855422b 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/explicit24.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/explicit24.C @@ -1,7 +1,7 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed templates template <class T> int foo(T t); -int foo<int>(int i) { return 0; } // ERROR - missing template <> +int foo<int>(int i) { return 0; } // { dg-error "" } missing template <> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/explicit25.C b/gcc/testsuite/g++.old-deja/g++.pt/explicit25.C index 0225216..0175d9f 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/explicit25.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/explicit25.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed templates template <int I> class S {}; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/explicit26.C b/gcc/testsuite/g++.old-deja/g++.pt/explicit26.C index 7d16162..ba50fac 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/explicit26.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/explicit26.C @@ -1,4 +1,4 @@ -// Build don't run: +// { dg-do link } // GROUPS passed templates template <class T> int foo(T t) { return 1; } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/explicit27.C b/gcc/testsuite/g++.old-deja/g++.pt/explicit27.C index a8d8221..3685105 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/explicit27.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/explicit27.C @@ -1,4 +1,4 @@ -// Build don't run: +// { dg-do link } // GROUPS passed templates template <class T> void foo(T t); diff --git a/gcc/testsuite/g++.old-deja/g++.pt/explicit28.C b/gcc/testsuite/g++.old-deja/g++.pt/explicit28.C index 0133f16..79d8dd0 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/explicit28.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/explicit28.C @@ -1,4 +1,4 @@ -// Build don't run: +// { dg-do link } // GROUPS passed templates template <class T> int foo(T t) { return 1; } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/explicit29.C b/gcc/testsuite/g++.old-deja/g++.pt/explicit29.C index a247779..b402cd3 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/explicit29.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/explicit29.C @@ -1,4 +1,4 @@ -// Build don't run: +// { dg-do link } // GROUPS passed templates template <class T> int foo(T) { return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/explicit3.C b/gcc/testsuite/g++.old-deja/g++.pt/explicit3.C index 2a5309f..ef3e1b4 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/explicit3.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/explicit3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed templates template <class T, class U> void foo(T t, U u) {} diff --git a/gcc/testsuite/g++.old-deja/g++.pt/explicit30.C b/gcc/testsuite/g++.old-deja/g++.pt/explicit30.C index 468dd79..d9b51b8 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/explicit30.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/explicit30.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed templates template <class T> void foo(T, T*); diff --git a/gcc/testsuite/g++.old-deja/g++.pt/explicit31.C b/gcc/testsuite/g++.old-deja/g++.pt/explicit31.C index 54f0b6c..e4f6a5b 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/explicit31.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/explicit31.C @@ -1,6 +1,6 @@ -// Build don't run: +// { dg-do link } +// { dg-options "-ansi -pedantic-errors -w" } // GROUPS passed templates -// Special g++ Options: -ansi -pedantic-errors -w template <class T> struct S { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/explicit32.C b/gcc/testsuite/g++.old-deja/g++.pt/explicit32.C index 5942fe7..e8e496f 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/explicit32.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/explicit32.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed templates template <class T> struct S diff --git a/gcc/testsuite/g++.old-deja/g++.pt/explicit33.C b/gcc/testsuite/g++.old-deja/g++.pt/explicit33.C index d9d3b07..c6f5472 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/explicit33.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/explicit33.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed templates template <class T> void foo(T t); diff --git a/gcc/testsuite/g++.old-deja/g++.pt/explicit34.C b/gcc/testsuite/g++.old-deja/g++.pt/explicit34.C index 0aede38..2841ff0 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/explicit34.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/explicit34.C @@ -1,10 +1,10 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed templates template <class T> void foo(T t); template <> -void foo(int) {}; // ERROR - previously defined here. +void foo(int) {}; // { dg-error "" } previously defined here. template <> -void foo<int>(int) {} // ERROR - duplicate specialization. +void foo<int>(int) {} // { dg-error "" } duplicate specialization. diff --git a/gcc/testsuite/g++.old-deja/g++.pt/explicit35.C b/gcc/testsuite/g++.old-deja/g++.pt/explicit35.C index 1aee131..f174e8f 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/explicit35.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/explicit35.C @@ -1,6 +1,6 @@ -// Build don't run: +// { dg-do link } +// { dg-options "-ansi -pedantic-errors -w" } // GROUPS passed templates -// Special g++ Options: -ansi -pedantic-errors -w struct S { template <class T> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/explicit36.C b/gcc/testsuite/g++.old-deja/g++.pt/explicit36.C index 6f9e7c6..4a4f636 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/explicit36.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/explicit36.C @@ -1,4 +1,4 @@ -// Build don't run: +// { dg-do link } // GROUPS passed templates template <class T> void foo(T); diff --git a/gcc/testsuite/g++.old-deja/g++.pt/explicit37.C b/gcc/testsuite/g++.old-deja/g++.pt/explicit37.C index 4d911a4..f3d9f64 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/explicit37.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/explicit37.C @@ -1,4 +1,4 @@ -// Build don't run: +// { dg-do link } // GROUPS passed templates class ostream {}; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/explicit38.C b/gcc/testsuite/g++.old-deja/g++.pt/explicit38.C index 27121b6..e83898f 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/explicit38.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/explicit38.C @@ -1,7 +1,8 @@ +// { dg-do assemble } template <int I> void f(int j); void g() { - f<7, 12>(3); // ERROR - no matching function. + f<7, 12>(3); // { dg-error "" } no matching function. } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/explicit39.C b/gcc/testsuite/g++.old-deja/g++.pt/explicit39.C index 906ef30..a765d7f 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/explicit39.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/explicit39.C @@ -1,7 +1,8 @@ +// { dg-do assemble } template <class T> void f(int i); void g() { - f<7>(3); // ERROR - no matching function. + f<7>(3); // { dg-error "" } no matching function. } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/explicit4.C b/gcc/testsuite/g++.old-deja/g++.pt/explicit4.C index 911e7b3..f7e19d2 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/explicit4.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/explicit4.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed templates template <class T> void foo(T t); diff --git a/gcc/testsuite/g++.old-deja/g++.pt/explicit40.C b/gcc/testsuite/g++.old-deja/g++.pt/explicit40.C index d237924..71807b3 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/explicit40.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/explicit40.C @@ -1,3 +1,4 @@ +// { dg-do run } extern "C" void abort(); template <void* P> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/explicit41.C b/gcc/testsuite/g++.old-deja/g++.pt/explicit41.C index b5ca475..b6a7747 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/explicit41.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/explicit41.C @@ -1,8 +1,9 @@ +// { dg-do assemble } template <int I> void f(int i); void g() { int i; - f<i>(7); // ERROR - template argument 1 is invalid. + f<i>(7); // { dg-error "" } template argument 1 is invalid. } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/explicit42.C b/gcc/testsuite/g++.old-deja/g++.pt/explicit42.C index c19ffd0..770fbbe 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/explicit42.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/explicit42.C @@ -1,3 +1,4 @@ +// { dg-do run } extern "C" void abort(void); template <int I> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/explicit43.C b/gcc/testsuite/g++.old-deja/g++.pt/explicit43.C index 6396f09..199bcc1 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/explicit43.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/explicit43.C @@ -1,3 +1,4 @@ +// { dg-do run } extern "C" void abort(void); void F(int) diff --git a/gcc/testsuite/g++.old-deja/g++.pt/explicit5.C b/gcc/testsuite/g++.old-deja/g++.pt/explicit5.C index 2c2b763..26b5490 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/explicit5.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/explicit5.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed templates template <class T> void foo(T t) {} diff --git a/gcc/testsuite/g++.old-deja/g++.pt/explicit50.C b/gcc/testsuite/g++.old-deja/g++.pt/explicit50.C index 8c424cc..4f11eda 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/explicit50.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/explicit50.C @@ -1,3 +1,4 @@ +// { dg-do run } extern "C" void abort (); template <class T> int f () diff --git a/gcc/testsuite/g++.old-deja/g++.pt/explicit51.C b/gcc/testsuite/g++.old-deja/g++.pt/explicit51.C index e4a0a64..dbac955 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/explicit51.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/explicit51.C @@ -1,3 +1,4 @@ +// { dg-do run } extern "C" void abort (); template <int a> int fact () diff --git a/gcc/testsuite/g++.old-deja/g++.pt/explicit52.C b/gcc/testsuite/g++.old-deja/g++.pt/explicit52.C index 368573e..7118271 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/explicit52.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/explicit52.C @@ -1,3 +1,4 @@ +// { dg-do run } extern "C" void abort (); template <int a> inline int fact () diff --git a/gcc/testsuite/g++.old-deja/g++.pt/explicit53.C b/gcc/testsuite/g++.old-deja/g++.pt/explicit53.C index e66cca9..29c9703 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/explicit53.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/explicit53.C @@ -1,3 +1,4 @@ +// { dg-do run } extern "C" void abort (); template <int a> inline int fact (); diff --git a/gcc/testsuite/g++.old-deja/g++.pt/explicit54.C b/gcc/testsuite/g++.old-deja/g++.pt/explicit54.C index 9d185be..71d8d93 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/explicit54.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/explicit54.C @@ -1,3 +1,4 @@ +// { dg-do run } extern "C" void abort (); template <int a> inline int fact2 (); diff --git a/gcc/testsuite/g++.old-deja/g++.pt/explicit55.C b/gcc/testsuite/g++.old-deja/g++.pt/explicit55.C index c9d3125..c71f9d4 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/explicit55.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/explicit55.C @@ -1,3 +1,4 @@ +// { dg-do run } template <class T> T* create () { return new T; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/explicit56.C b/gcc/testsuite/g++.old-deja/g++.pt/explicit56.C index d202160..f3e3ed3 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/explicit56.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/explicit56.C @@ -1,3 +1,4 @@ +// { dg-do run } template <class T> T* create (); template <class T> T* create2() diff --git a/gcc/testsuite/g++.old-deja/g++.pt/explicit57.C b/gcc/testsuite/g++.old-deja/g++.pt/explicit57.C index d1f0ea8..ba84102 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/explicit57.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/explicit57.C @@ -1,3 +1,4 @@ +// { dg-do run } extern "C" void abort (); int a = 0; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/explicit58.C b/gcc/testsuite/g++.old-deja/g++.pt/explicit58.C index 7193d2d..72f0121 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/explicit58.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/explicit58.C @@ -1,3 +1,4 @@ +// { dg-do run } extern "C" void abort (); template <class T> void f (); diff --git a/gcc/testsuite/g++.old-deja/g++.pt/explicit59.C b/gcc/testsuite/g++.old-deja/g++.pt/explicit59.C index 847a80a..24c0e15 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/explicit59.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/explicit59.C @@ -1,3 +1,4 @@ +// { dg-do run } extern "C" void abort (); template <class T> void f (); diff --git a/gcc/testsuite/g++.old-deja/g++.pt/explicit6.C b/gcc/testsuite/g++.old-deja/g++.pt/explicit6.C index a56c213..ea1f97a 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/explicit6.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/explicit6.C @@ -1,6 +1,6 @@ -// Build don't run: +// { dg-do link } +// { dg-options "-ansi -pedantic-errors -w" } // GROUPS passed templates -// Special g++ Options: -ansi -pedantic-errors -w template <class T> int foo(T t); diff --git a/gcc/testsuite/g++.old-deja/g++.pt/explicit60.C b/gcc/testsuite/g++.old-deja/g++.pt/explicit60.C index 5fda333..7b1f958 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/explicit60.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/explicit60.C @@ -1,3 +1,4 @@ +// { dg-do run } extern "C" void abort (); template <class T> void f (); diff --git a/gcc/testsuite/g++.old-deja/g++.pt/explicit61.C b/gcc/testsuite/g++.old-deja/g++.pt/explicit61.C index 69b7891..73f83a4 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/explicit61.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/explicit61.C @@ -1,3 +1,4 @@ +// { dg-do run } extern "C" void abort (); template <class T> void f (); diff --git a/gcc/testsuite/g++.old-deja/g++.pt/explicit62.C b/gcc/testsuite/g++.old-deja/g++.pt/explicit62.C index 5917ce01..534b4ec 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/explicit62.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/explicit62.C @@ -1,3 +1,4 @@ +// { dg-do run } extern "C" void abort (); template <class T> void f () diff --git a/gcc/testsuite/g++.old-deja/g++.pt/explicit63.C b/gcc/testsuite/g++.old-deja/g++.pt/explicit63.C index ce4d99a..46751a6 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/explicit63.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/explicit63.C @@ -1,3 +1,4 @@ +// { dg-do run } extern "C" void abort (); template <class T> void f () diff --git a/gcc/testsuite/g++.old-deja/g++.pt/explicit64.C b/gcc/testsuite/g++.old-deja/g++.pt/explicit64.C index 2208b30..63a05f6 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/explicit64.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/explicit64.C @@ -1,3 +1,4 @@ +// { dg-do run } extern "C" void abort (); template <class T> void f () diff --git a/gcc/testsuite/g++.old-deja/g++.pt/explicit65.C b/gcc/testsuite/g++.old-deja/g++.pt/explicit65.C index a026e8e..20cda63 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/explicit65.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/explicit65.C @@ -1,3 +1,4 @@ +// { dg-do run } extern "C" void abort (); template <class T> void f () diff --git a/gcc/testsuite/g++.old-deja/g++.pt/explicit66.C b/gcc/testsuite/g++.old-deja/g++.pt/explicit66.C index d4a3c62..2745cce 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/explicit66.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/explicit66.C @@ -1,3 +1,4 @@ +// { dg-do run } void f(int) {} void f(double); diff --git a/gcc/testsuite/g++.old-deja/g++.pt/explicit67.C b/gcc/testsuite/g++.old-deja/g++.pt/explicit67.C index c8705f4..f216a01 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/explicit67.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/explicit67.C @@ -1,3 +1,4 @@ +// { dg-do assemble } struct S { void f(int); @@ -14,7 +15,7 @@ void foo(); void bar() { - foo<S::f>(); // ERROR - no matching function - foo<g>(); // ERROR - no matching function + foo<S::f>(); // { dg-error "" } no matching function + foo<g>(); // { dg-error "" } no matching function } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/explicit68.C b/gcc/testsuite/g++.old-deja/g++.pt/explicit68.C index bc47c6c..efbf0ff 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/explicit68.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/explicit68.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <bool B> struct S diff --git a/gcc/testsuite/g++.old-deja/g++.pt/explicit69.C b/gcc/testsuite/g++.old-deja/g++.pt/explicit69.C index 671cf00..7742e61 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/explicit69.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/explicit69.C @@ -1,2 +1,2 @@ -//Build don't link: -template class x {}; // ERROR - not a template instantiation +// { dg-do assemble } +template class x {}; // { dg-error "" } not a template instantiation diff --git a/gcc/testsuite/g++.old-deja/g++.pt/explicit70.C b/gcc/testsuite/g++.old-deja/g++.pt/explicit70.C index 544faf7..387d2d1 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/explicit70.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/explicit70.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class T> void f(T) {} @@ -12,14 +12,14 @@ template <class T> T S<T>::t; template void f(int); -template void f(int); // ERROR - duplicate explicit instantiation +template void f(int); // { dg-error "" } duplicate explicit instantiation template int S<int>::t; -template int S<int>::t; // ERROR - duplicate explicit instantiation +template int S<int>::t; // { dg-error "" } duplicate explicit instantiation template class S<double>; -template class S<double>; // ERROR - duplicate explicit instantiation +template class S<double>; // { dg-error "" } duplicate explicit instantiation -extern template void f(double); // WARNING - extern not allowed -inline template class S<float>; // WARNING - inline not allowed +extern template void f(double); // { dg-warning "" } extern not allowed +inline template class S<float>; // { dg-warning "" } inline not allowed template <class T> struct S<T*> {}; @@ -40,4 +40,4 @@ template void f(long double); // OK - explicit instantiation after template <class T> void g(T); -template void g(int); // ERROR - no definition of g. +template void g(int); // { dg-error "" } no definition of g. diff --git a/gcc/testsuite/g++.old-deja/g++.pt/explicit71.C b/gcc/testsuite/g++.old-deja/g++.pt/explicit71.C index 23c8d27..25ba9ff 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/explicit71.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/explicit71.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // by Alexandre Oliva <oliva@dcc.unicamp.br> // Based on a testcase by Reid M. Pinchback <reidmp@MIT.EDU> // According to the C++ Standard [temp.expl.spec]/17-18, explicit @@ -11,5 +11,5 @@ class bug { class a {}; }; template <class X> -template <> // ERROR - invalid specialization +template <> // { dg-error "" } invalid specialization class bug<X>::a<char> {}; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/explicit72.C b/gcc/testsuite/g++.old-deja/g++.pt/explicit72.C index 6e3e851..f0e88ac 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/explicit72.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/explicit72.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Contributed by Reid M. Pinchback <reidmp@MIT.EDU> // Adapted by Alexandre Oliva <oliva@dcc.unicamp.br> // plain char, signed char and unsigned char are distinct types diff --git a/gcc/testsuite/g++.old-deja/g++.pt/explicit73.C b/gcc/testsuite/g++.old-deja/g++.pt/explicit73.C index 1dd0f69..1d83e34 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/explicit73.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/explicit73.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // by Alexandre Oliva <oliva@dcc.unicamp.br> @@ -7,9 +7,9 @@ // the template namespace N { - template <class T> class foo; // ERROR - referenced below + template <class T> class foo; // { dg-error "" } referenced below } using namespace N; -template <> class foo<void>; // ERROR - invalid specialization +template <> class foo<void>; // { dg-error "" } invalid specialization diff --git a/gcc/testsuite/g++.old-deja/g++.pt/explicit74.C b/gcc/testsuite/g++.old-deja/g++.pt/explicit74.C index c49d1691..66d481b 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/explicit74.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/explicit74.C @@ -1,3 +1,4 @@ +// { dg-do run } // Reduced from a testcase by Yotam Medini <yotam@avanticorp.com> // egcs 1.1 seems to generate code that deletes a NULL pointer. diff --git a/gcc/testsuite/g++.old-deja/g++.pt/explicit75.C b/gcc/testsuite/g++.old-deja/g++.pt/explicit75.C index 433f0b1..aed69aa 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/explicit75.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/explicit75.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // Test for not complaining about mismatches during unification. -// Build don't link: template <void (*F)(int)> void f(); template <void (*F)(double)> void f(); diff --git a/gcc/testsuite/g++.old-deja/g++.pt/explicit76.C b/gcc/testsuite/g++.old-deja/g++.pt/explicit76.C index 18c161c..03bd912 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/explicit76.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/explicit76.C @@ -1,11 +1,10 @@ -// Build don't link: +// { dg-do assemble { xfail *-*-* } } // Based on bug report by Simon A. Crase <s.crase@ieee.org> -// crash test - XFAIL *-*-* struct foo { template <class T> void bar(); }; -template void foo::bar<void>(); // gets bogus error - ICE - XFAIL *-*-* +template void foo::bar<void>(); // { dg-bogus "" "" { xfail *-*-* } } - ICE - diff --git a/gcc/testsuite/g++.old-deja/g++.pt/explicit77.C b/gcc/testsuite/g++.old-deja/g++.pt/explicit77.C index 5a07f8e..3e2ac1d 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/explicit77.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/explicit77.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <int I, int J, int K> struct S {}; @@ -14,5 +14,5 @@ void g() { S<0, 1, 2> s2; f<0>(s0, s2); - f(s0, s2); // ERROR - no matching function + f(s0, s2); // { dg-error "" } no matching function } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/explicit78.C b/gcc/testsuite/g++.old-deja/g++.pt/explicit78.C index 2375816..34e4c75 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/explicit78.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/explicit78.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <int I> struct A { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/explicit79.C b/gcc/testsuite/g++.old-deja/g++.pt/explicit79.C index 16429ba..9d62ca4 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/explicit79.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/explicit79.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <int I> void f(int (*)[I] = 0); diff --git a/gcc/testsuite/g++.old-deja/g++.pt/explicit8.C b/gcc/testsuite/g++.old-deja/g++.pt/explicit8.C index 777c5d4..6fdb01d 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/explicit8.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/explicit8.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed templates template <class T, class U> void foo(T t, U u); diff --git a/gcc/testsuite/g++.old-deja/g++.pt/explicit80.C b/gcc/testsuite/g++.old-deja/g++.pt/explicit80.C index 2cbdeab..67314b8 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/explicit80.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/explicit80.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // Bug: We were complaining about explicit instantiation of A<T>::B. -// Build don't link: template <class T> struct A diff --git a/gcc/testsuite/g++.old-deja/g++.pt/explicit81.C b/gcc/testsuite/g++.old-deja/g++.pt/explicit81.C index 56b8aac..576ba54 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/explicit81.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/explicit81.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 10 Aug 2000 <nathan@codesourcery.com> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/explicit82.C b/gcc/testsuite/g++.old-deja/g++.pt/explicit82.C index 844ff94..e8423f8 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/explicit82.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/explicit82.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 7 Sep 2000 <nathan@codesourcery.com> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/explicit83.C b/gcc/testsuite/g++.old-deja/g++.pt/explicit83.C index dd6e766..9aa44f5 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/explicit83.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/explicit83.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 7 Sep 2000 <nathan@codesourcery.com> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/explicit9.C b/gcc/testsuite/g++.old-deja/g++.pt/explicit9.C index 908374b..f300603 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/explicit9.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/explicit9.C @@ -1,8 +1,8 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed templates void foo(int); void bar() { - foo<int>(3); // ERROR - foo is not a template. + foo<int>(3); // { dg-error "" } foo is not a template. } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/export1.C b/gcc/testsuite/g++.old-deja/g++.pt/export1.C index 43f7973..53e7e9b 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/export1.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/export1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 17 Nov 2000 <nathan@codesourcery.com> @@ -6,13 +6,13 @@ // bug 721, we died horribly when export was used wrongly struct test { -int export(void); // ERROR - parse error +int export(void); // { dg-error "" } parse error }; -int test::export(void) // ERROR - parse error +int test::export(void) // { dg-error "" } parse error { return 0; } template <class T> class Y; -export template <class T> class X; // WARNING - export not implemented +export template <class T> class X; // { dg-warning "" } export not implemented diff --git a/gcc/testsuite/g++.old-deja/g++.pt/expr1.C b/gcc/testsuite/g++.old-deja/g++.pt/expr1.C index cdb8687..124d265 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/expr1.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/expr1.C @@ -1,3 +1,4 @@ +// { dg-do run } template <int n> class vec { double x[n]; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/expr2.C b/gcc/testsuite/g++.old-deja/g++.pt/expr2.C index d6e5593..22ee4c8 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/expr2.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/expr2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <int I> struct S {}; @@ -8,5 +8,5 @@ void foo(S<J + 2>); void bar() { - foo(S<3>()); // ERROR - no way to deduce J from this. + foo(S<3>()); // { dg-error "" } no way to deduce J from this. } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/expr3.C b/gcc/testsuite/g++.old-deja/g++.pt/expr3.C index 4d77370..c7269f1 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/expr3.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/expr3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <int I> struct S {}; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/expr5.C b/gcc/testsuite/g++.old-deja/g++.pt/expr5.C index 4cb5078..8bf8d42 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/expr5.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/expr5.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class T, int i> struct S1; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/expr6.C b/gcc/testsuite/g++.old-deja/g++.pt/expr6.C index f3db16e..55da97d 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/expr6.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/expr6.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Based on a bug report by tveldhui <tveldhui@extreme.indiana.edu> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/expr7.C b/gcc/testsuite/g++.old-deja/g++.pt/expr7.C index 5fb567b..81d977e 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/expr7.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/expr7.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template<int I> struct A { }; template<int I, int J> int f(A<I+J>); diff --git a/gcc/testsuite/g++.old-deja/g++.pt/expr8.C b/gcc/testsuite/g++.old-deja/g++.pt/expr8.C index 93dc76d..3a5c3dc 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/expr8.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/expr8.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 23 June 2000 <nathan@codesourcery.com> @@ -14,13 +14,13 @@ void f() { C<1> c1; C<1 & 2> c2; -C<1>2> c3; // ERROR - parse error +C<1>2> c3; // { dg-error "" } parse error C<(1>2)> c4; -C<1 & 2>2> c5; // ERROR - parse error +C<1 & 2>2> c5; // { dg-error "" } parse error C<1 & (2>2)> c6; } -template <int i = 3>4 > class X1 {}; // ERROR - parse error -template <int i = 3&&4>0 > class X2 {}; // ERROR - parse error +template <int i = 3>4 > class X1 {}; // { dg-error "" } parse error +template <int i = 3&&4>0 > class X2 {}; // { dg-error "" } parse error template <int i = 3&&4 > class X3 {}; template <int i = (3>4) > class X4 {}; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/extern1.C b/gcc/testsuite/g++.old-deja/g++.pt/extern1.C index 1d4ebb8..91b47c1 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/extern1.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/extern1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Mark Mitchell <mark@codesourcery.com> template <class T> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/fntry1.C b/gcc/testsuite/g++.old-deja/g++.pt/fntry1.C index 17075c5..9a5d993 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/fntry1.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/fntry1.C @@ -1,3 +1,4 @@ +// { dg-do run } // Bug: g++ silently ignores function-try-blocks in templates. // Submitted by Jason Merrill <jason@cygnus.com> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/friend1.C b/gcc/testsuite/g++.old-deja/g++.pt/friend1.C index ba642ba..d177a80 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/friend1.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/friend1.C @@ -1,3 +1,4 @@ +// { dg-do run } template <class T> void f(T); diff --git a/gcc/testsuite/g++.old-deja/g++.pt/friend10.C b/gcc/testsuite/g++.old-deja/g++.pt/friend10.C index bff432b..d784eaf 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/friend10.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/friend10.C @@ -1,3 +1,4 @@ +// { dg-do run } template <class T> void f(T); diff --git a/gcc/testsuite/g++.old-deja/g++.pt/friend11.C b/gcc/testsuite/g++.old-deja/g++.pt/friend11.C index 1aeba3a..04dbf25 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/friend11.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/friend11.C @@ -1,3 +1,4 @@ +// { dg-do assemble } template <class T> class C; @@ -8,7 +9,7 @@ struct S void f(U u) { C<U> cu; - cu.i = 3; // ERROR - S<double>::f<U> is a friend, but this is + cu.i = 3; // { dg-error "" } S<double>::f<U> is a friend, but this is // S<int>::f<double>. } }; @@ -20,7 +21,7 @@ class C template <class U> friend void S<T>::f(U); - int i; // ERROR - private + int i; // { dg-error "" } private }; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/friend12.C b/gcc/testsuite/g++.old-deja/g++.pt/friend12.C index ef9bfc8..0c42751 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/friend12.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/friend12.C @@ -1,3 +1,4 @@ +// { dg-do run } template <class T> class C; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/friend13.C b/gcc/testsuite/g++.old-deja/g++.pt/friend13.C index 251d52a..0bdd477 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/friend13.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/friend13.C @@ -1,3 +1,4 @@ +// { dg-do run } template <class T> class C; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/friend14.C b/gcc/testsuite/g++.old-deja/g++.pt/friend14.C index 4ed5fcc..69491fa 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/friend14.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/friend14.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class U> class S1 diff --git a/gcc/testsuite/g++.old-deja/g++.pt/friend15.C b/gcc/testsuite/g++.old-deja/g++.pt/friend15.C index 8d49f6a..875be81 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/friend15.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/friend15.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } class S1 { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/friend16.C b/gcc/testsuite/g++.old-deja/g++.pt/friend16.C index 7f13e5b..1b51f24 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/friend16.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/friend16.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class T> class S2 diff --git a/gcc/testsuite/g++.old-deja/g++.pt/friend17.C b/gcc/testsuite/g++.old-deja/g++.pt/friend17.C index cb12ce8..ae93cff 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/friend17.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/friend17.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class T> class S2 diff --git a/gcc/testsuite/g++.old-deja/g++.pt/friend18.C b/gcc/testsuite/g++.old-deja/g++.pt/friend18.C index 998e163..4b58f94 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/friend18.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/friend18.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class U> class S1 diff --git a/gcc/testsuite/g++.old-deja/g++.pt/friend20.C b/gcc/testsuite/g++.old-deja/g++.pt/friend20.C index 40d5370..11cb291 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/friend20.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/friend20.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class T = int> struct A; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/friend21.C b/gcc/testsuite/g++.old-deja/g++.pt/friend21.C index d30f29f..762ea9b 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/friend21.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/friend21.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class T> struct A { static void f(); @@ -7,7 +7,7 @@ template <class T> struct A { template <class T> class B { friend class A<T>; - static int i; // ERROR - private + static int i; // { dg-error "" } private }; template <class T> class C @@ -24,7 +24,7 @@ void A<T>::f() B<T>::i = 3; C<T>::i = 3; C<double>::i = 3; - B<double>::i = 3; // ERROR - member `i' is private + B<double>::i = 3; // { dg-error "" } member `i' is private } template void A<int>::f(); diff --git a/gcc/testsuite/g++.old-deja/g++.pt/friend22.C b/gcc/testsuite/g++.old-deja/g++.pt/friend22.C index ed459d7..3dcfa0e 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/friend22.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/friend22.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class T = int> struct S diff --git a/gcc/testsuite/g++.old-deja/g++.pt/friend23.C b/gcc/testsuite/g++.old-deja/g++.pt/friend23.C index 4d37da3..abf6c70 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/friend23.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/friend23.C @@ -1,8 +1,8 @@ -// Build don't link: +// { dg-do assemble } -template <class T = int> // ERROR - original definition +template <class T = int> // { dg-error "" } original definition struct S -{ // ERROR - redefinition of default arg +{ // { dg-error "" } redefinition of default arg template <class U = int> friend class S; }; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/friend24.C b/gcc/testsuite/g++.old-deja/g++.pt/friend24.C index d312b38..5a4116f 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/friend24.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/friend24.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class T> struct S diff --git a/gcc/testsuite/g++.old-deja/g++.pt/friend25.C b/gcc/testsuite/g++.old-deja/g++.pt/friend25.C index f93e73b..405ac80 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/friend25.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/friend25.C @@ -1,15 +1,15 @@ -// Build don't link: +// { dg-do assemble } template <class T> struct A; struct B { template <class U> - friend class A<U>; // ERROR - does not specialize any args + friend class A<U>; // { dg-error "" } does not specialize any args }; struct C { template <class U> - friend class A<U*>; // ERROR - partial specialization + friend class A<U*>; // { dg-error "" } partial specialization }; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/friend26.C b/gcc/testsuite/g++.old-deja/g++.pt/friend26.C index a426f8b..dcc77a4 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/friend26.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/friend26.C @@ -1,6 +1,6 @@ -// Build don't link: +// { dg-do assemble } struct S { - friend void f<>(int); // ERROR - does not match any template + friend void f<>(int); // { dg-error "" } does not match any template }; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/friend27.C b/gcc/testsuite/g++.old-deja/g++.pt/friend27.C index 0f11a49..c23d070 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/friend27.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/friend27.C @@ -1,7 +1,7 @@ -// Build don't link: +// { dg-do assemble } class S { - friend void f<>(int); // ERROR - does not match any template + friend void f<>(int); // { dg-error "" } does not match any template int i; }; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/friend28.C b/gcc/testsuite/g++.old-deja/g++.pt/friend28.C index 84e3994..5e06e21 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/friend28.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/friend28.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } class mystream; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/friend29.C b/gcc/testsuite/g++.old-deja/g++.pt/friend29.C index 7eea653..95cbb0e 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/friend29.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/friend29.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class T> class a; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/friend3.C b/gcc/testsuite/g++.old-deja/g++.pt/friend3.C index 74d0e06..11b4064 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/friend3.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/friend3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class T> void f(T); @@ -7,7 +7,7 @@ class C { friend void f<>(double); - int i; // ERROR - private + int i; // { dg-error "" } private }; @@ -15,7 +15,7 @@ template <class T> void f(T) { C c; - c.i = 3; // ERROR - f<double> is a friend, this is f<int>. + c.i = 3; // { dg-error "" } f<double> is a friend, this is f<int>. } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/friend30.C b/gcc/testsuite/g++.old-deja/g++.pt/friend30.C index 61dd8fc..ed492ed 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/friend30.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/friend30.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class T, class U> struct S { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/friend31.C b/gcc/testsuite/g++.old-deja/g++.pt/friend31.C index 15a380b..071025d 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/friend31.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/friend31.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class T> struct S1 { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/friend32.C b/gcc/testsuite/g++.old-deja/g++.pt/friend32.C index b1f173a..512a69a 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/friend32.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/friend32.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class T, class U> struct S { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/friend33.C b/gcc/testsuite/g++.old-deja/g++.pt/friend33.C index 5feec1a..016be70 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/friend33.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/friend33.C @@ -1,5 +1,5 @@ -// Build don't run: -// Special g++ Options: -g +// { dg-do link } +// { dg-options "-g" } template <class P1> struct S1 diff --git a/gcc/testsuite/g++.old-deja/g++.pt/friend34.C b/gcc/testsuite/g++.old-deja/g++.pt/friend34.C index 56eb80a..5e80ab9 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/friend34.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/friend34.C @@ -1,5 +1,4 @@ -// Build don't link: -// excess errors test +// { dg-do assemble } // This testcase won't fail if class ::foo is forward-declared in the // global namespace, nor if class bar is not a template class. diff --git a/gcc/testsuite/g++.old-deja/g++.pt/friend35.C b/gcc/testsuite/g++.old-deja/g++.pt/friend35.C index c2c22c7..b2cd266 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/friend35.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/friend35.C @@ -1,7 +1,7 @@ -// Build don't link: +// { dg-do assemble } class foo { - friend void bar<int>(int); // ERROR - must be declared first + friend void bar<int>(int); // { dg-error "" } must be declared first }; template <typename T> void bar(T); diff --git a/gcc/testsuite/g++.old-deja/g++.pt/friend36.C b/gcc/testsuite/g++.old-deja/g++.pt/friend36.C index 4a9042a..051803b 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/friend36.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/friend36.C @@ -1,12 +1,12 @@ -// Build don't link: +// { dg-do assemble } template <class T> -void f(T) {} // ERROR - previously defined here +void f(T) {} // { dg-error "" } previously defined here template <class U> struct S { template <class T> - friend void f(T) {} // ERROR - redeclaration + friend void f(T) {} // { dg-error "" } redeclaration }; S<int> si; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/friend37.C b/gcc/testsuite/g++.old-deja/g++.pt/friend37.C index c3ee4c7..a0c65ad 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/friend37.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/friend37.C @@ -1,7 +1,7 @@ -// Build don't link: +// { dg-do assemble } // Simplified from report by Volker Dobler <volker@hugo.physik.uni-konstanz.de> template <class T> class A { - friend int ice<>( int k=0 ); // ERROR - default argument - friend inline int f<>(double); // ERROR - inline + friend int ice<>( int k=0 ); // { dg-error "" } default argument + friend inline int f<>(double); // { dg-error "" } inline }; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/friend38.C b/gcc/testsuite/g++.old-deja/g++.pt/friend38.C index a736301..429e421 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/friend38.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/friend38.C @@ -1,9 +1,9 @@ -// Build don't link: +// { dg-do assemble } // Overly simplified from testcase by "B. K. Oxley" <binkley@bigfoot.com> template<class P, class Q> struct foo { typedef P parent_type; - friend parent_type; // ERROR - template parameters cannot be friends - friend Q; // ERROR - template parameters cannot be friends + friend parent_type; // { dg-error "" } template parameters cannot be friends + friend Q; // { dg-error "" } template parameters cannot be friends }; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/friend39.C b/gcc/testsuite/g++.old-deja/g++.pt/friend39.C index 836c830..986f270 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/friend39.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/friend39.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class T> struct S; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/friend4.C b/gcc/testsuite/g++.old-deja/g++.pt/friend4.C index ea43927..a1b8d32 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/friend4.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/friend4.C @@ -1,3 +1,4 @@ +// { dg-do run } class C { template <class T> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/friend40.C b/gcc/testsuite/g++.old-deja/g++.pt/friend40.C index 90288e8..6460876 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/friend40.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/friend40.C @@ -1,6 +1,6 @@ -// Build don't link: +// { dg-do assemble } +// { dg-options "-Wno-non-template-friend" } // Origin: Jason Merrill <jason@cygnus.com> -// Special g++ Options: -Wno-non-template-friend template<class T> struct A { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/friend41.C b/gcc/testsuite/g++.old-deja/g++.pt/friend41.C index d6b74a0..e3a6c0c 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/friend41.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/friend41.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Mark Mitchell <mark@codesourcery.com> template <class T> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/friend42.C b/gcc/testsuite/g++.old-deja/g++.pt/friend42.C index dcbfd46..3c353e5 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/friend42.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/friend42.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Mark Mitchell <mark@codesourcery.com> template <class T> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/friend43.C b/gcc/testsuite/g++.old-deja/g++.pt/friend43.C index 2597512..5a62efb 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/friend43.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/friend43.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Matt Austern <austern@isolde.engr.sgi.com> class A { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/friend44.C b/gcc/testsuite/g++.old-deja/g++.pt/friend44.C index db403b5..c82c7e7 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/friend44.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/friend44.C @@ -1,7 +1,7 @@ +// { dg-do run } // Test that template friends referring to class template members are // respected. -// excess errors test - XFAIL *-*-* template <class T> struct A { @@ -15,7 +15,7 @@ class B { template <class T> friend int A<T>::f (T); template <class T> friend struct A<T>::AI; - int a; + int a; // { dg-bogus "" "" { xfail *-*-* } } public: B(): a(0) { } }; @@ -23,13 +23,13 @@ public: template <class T> int A<T>::f (T) { B b; - return b.a; + return b.a; // { dg-bogus "" "" { xfail *-*-* } } } template <class T> int A<T>::AI::f (T) { B b; - return b.a; + return b.a; // { dg-bogus "" "" { xfail *-*-* } } } int main () diff --git a/gcc/testsuite/g++.old-deja/g++.pt/friend45.C b/gcc/testsuite/g++.old-deja/g++.pt/friend45.C index 17f8dd5..720dfeba 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/friend45.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/friend45.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 14 Aug 2000 <nathan@codesourcery.com> @@ -7,7 +7,7 @@ template<typename T> struct X { - template<typename D> friend X<D>; // ERROR - friend must use aggr tag + template<typename D> friend X<D>; // { dg-error "" } friend must use aggr tag }; X<int> g; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/friend46.C b/gcc/testsuite/g++.old-deja/g++.pt/friend46.C index d8b33fd..b8695cc 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/friend46.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/friend46.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 2000, 2002 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 17 Nov 2000 <nathan@codesourcery.com> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/friend47.C b/gcc/testsuite/g++.old-deja/g++.pt/friend47.C index 37aa921..66b214d 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/friend47.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/friend47.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 7 Jan 2001 <nathan@codesourcery.com> @@ -8,7 +8,7 @@ class A {}; class B { - template<class T> friend class A; // ERROR - not a template + template<class T> friend class A; // { dg-error "" } not a template }; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/friend48.C b/gcc/testsuite/g++.old-deja/g++.pt/friend48.C index 3e087f1..1e23678 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/friend48.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/friend48.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Mark Mitchell <mark@codesourcery.com> template <class T> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/friend49.C b/gcc/testsuite/g++.old-deja/g++.pt/friend49.C index 3b243f0..745819a 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/friend49.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/friend49.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 2001 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 5 Jun 2001 <nathan@codesourcery.com> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/friend5.C b/gcc/testsuite/g++.old-deja/g++.pt/friend5.C index 516be4d..3feeb68 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/friend5.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/friend5.C @@ -1,3 +1,4 @@ +// { dg-do run } class C { template <class T> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/friend6.C b/gcc/testsuite/g++.old-deja/g++.pt/friend6.C index 5651421..8bb5e02 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/friend6.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/friend6.C @@ -1,3 +1,4 @@ +// { dg-do run } template <class T> void f(T); diff --git a/gcc/testsuite/g++.old-deja/g++.pt/friend7.C b/gcc/testsuite/g++.old-deja/g++.pt/friend7.C index 2962d92..de834bc 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/friend7.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/friend7.C @@ -1,3 +1,4 @@ +// { dg-do run } template <class T> void f(T); diff --git a/gcc/testsuite/g++.old-deja/g++.pt/friend8.C b/gcc/testsuite/g++.old-deja/g++.pt/friend8.C index ffa9122..b87aefe 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/friend8.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/friend8.C @@ -1,3 +1,4 @@ +// { dg-do run } template <class T> class C { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/friend9.C b/gcc/testsuite/g++.old-deja/g++.pt/friend9.C index 63455d0..5eb52b7 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/friend9.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/friend9.C @@ -1,3 +1,4 @@ +// { dg-do run } template <class U> class C { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/goto.C b/gcc/testsuite/g++.old-deja/g++.pt/goto.C index c6c1a56..f138ec2 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/goto.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/goto.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template<class T> void compute(T) { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/goto2.C b/gcc/testsuite/g++.old-deja/g++.pt/goto2.C index a513486..5e4b4f0 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/goto2.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/goto2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Mark Mitchell <mark@codesourcery.com> int i = 1; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/incomplete1.C b/gcc/testsuite/g++.old-deja/g++.pt/incomplete1.C index c08e90c..37c30a4 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/incomplete1.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/incomplete1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 28 Nov 2000 <nathan@codesourcery.com> @@ -6,6 +6,6 @@ // Inspired by by 756. We'd ICE when trying to define a member of an // incomplete template type. -template<class X> struct ObjCount; // ERROR - forward decl +template<class X> struct ObjCount; // { dg-error "" } forward decl -template<class X> int ObjCount<X>::m; // ERROR - undefined type +template<class X> int ObjCount<X>::m; // { dg-error "" } undefined type diff --git a/gcc/testsuite/g++.old-deja/g++.pt/infinite1.C b/gcc/testsuite/g++.old-deja/g++.pt/infinite1.C index 88d3ac5..919445b 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/infinite1.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/infinite1.C @@ -1,11 +1,12 @@ +// { dg-do assemble } +// { dg-options "-ftemplate-depth-10" } // Test for catching infinitely recursive instantiations. // Origin: Jason Merrill <jason@redhat.com> -// Special g++ Options: -ftemplate-depth-10 template <int i> void f() { - f<i+1>(); // ERROR - excessive recursion + f<i+1>(); // { dg-error "" } excessive recursion } // We should never need this specialization because we should issue an diff --git a/gcc/testsuite/g++.old-deja/g++.pt/inherit1.C b/gcc/testsuite/g++.old-deja/g++.pt/inherit1.C index 3fb5656..71269a9 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/inherit1.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/inherit1.C @@ -1,3 +1,4 @@ +// { dg-do run } // Origin: Wolfgang Bangerth <wolf@gaia.iwr.uni-heidelberg.de> int i = 1; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/inherit2.C b/gcc/testsuite/g++.old-deja/g++.pt/inherit2.C index 30cbebe..2ae5672 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/inherit2.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/inherit2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Make sure we make the right unqualified class a friend // See PR c++/4403 @@ -24,8 +24,8 @@ template <class T> class B static T value_AC; }; template <typename T> T B<T>::valueA_AA; -template <typename T> T B<T>::valueA_AC;// ERROR - private - XFAIL *-*-* -template <typename T> T B<T>::value_AC; // gets bogus error - XFAIL *-*-* +template <typename T> T B<T>::valueA_AC;// { dg-error "" "" { xfail *-*-* } } private - +template <typename T> T B<T>::value_AC; // { dg-bogus "" "" { xfail *-*-* } } - // this one is a friend template <class T> struct A<T>::AA @@ -41,7 +41,7 @@ template <class T> struct A<T>::AC { T M () { - return B<T>::valueA_AC; // ERROR - within this context - XFAIL *-*-* + return B<T>::valueA_AC; // { dg-error "" "" { xfail *-*-* } } within this context - } }; @@ -50,7 +50,7 @@ struct AC { int M () { - return B<int>::value_AC; // gets bogus error - XFAIL *-*-* + return B<int>::value_AC; // { dg-bogus "" "" { xfail *-*-* } } - } }; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/inject1.C b/gcc/testsuite/g++.old-deja/g++.pt/inject1.C index 8d35120..05f4ef2 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/inject1.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/inject1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Mark Mitchell <mark@codesourcery.com> template <int I> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/inject2.C b/gcc/testsuite/g++.old-deja/g++.pt/inject2.C index e94ac1c..3437ab1 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/inject2.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/inject2.C @@ -1,6 +1,6 @@ -// Build don't link: +// { dg-do assemble } +// { dg-options "-Wno-non-template-friend" } // Origin: Mark Mitchell <mark@codesourcery.com> -// Special g++ Options: -Wno-non-template-friend template<int I> class C { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/inline1.C b/gcc/testsuite/g++.old-deja/g++.pt/inline1.C index 343cd67..ea028d8 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/inline1.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/inline1.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -O2 -Winline +// { dg-do assemble } +// { dg-options "-O2 -Winline" } // Origin: Mark Mitchell <mark@codesourcery.com> template <class T> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/inline2.C b/gcc/testsuite/g++.old-deja/g++.pt/inline2.C index fcc1d000..1ca2a3c 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/inline2.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/inline2.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -O +// { dg-do assemble } +// { dg-options "-O" } // Origin: Mark Mitchell <mitchell@codesourcery.com> template <class T> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/instantiate1.C b/gcc/testsuite/g++.old-deja/g++.pt/instantiate1.C index b2759bbf..e44b063 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/instantiate1.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/instantiate1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class T> void f(T t) {} diff --git a/gcc/testsuite/g++.old-deja/g++.pt/instantiate10.C b/gcc/testsuite/g++.old-deja/g++.pt/instantiate10.C index 822de9e..7d922a8 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/instantiate10.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/instantiate10.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Neil Booth, from bug report #44 #include <iterator> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/instantiate11.C b/gcc/testsuite/g++.old-deja/g++.pt/instantiate11.C index 7e9af2a..6832d17 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/instantiate11.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/instantiate11.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Neil Booth, from bug report #36 template <typename t> class vect; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/instantiate12.C b/gcc/testsuite/g++.old-deja/g++.pt/instantiate12.C index ce1efe0..ef5572f 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/instantiate12.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/instantiate12.C @@ -1,3 +1,4 @@ +// { dg-do run } // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 14 Nov 2000 <nathan@codesourcery.com> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/instantiate13.C b/gcc/testsuite/g++.old-deja/g++.pt/instantiate13.C index 1fff4a2..efbc937 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/instantiate13.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/instantiate13.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 11 Jan 2001 <nathan@codesourcery.com> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/instantiate2.C b/gcc/testsuite/g++.old-deja/g++.pt/instantiate2.C index a5c6c49..60d5bd5 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/instantiate2.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/instantiate2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template<class T> struct X_two { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/instantiate3.C b/gcc/testsuite/g++.old-deja/g++.pt/instantiate3.C index 62062f7..b40e684 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/instantiate3.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/instantiate3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class T> struct S diff --git a/gcc/testsuite/g++.old-deja/g++.pt/instantiate4.C b/gcc/testsuite/g++.old-deja/g++.pt/instantiate4.C index 296356b..8bbbd5b 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/instantiate4.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/instantiate4.C @@ -1,6 +1,7 @@ +// { dg-do link } +// { dg-options "-frepo -Werror" } // Build then link: -// Special g++ Options: -frepo -Werror // Submitted by Melissa O'Neill <oneill@cs.sfu.ca> // the vtable of Foo<int> wouldn't be generated diff --git a/gcc/testsuite/g++.old-deja/g++.pt/instantiate5.C b/gcc/testsuite/g++.old-deja/g++.pt/instantiate5.C index 70eefcb..70ec412 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/instantiate5.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/instantiate5.C @@ -1,6 +1,5 @@ -// Build don't run: - -// Additional sources: instantiate5.cc instantiate5-main.cc +// { dg-do link } +// { dg-gpp-additional-sources " instantiate5.cc instantiate5-main.cc" } // `global constructors' are given the same name, based on foo(), on // both translation units, which is wrong, because it must be possible diff --git a/gcc/testsuite/g++.old-deja/g++.pt/instantiate6.C b/gcc/testsuite/g++.old-deja/g++.pt/instantiate6.C index 49085c5..a413be3 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/instantiate6.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/instantiate6.C @@ -1,5 +1,6 @@ +// { dg-do link } +// { dg-options "-frepo" } // Build then link: -// Special g++ Options: -frepo // Simplified from testcase by Erez Louidor Lior <s3824888@techst02.technion.ac.il> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/instantiate7.C b/gcc/testsuite/g++.old-deja/g++.pt/instantiate7.C index a142dfa..b014502 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/instantiate7.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/instantiate7.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 2000 Free Software Foundation // Contributed by Nathan Sidwell 6 July 2000 <nathan@codesourcery.com> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/instantiate8.C b/gcc/testsuite/g++.old-deja/g++.pt/instantiate8.C index 5c4945d..ba3b747 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/instantiate8.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/instantiate8.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 2000, 2002 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 14 Nov 2000 <nathan@codesourcery.com> @@ -13,7 +13,7 @@ struct Y void g () { const Y y; - Z z; // ERROR - incomplete + Z z; // { dg-error "" } incomplete } template <int dim> @@ -25,7 +25,7 @@ struct X void h () { const X<2> z; - Z z1; // ERROR - incomplete + Z z1; // { dg-error "" } incomplete } template <int dim> @@ -33,7 +33,7 @@ void f() { const X<dim> x; const X<dim+1> y[3]; - Z z2; // ERROR - incomplete + Z z2; // { dg-error "" } incomplete typedef Z z3; // ok } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/instantiate9.C b/gcc/testsuite/g++.old-deja/g++.pt/instantiate9.C index 37c132e..14c529f 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/instantiate9.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/instantiate9.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 22 Nov 2000 <nathan@codesourcery.com> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/koenig1.C b/gcc/testsuite/g++.old-deja/g++.pt/koenig1.C index 51f7115..03b5858 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/koenig1.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/koenig1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 18 Aug 2000 <nathan@codesourcery.com> @@ -12,11 +12,11 @@ struct A { template <int s> static void g(); template <int s> -void f(); // ERROR - candiate +void f(); // { dg-error "" } candiate static void f_plus () { - foo (f<0>); // ERROR - no match + foo (f<0>); // { dg-error "" } no match foo (g<0>); } }; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/label1.C b/gcc/testsuite/g++.old-deja/g++.pt/label1.C index 964d1d7..a8baa08 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/label1.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/label1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class T> struct S {}; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/link1.C b/gcc/testsuite/g++.old-deja/g++.pt/link1.C index b1991f6..4e31c28 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/link1.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/link1.C @@ -1,4 +1,4 @@ -// Build don't run: +// { dg-do link } // Origin: Mark Mitchell <mark@codesourcery.com> template <class T> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/local1.C b/gcc/testsuite/g++.old-deja/g++.pt/local1.C index 29136ef..d73a030 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/local1.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/local1.C @@ -1,3 +1,4 @@ +// { dg-do run } template <class STRUCT, class MEMBER> inline STRUCT * setback(MEMBER *bp, MEMBER STRUCT::*offset) { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/local2.C b/gcc/testsuite/g++.old-deja/g++.pt/local2.C index 4aafc69..9dee5e5 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/local2.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/local2.C @@ -1,3 +1,4 @@ +// { dg-do run } extern "C" void abort(); template <class T> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/local3.C b/gcc/testsuite/g++.old-deja/g++.pt/local3.C index ea1b386..6c0fe45 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/local3.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/local3.C @@ -1,3 +1,4 @@ +// { dg-do run } extern "C" void abort(); template <class T> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/local4.C b/gcc/testsuite/g++.old-deja/g++.pt/local4.C index 6a7eb341..b199f10 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/local4.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/local4.C @@ -1,3 +1,4 @@ +// { dg-do run } extern "C" void abort(); template <class T> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/local5.C b/gcc/testsuite/g++.old-deja/g++.pt/local5.C index b49525c..f8ead86c 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/local5.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/local5.C @@ -1,3 +1,4 @@ +// { dg-do run } template <class INT> class b { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/local6.C b/gcc/testsuite/g++.old-deja/g++.pt/local6.C index d3f2f4c..c03c6cd 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/local6.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/local6.C @@ -1,3 +1,4 @@ +// { dg-do run } extern "C" void abort(); template <class T> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/local7.C b/gcc/testsuite/g++.old-deja/g++.pt/local7.C index b9f7d19..96b19fc 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/local7.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/local7.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class STRUCT, class MEMBER> inline STRUCT * setback(MEMBER *bp, MEMBER STRUCT::*offset) diff --git a/gcc/testsuite/g++.old-deja/g++.pt/lookup1.C b/gcc/testsuite/g++.old-deja/g++.pt/lookup1.C index 359915c..81417fe 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/lookup1.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/lookup1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class T, class Allocator> struct __vector_alloc_base diff --git a/gcc/testsuite/g++.old-deja/g++.pt/lookup10.C b/gcc/testsuite/g++.old-deja/g++.pt/lookup10.C index f348988..c0b4389 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/lookup10.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/lookup10.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 2000 Free Software Foundation // Contributed by Nathan Sidwell 3 July 2000 <nathan@codesourcery.com> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/lookup2.C b/gcc/testsuite/g++.old-deja/g++.pt/lookup2.C index 169aee0..73c2bbb 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/lookup2.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/lookup2.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: +// { dg-do assemble } +// { dg-options "" } class A { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/lookup3.C b/gcc/testsuite/g++.old-deja/g++.pt/lookup3.C index 9ada72f..5a7a037 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/lookup3.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/lookup3.C @@ -1,3 +1,4 @@ +// { dg-do run } template<class T> class A { public: diff --git a/gcc/testsuite/g++.old-deja/g++.pt/lookup4.C b/gcc/testsuite/g++.old-deja/g++.pt/lookup4.C index fe15252..3fd447c 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/lookup4.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/lookup4.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } void h(int); diff --git a/gcc/testsuite/g++.old-deja/g++.pt/lookup5.C b/gcc/testsuite/g++.old-deja/g++.pt/lookup5.C index e38b222..f3a5d00 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/lookup5.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/lookup5.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } struct B { int i; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/lookup6.C b/gcc/testsuite/g++.old-deja/g++.pt/lookup6.C index ae1f5ca..001fedd 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/lookup6.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/lookup6.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Based on bug report by Miniussi <miniussi@ilog.fr> @@ -10,6 +10,6 @@ template <class T> struct B : public A<T> { // according to [temp.dep.type], `t' and `u' cannot be dependent types, // and so there's no reason to delay lookup to specialization time. void f(t p); // this is ::t [temp.dep]/3 - void f(typename A<T>::t p); // gets bogus error - redefinition - void g(u p); // ERROR - unknown type name + void f(typename A<T>::t p); // { dg-bogus "" } redefinition + void g(u p); // { dg-error "" } unknown type name }; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/lookup7.C b/gcc/testsuite/g++.old-deja/g++.pt/lookup7.C index 9cc0d61..eacdc89 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/lookup7.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/lookup7.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Jason Merrill <jason@cygnus.com> struct A { typedef int B; }; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/lookup8.C b/gcc/testsuite/g++.old-deja/g++.pt/lookup8.C index cc562bf..2c6df55 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/lookup8.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/lookup8.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Mark Mitchell <mark@codesourcery.com> template <class T> @@ -11,5 +11,5 @@ class Y : public X<int> void Y::f() { - X x; // ERROR - X is not a type. + X x; // { dg-error "" } X is not a type. } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/lookup9.C b/gcc/testsuite/g++.old-deja/g++.pt/lookup9.C index d81ffb6..683182c 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/lookup9.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/lookup9.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: "Artem Hodyush" <artem@duma.gov.ru> struct B { int m; }; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/m1.C b/gcc/testsuite/g++.old-deja/g++.pt/m1.C index 7de0e0c..ac60535 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/m1.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/m1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } int f1 () { struct A { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/m2.C b/gcc/testsuite/g++.old-deja/g++.pt/m2.C index 00fdbad..7534673 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/m2.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/m2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } struct A { A() { a = 2; } int a; }; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/m3.C b/gcc/testsuite/g++.old-deja/g++.pt/m3.C index 492b261..788a021 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/m3.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/m3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } struct A { A() { a = 2; } int a; }; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/m4.C b/gcc/testsuite/g++.old-deja/g++.pt/m4.C index bbfb227..19d5bc6 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/m4.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/m4.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } struct A1 { struct B { B(); } b; }; struct A2 { struct B { ~B(); } b; }; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/m5.C b/gcc/testsuite/g++.old-deja/g++.pt/m5.C index e834970..7a78cbe 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/m5.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/m5.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } struct B { struct A { A(); int a; } aa; }; struct A { A(); int a; }; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/m6.C b/gcc/testsuite/g++.old-deja/g++.pt/m6.C index 5d0c81e..8de211c 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/m6.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/m6.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } struct B { struct A { A(); int a; } aa; }; B::A::A () { a = 37; } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/m7.C b/gcc/testsuite/g++.old-deja/g++.pt/m7.C index 06d2ba3..1615a49 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/m7.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/m7.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } struct B { struct A { A(); int a; }; A aa; }; B::A::A () { a = 37; } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/m8.C b/gcc/testsuite/g++.old-deja/g++.pt/m8.C index 22d0144..f876233 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/m8.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/m8.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } class A { int a; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/m9.C b/gcc/testsuite/g++.old-deja/g++.pt/m9.C index d519dbd..1fd5a3a 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/m9.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/m9.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } struct A { A() { a = 1; } int a; }; struct Q { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/m9a.C b/gcc/testsuite/g++.old-deja/g++.pt/m9a.C index 9118306..05d2484 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/m9a.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/m9a.C @@ -1,5 +1,5 @@ -// Build don't link: +// { dg-do assemble } -struct A { A() { a = 1; } int a; }; // ERROR - -struct A { A() { a = 2; } int a; }; // ERROR - +struct A { A() { a = 1; } int a; }; // { dg-error "" } +struct A { A() { a = 2; } int a; }; // { dg-error "" } A aavv; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/mangle1.C b/gcc/testsuite/g++.old-deja/g++.pt/mangle1.C index fdebc0c..d7be4fb 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/mangle1.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/mangle1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Mark Mitchell <mark@codesourcery.com> typedef enum {} i; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/mangle2.C b/gcc/testsuite/g++.old-deja/g++.pt/mangle2.C index a7b95b1..1bd0e13 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/mangle2.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/mangle2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // // Copyright (C) 2001 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 25 April 2001 <nathan@codesourcery.com> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memclass1.C b/gcc/testsuite/g++.old-deja/g++.pt/memclass1.C index 5ad839c..e1d748a 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memclass1.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memclass1.C @@ -1,3 +1,4 @@ +// { dg-do run } template <class T> struct A { template <class U> struct B { template <class V> void f (V) { } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memclass10.C b/gcc/testsuite/g++.old-deja/g++.pt/memclass10.C index 1deb380..92bd3d3 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memclass10.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memclass10.C @@ -1,10 +1,10 @@ -// Build don't link: +// { dg-do assemble } struct S1 { template <class T> - struct S2 {}; // ERROR - previous definition + struct S2 {}; // { dg-error "" } previous definition template <class T> - struct S2 {}; // ERROR - redefinition + struct S2 {}; // { dg-error "" } redefinition }; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memclass11.C b/gcc/testsuite/g++.old-deja/g++.pt/memclass11.C index 6eee67a..47e52c4 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memclass11.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memclass11.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } struct S1 { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memclass12.C b/gcc/testsuite/g++.old-deja/g++.pt/memclass12.C index f4d0354..330416a 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memclass12.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memclass12.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } struct outer { template <class T> struct inner; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memclass13.C b/gcc/testsuite/g++.old-deja/g++.pt/memclass13.C index 7eddc27..39a3d97 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memclass13.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memclass13.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class X, class Y> struct Inner; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memclass14.C b/gcc/testsuite/g++.old-deja/g++.pt/memclass14.C index ad1b2b4..d6dc5e0 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memclass14.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memclass14.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class X, class Y> struct Inner; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memclass15.C b/gcc/testsuite/g++.old-deja/g++.pt/memclass15.C index 52f92bf..fd68256 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memclass15.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memclass15.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class T> struct S1 diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memclass16.C b/gcc/testsuite/g++.old-deja/g++.pt/memclass16.C index e8e5643..9528a2c 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memclass16.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memclass16.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class Q> class A { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memclass17.C b/gcc/testsuite/g++.old-deja/g++.pt/memclass17.C index 96024e2..0750ded 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memclass17.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memclass17.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class T> struct S { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memclass18.C b/gcc/testsuite/g++.old-deja/g++.pt/memclass18.C index bb7f6f1..df9a129 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memclass18.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memclass18.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class T> struct A { template <class U> struct B; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memclass19.C b/gcc/testsuite/g++.old-deja/g++.pt/memclass19.C index 6a8b0a7..d345e58 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memclass19.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memclass19.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class T> struct A { template <class U> struct B; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memclass2.C b/gcc/testsuite/g++.old-deja/g++.pt/memclass2.C index 895fd61..bfad596 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memclass2.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memclass2.C @@ -1,3 +1,4 @@ +// { dg-do run } template <class T> struct A { template <class U> struct B { template <class V> void f (V) { } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memclass20.C b/gcc/testsuite/g++.old-deja/g++.pt/memclass20.C index 3f456e6..f543be6 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memclass20.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memclass20.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Mark Mitchell <mark@codesourcery.com> template <class X, class Y> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memclass21.C b/gcc/testsuite/g++.old-deja/g++.pt/memclass21.C index a3217e6..7ac87a7 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memclass21.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memclass21.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: <Corey Kosak> kosak@cs.cmu.edu struct moo { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memclass3.C b/gcc/testsuite/g++.old-deja/g++.pt/memclass3.C index 77744f8..d2f0449 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memclass3.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memclass3.C @@ -1,3 +1,4 @@ +// { dg-do run } template <class T> struct A { template <class U> struct B { template <class V> struct C { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memclass4.C b/gcc/testsuite/g++.old-deja/g++.pt/memclass4.C index 4c101c6..04e3ace 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memclass4.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memclass4.C @@ -1,3 +1,4 @@ +// { dg-do run } #include <typeinfo> template <class T> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memclass5.C b/gcc/testsuite/g++.old-deja/g++.pt/memclass5.C index 5a0c037..95dffba 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memclass5.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memclass5.C @@ -1,3 +1,4 @@ +// { dg-do run } template <class T> struct A { template <class U> struct B { template <class V> static void f () { } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memclass6.C b/gcc/testsuite/g++.old-deja/g++.pt/memclass6.C index 65de1d1..b462b92 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memclass6.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memclass6.C @@ -1,3 +1,4 @@ +// { dg-do run } // Compiler: egcs-2.91.12 980302 // Error: compiler error in ctor of 'foo::bar<T>::bar(T const &)' diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memclass7.C b/gcc/testsuite/g++.old-deja/g++.pt/memclass7.C index 1ae4230..ec9c58c 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memclass7.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memclass7.C @@ -1,4 +1,5 @@ -// Special g++ Options: -ansi -pedantic-errors -w +// { dg-do run } +// { dg-options "-ansi -pedantic-errors -w" } struct S { template <class U> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memclass8.C b/gcc/testsuite/g++.old-deja/g++.pt/memclass8.C index 431d41d..1e757e7 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memclass8.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memclass8.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class T> class S diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memclass9.C b/gcc/testsuite/g++.old-deja/g++.pt/memclass9.C index 824ee76..0795d69 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memclass9.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memclass9.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class T> struct S1 diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp1.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp1.C index 94274e5..5aa83dd 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp1.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed templates membertemplates struct S { template <class T> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp10.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp10.C index 9e97b5e..d97f949 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp10.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp10.C @@ -1,4 +1,4 @@ -// Build don't run: +// { dg-do link } // GROUPS passed templates membertemplates extern "C" int printf(const char*, ...); diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp100.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp100.C index c88c3e7..c049523 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp100.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp100.C @@ -1,6 +1,6 @@ -// Build don't link: +// { dg-do assemble } +// { dg-options "" } // Origin: philippeb@videotron.ca -// Special g++ Options: #include <iostream> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp11.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp11.C index a0d681d..8e8c3c1 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp11.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp11.C @@ -1,4 +1,4 @@ -// Build don't run: +// { dg-do link } // GROUPS passed templates membertemplates extern "C" int printf(const char*, ...); diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp12.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp12.C index 94a8c3c..b390bec 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp12.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp12.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed templates membertemplates template <class T> struct S diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp13.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp13.C index d6bc7b9..3a19f65 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp13.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp13.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed templates membertemplates template <class T> struct S diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp14.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp14.C index 39c44ef..015aa25 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp14.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp14.C @@ -1,4 +1,4 @@ -// Build don't run: +// { dg-do link } // GROUPS passed templates membertemplates extern "C" int printf (const char *, ...); diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp15.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp15.C index 140730b..b9b6987 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp15.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp15.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed templates membertemplates template <class T> struct S diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp16.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp16.C index cfa66aa..c5597ea 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp16.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp16.C @@ -1,4 +1,4 @@ -// Build don't run: +// { dg-do link } // GROUPS passed templates membertemplates extern "C" int printf(const char*, ...); diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp17.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp17.C index 0816b36..4e84424 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp17.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp17.C @@ -1,4 +1,4 @@ -// Build don't run: +// { dg-do link } // GROUPS passed templates membertemplates extern "C" int printf(const char*, ...); diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp18.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp18.C index 638e5e3..b51f4db 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp18.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp18.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed templates membertemplates struct S { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp19.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp19.C index 8551531..2f9dec9 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp19.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp19.C @@ -1,4 +1,4 @@ -// Build don't run: +// { dg-do link } // GROUPS passed templates membertemplates extern "C" int printf(const char*, ...); diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp2.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp2.C index e000ffa..5c870fe 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp2.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed templates membertemplates struct S { template <class T> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp20.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp20.C index a79c534..0295c97 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp20.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp20.C @@ -1,4 +1,4 @@ -// Build don't run: +// { dg-do link } // GROUPS passed templates membertemplates extern "C" int printf(const char*, ...); diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp23.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp23.C index 5310b62..3111f41 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp23.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp23.C @@ -1,4 +1,4 @@ -// Build don't run: +// { dg-do link } // GROUPS passed templates membertemplates extern "C" int printf(const char*, ...); diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp24.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp24.C index b1bfac1..4e81d01 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp24.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp24.C @@ -1,4 +1,4 @@ -// Build don't run: +// { dg-do link } // GROUPS passed templates membertemplates extern "C" int printf(const char*, ...); diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp25.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp25.C index 672a9c8..6c196f5 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp25.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp25.C @@ -1,4 +1,4 @@ -// Build don't run: +// { dg-do link } // GROUPS passed templates membertemplates extern "C" int printf(const char*, ...); diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp26.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp26.C index cbfc93e..3eb5f28 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp26.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp26.C @@ -1,4 +1,4 @@ -// Build don't run: +// { dg-do link } // GROUPS passed templates membertemplates extern "C" int printf(const char*, ...); diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp27.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp27.C index b1bfac1..4e81d01 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp27.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp27.C @@ -1,4 +1,4 @@ -// Build don't run: +// { dg-do link } // GROUPS passed templates membertemplates extern "C" int printf(const char*, ...); diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp28.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp28.C index 37e79c8..4be565a 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp28.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp28.C @@ -1,3 +1,4 @@ +// { dg-do run } extern "C" void abort(); int k; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp29.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp29.C index 4000070..c14ca23 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp29.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp29.C @@ -1,4 +1,4 @@ -// Build don't run: +// { dg-do link } // GROUPS passed templates membertemplates extern "C" int printf(const char*, ...); diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp3.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp3.C index 2a4dbb85..c3b7853 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp3.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp3.C @@ -1,4 +1,4 @@ -// Build don't run: +// { dg-do link } // GROUPS passed templates membertemplates extern "C" int printf(const char*, ...); diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp30.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp30.C index 923ec85..6a24d2e 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp30.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp30.C @@ -1,4 +1,4 @@ -// Build don't run: +// { dg-do link } // GROUPS passed templates membertemplates extern "C" int printf(const char*, ...); diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp31.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp31.C index 3bb1cd3..ad66887 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp31.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp31.C @@ -1,4 +1,4 @@ -// Build don't run: +// { dg-do link } // GROUPS passed templates membertemplates extern "C" int printf(const char*, ...); diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp32.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp32.C index 3f0bfc7..6dca7e5 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp32.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp32.C @@ -1,4 +1,4 @@ -// Build don't run: +// { dg-do link } // GROUPS passed templates membertemplates extern "C" int printf(const char*, ...); diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp33.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp33.C index 500abe0..917da1e 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp33.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp33.C @@ -1,4 +1,4 @@ -// Build don't run: +// { dg-do link } // GROUPS passed templates membertemplates extern "C" int printf(const char*, ...); diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp34.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp34.C index 29e1101..178bace 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp34.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp34.C @@ -1,4 +1,4 @@ -// Build don't run: +// { dg-do link } // GROUPS passed templates membertemplates template <class T> struct S diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp35.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp35.C index 7603d94..11cc223 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp35.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp35.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed templates membertemplates template <class T> struct S diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp36.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp36.C index 6c57a97..ab035a7 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp36.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp36.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed templates membertemplates template <class X> struct R diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp37.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp37.C index 186083b..6299b0d 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp37.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp37.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed templates membertemplates template <class T> struct S diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp39.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp39.C index 146d329..f74deb4 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp39.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp39.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed templates membertemplates template <class T> struct S diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp4.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp4.C index b9f9c16..9dca76a 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp4.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp4.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed templates membertemplates struct S { template <class T> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp40.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp40.C index 70506f0..40ae3e6 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp40.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp40.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed templates membertemplates template <class T> struct R diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp41.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp41.C index 603f702..539b845 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp41.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp41.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed templates membertemplates template <int i> struct S diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp42.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp42.C index 3c11dd4..ea68f49 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp42.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp42.C @@ -1,4 +1,4 @@ -// Build don't run: +// { dg-do link } // GROUPS passed templates membertemplates template<class T, int N> class Foo { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp43.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp43.C index 3d8e3ad..4173171 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp43.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp43.C @@ -1,4 +1,4 @@ -// Build don't run: +// { dg-do link } // GROUPS passed templates membertemplates template<class T, int N> class A diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp44.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp44.C index c8d6f16..a4a37df 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp44.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp44.C @@ -1,4 +1,4 @@ -// Build don't run: +// { dg-do link } // GROUPS passed templates membertemplates template<class T> class A diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp45.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp45.C index d71f25d..935e862 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp45.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp45.C @@ -1,4 +1,4 @@ -// Build don't run: +// { dg-do link } // GROUPS passed templates membertemplates template<class T> class A diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp46.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp46.C index 2212a52..6afbc65 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp46.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp46.C @@ -1,4 +1,4 @@ -// Build don't run: +// { dg-do link } // GROUPS passed templates membertemplates template<class T, class U> class A diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp47.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp47.C index e4f7ebf..7ed5a24 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp47.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp47.C @@ -1,4 +1,4 @@ -// Build don't run: +// { dg-do link } // GROUPS passed templates membertemplates extern "C" int printf(const char*, ...); diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp48.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp48.C index 8ce6f66..619ca66 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp48.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp48.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed templates membertemplates struct S { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp49.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp49.C index f2d610f..381510b 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp49.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp49.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed templates membertemplates template <class X> struct S diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp5.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp5.C index 14647a3..faff687 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp5.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp5.C @@ -1,4 +1,4 @@ -// Build don't run: +// { dg-do link } // GROUPS passed templates membertemplates extern "C" int printf(const char*, ...); diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp52.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp52.C index 25dc7e7..f8ae906 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp52.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp52.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed templates membertemplates template<class T, int N> class A { }; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp53.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp53.C index 4fd65b9..688f480 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp53.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp53.C @@ -1,4 +1,4 @@ -// Build don't run: +// { dg-do link } // GROUPS passed templates membertemplates template<int N> struct I { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp55.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp55.C index b955189..5c79919 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp55.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp55.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed templates membertemplates template<class X> class _bz_update { }; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp56.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp56.C index ef6b286..2000a35 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp56.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp56.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed templates membertemplates template<class P_numtype, int N_length> class TinyVector {}; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp58.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp58.C index 38c2953..78111c7 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp58.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp58.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed templates membertemplates template<int N, class T> struct B { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp59.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp59.C index fbdc0d8..4ac85f5 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp59.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp59.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed templates membertemplates template <int N> struct IndexPlaceholder {}; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp6.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp6.C index 6989a7d..d7675cb 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp6.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp6.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed templates membertemplates struct S { template <class T, class U> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp60.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp60.C index 7358d72..d0d5b0b 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp60.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp60.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed membertemplates template <class T> struct S diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp61.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp61.C index 1fdb055..2e65e81 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp61.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp61.C @@ -1,4 +1,4 @@ -// Build don't run: +// { dg-do link } // GROUPS passed membertemplates struct S { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp62.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp62.C index 8cfadef..d25ddfa 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp62.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp62.C @@ -1,4 +1,4 @@ -// Build don't run: +// { dg-do link } // GROUPS passed membertemplates struct S { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp63.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp63.C index 4f793d4..62a52a1 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp63.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp63.C @@ -1,3 +1,4 @@ +// { dg-do run } template <class T> struct A { template <class U> void f (U u); }; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp64.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp64.C index 6185d3d..dda0a63 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp64.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp64.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class T> struct S1 {}; @@ -10,7 +10,7 @@ template <class C> struct S2 { template <class T> - void f<S1<T> >(T) {} // ERROR - bad specialization. + void f<S1<T> >(T) {} // { dg-error "" } bad specialization. }; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp65.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp65.C index ef49d84..76eab7f 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp65.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp65.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template<unsigned int n> struct PartialDotProduct { template<class T> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp66.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp66.C index d7c1f57..b6e8b6f 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp66.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp66.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class T> struct S diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp67.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp67.C index 7170c90..1f25dcd 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp67.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp67.C @@ -1,3 +1,4 @@ +// { dg-do run } template <class T> struct A { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp68.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp68.C index 96a0814..63a7014 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp68.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp68.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } struct locale { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp69.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp69.C index 4c9a2a9..9b47d44 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp69.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp69.C @@ -1,3 +1,4 @@ +// { dg-do run } struct S { template <class T> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp7.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp7.C index 2dee058..02b1fc6 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp7.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp7.C @@ -1,4 +1,4 @@ -// Build don't run: +// { dg-do link } // GROUPS passed templates membertemplates extern "C" int printf(const char*, ...); diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp70.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp70.C index 2a9fe8a..8873a39 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp70.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp70.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class T> class X { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp71.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp71.C index 38cf5c7..74149a0 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp71.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp71.C @@ -1,6 +1,6 @@ -// Build don't link: +// { dg-do assemble } class A { - template<class T>T epsilon; // ERROR - invalid member template + template<class T>T epsilon; // { dg-error "" } invalid member template }; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp72.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp72.C index 52332c6..26bd4bc 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp72.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp72.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template<class P> struct B { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp73.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp73.C index 5732d49..5580d90 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp73.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp73.C @@ -1,3 +1,4 @@ +// { dg-do run } template <class T> struct A { template <class U> void f(U); }; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp74.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp74.C index e99103f..1b64a65 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp74.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp74.C @@ -1,21 +1,21 @@ -// Build don't link: +// { dg-do assemble } template <class T> class S { protected: template <class U> - void f(U); // ERROR - is protected + void f(U); // { dg-error "" } is protected private: template <class U> - void g(U); // ERROR - is private + void g(U); // { dg-error "" } is private }; void f() { S<double> s; - s.f(3); // ERROR - within this context - s.g(2.0); // ERROR - within this context + s.f(3); // { dg-error "" } within this context + s.g(2.0); // { dg-error "" } within this context } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp75.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp75.C index d9a58e5..54e8bc7 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp75.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp75.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } void print(const int& i) diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp76.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp76.C index b202851..e11fe02 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp76.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp76.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } class base { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp77.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp77.C index d8d70c5..e3ca529 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp77.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp77.C @@ -1,3 +1,4 @@ +// { dg-do run } extern "C" int strcmp(const char*, const char*); template <class T> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp78.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp78.C index 945e7ff..cd54f3a 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp78.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp78.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } struct A { @@ -26,7 +26,7 @@ struct C void f() {} template <class U> - void f() {} // ERROR - redeclaration + void f() {} // { dg-error "" } redeclaration }; @@ -43,7 +43,7 @@ template <class T, class U> struct D2 { void f(T); - void f(U); // ERROR - redeclaration + void f(U); // { dg-error "" } redeclaration }; template struct D2<int, int>; @@ -51,6 +51,6 @@ template struct D2<int, int>; struct E { void f(); - void f(); // ERROR - redeclaration + void f(); // { dg-error "" } redeclaration }; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp79.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp79.C index a46f309..7d31184 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp79.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp79.C @@ -1,6 +1,6 @@ -// Build don't link: +// { dg-do assemble } struct foo { template<typename T> static void bar( foo* ); - template<typename T> void bar() const; // gets bogus error - quals + template<typename T> void bar() const; // { dg-bogus "" } quals }; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp8.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp8.C index 1bf0890..d2b0e86 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp8.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp8.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // GROUPS passed templates membertemplates struct S { template <class T> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp80.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp80.C index 61a2fb8..878a3df 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp80.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp80.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template<typename T> T baz() { return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp81.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp81.C index 73a7a7e..37a3417 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp81.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp81.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <int i> class a { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp82.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp82.C index d4bb37a..2bb6552 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp82.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp82.C @@ -1,5 +1,4 @@ -// Build don't link: -// excess errors test +// { dg-do assemble } struct foo { template<typename T> T bar() { return staticbar<T>( this ); } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp83.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp83.C index 69ab948..f73436c 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp83.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp83.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Corey Kosak <kosak@cs.cmu.edu> struct cow_t { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp84.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp84.C index 15246c5..6ebade2 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp84.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp84.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 1999 Free Software Foundation @@ -10,9 +10,9 @@ struct B { } b; template <class T> void foo() { - b.bar<T>(); // gets bogus error - bar undeclared - b.template bar<T>(); // gets bogus error - ditto + b.bar<T>(); // { dg-bogus "" } bar undeclared + b.template bar<T>(); // { dg-bogus "" } ditto b.B::bar<T>(); } -template void foo<void>(); // gets bogus error +template void foo<void>(); // { dg-bogus "" } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp85.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp85.C index ab9b9f6..de3f4e5 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp85.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp85.C @@ -1,5 +1,4 @@ -// Build don't link: -// crash test - XFAIL *-*-* +// { dg-do assemble { xfail *-*-* } } // by Paul Burchard <burchard@pobox.com>, Level Set Systems, Inc. // Copyright (C) 1999 Free Software Foundation diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp86.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp86.C index fe06dae..ea47bc2 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp86.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp86.C @@ -1,5 +1,4 @@ -// Build don't link: -// crash test - XFAIL *-*-* +// { dg-do assemble { xfail *-*-* } } // by Paul Burchard <burchard@pobox.com>, Level Set Systems, Inc. // Copyright (C) 1999 Free Software Foundation @@ -12,5 +11,5 @@ struct Q { template<template<class> class> class Y { }; -Y<typename Q::X> y; // ERROR - typename out of template context +Y<typename Q::X> y; // { dg-error "" } typename out of template context diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp87.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp87.C index 7632049..9c1aa4c 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp87.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp87.C @@ -1,5 +1,4 @@ -// Build don't link: -// crash test - XFAIL *-*-* +// { dg-do assemble { xfail *-*-* } } // by Paul Burchard <burchard@pobox.com>, Level Set Systems, Inc. // Copyright (C) 1999, 2002 Free Software Foundation @@ -13,5 +12,5 @@ public: template<template<class> class> class Y { }; -Q::template X<int> x; // ERROR - template syntax +Q::template X<int> x; // { dg-error "" } template syntax diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp88.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp88.C index 56dab46..3968977 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp88.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp88.C @@ -1,5 +1,4 @@ -// Build don't link: -// crash test - XFAIL *-*-* +// { dg-do assemble { xfail *-*-* } } // by Paul Burchard <burchard@pobox.com>, Level Set Systems, Inc. // Copyright (C) 1999 Free Software Foundation @@ -8,9 +7,9 @@ struct Q { template<class> class X { }; - template<template<class> class XX = X> // gets bogus error - (original definition appeared here) + template<template<class> class XX = X> // { dg-bogus "" } (original definition appeared here) class Y { - }; // gets bogus error - redefinition of default argument for `template <class> XX' + }; // { dg-bogus "" } redefinition of default argument for `template <class> XX' Y<> y; }; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp89.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp89.C index 8564221..d4d560e 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp89.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp89.C @@ -1,15 +1,15 @@ -// Build don't link: +// { dg-do assemble } // by Paul Burchard <burchard@pobox.com>, Level Set Systems, Inc. // Copyright (C) 1999, 2000 Free Software Foundation class Q { template<class T> - class X { // ERROR - Q::X private + class X { // { dg-error "" } Q::X private }; }; template<template<class> class XX> class Y { XX<int> x_; }; -Y<Q::X> y; // ERROR - instantiated from here +Y<Q::X> y; // { dg-error "" } instantiated from here diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp9.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp9.C index 943dbfb..5522d94 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp9.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp9.C @@ -1,4 +1,4 @@ -// Build don't run: +// { dg-do link } // GROUPS passed templates membertemplates extern "C" int printf(const char*, ...); diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp90.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp90.C index 15dcca7..3e24a68 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp90.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp90.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // regression test - // by Paul Burchard <burchard@pobox.com>, Level Set Systems, Inc. @@ -11,7 +11,7 @@ struct A { }; template<class T> struct C { - B<T> b; // gets bogus error - B is not a template + B<T> b; // { dg-bogus "" } B is not a template // but removing wrapper A gets rid of complaint // also, replacing B<T> with A::B<T> also gets rid of complaint }; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp91.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp91.C index be97e9f..802d31d 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp91.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp91.C @@ -1,5 +1,4 @@ -// Build don't link: -// crash test - XFAIL *-*-* +// { dg-do assemble { xfail *-*-* } } // regression test - // simplified from bug report by Leon Bottou <leonb@research.att.com> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp92.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp92.C index 899e7f3..ad86f79 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp92.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp92.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: "Adam J. Richter" <adam@yggdrasil.com> template <class Style, class Base> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp93.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp93.C index 50f7423..d5cba8c 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp93.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp93.C @@ -1,4 +1,4 @@ -// Build don't run: +// { dg-do link } // Origin: Mark Mitchell <mark@codesourcery.com> template <int n> struct A { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp94.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp94.C index 2ba3d39..b933a73 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp94.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp94.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Theodore Papadopoulo <Theodore.Papadopoulo@sophia.inria.fr> struct H { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp95.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp95.C index c3d0707..ea70393 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp95.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp95.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Mark Mitchell <mitchell@codesourcery.com> template <class T, class V> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp96.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp96.C index 66e9a44..52519fa 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp96.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp96.C @@ -1,3 +1,4 @@ +// { dg-do run } // Test for partial specialization of a member function template. // Origin: Jason Merrill <jason@cygnus.com> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp97.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp97.C index 511beae..e00c3bb 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp97.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp97.C @@ -1,3 +1,4 @@ +// { dg-do run } // Origin: Mark Mitchell <mark@codesourcery.com> template <class T> struct A { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp98.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp98.C index 86e3611..e8e9770 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp98.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp98.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } //Purpose: // Test nested template as template template arg. //Result: diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp99.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp99.C index 2295bea..056157c 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/memtemp99.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp99.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: bitti@cs.tut.fi template<typename T, unsigned int N> @@ -6,5 +6,5 @@ class Vector { public: template<unsigned int I> - class Vector<T,N>::CommaInit { }; // ERROR - invalid definition + class Vector<T,N>::CommaInit { }; // { dg-error "" } invalid definition }; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/mi1.C b/gcc/testsuite/g++.old-deja/g++.pt/mi1.C index 8282261..50b29c6 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/mi1.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/mi1.C @@ -1,3 +1,4 @@ +// { dg-do run } // Test that binfos aren't erroneously shared between instantiations. class PK_CryptoSystem diff --git a/gcc/testsuite/g++.old-deja/g++.pt/nested1.C b/gcc/testsuite/g++.old-deja/g++.pt/nested1.C index 3df7c47..e504815 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/nested1.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/nested1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class T1,class T2> struct X diff --git a/gcc/testsuite/g++.old-deja/g++.pt/nested2.C b/gcc/testsuite/g++.old-deja/g++.pt/nested2.C index ce52b4e..2eb8ad5 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/nested2.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/nested2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Mathias Doreille <Mathias.Doreille@imag.fr> template<class T> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/niklas01.C b/gcc/testsuite/g++.old-deja/g++.pt/niklas01.C index 6dcf9d3..2c59d54 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/niklas01.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/niklas01.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class T> struct A {}; template <class T> struct B : A<B<T> > {}; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/niklas01a.C b/gcc/testsuite/g++.old-deja/g++.pt/niklas01a.C index 131964b..58c59d2 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/niklas01a.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/niklas01a.C @@ -1,7 +1,7 @@ -// Build don't link: +// { dg-do assemble } -struct A { // ERROR - forward declaration - friend struct B : A { // ERROR - +struct A { // { dg-error "" } forward declaration + friend struct B : A { // { dg-error "" } int x; }; int y; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/niklas01b.C b/gcc/testsuite/g++.old-deja/g++.pt/niklas01b.C index fa2e5ac..e17b929 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/niklas01b.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/niklas01b.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class T> struct A { T *t; inline A() { t = 0; } }; template <class T> struct B : A<B<T> > { int x; inline B() { x = 3; } }; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/niklas02.C b/gcc/testsuite/g++.old-deja/g++.pt/niklas02.C index b4d300d..d47b5d1 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/niklas02.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/niklas02.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } struct B { int foo (); }; int B::foo() { return 37; } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/niklas03.C b/gcc/testsuite/g++.old-deja/g++.pt/niklas03.C index 29b1972..7ecf0ed 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/niklas03.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/niklas03.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class A> struct X { A operator[] (int); @@ -6,7 +6,7 @@ template <class A> struct X { template <class A> A X<A>::operator[] (int i) { - return A(); // gets bogus error + return A(); // { dg-bogus "" } } X<int> x; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/nontype1.C b/gcc/testsuite/g++.old-deja/g++.pt/nontype1.C index 120282a..95c683f 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/nontype1.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/nontype1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template<int N_length> struct B diff --git a/gcc/testsuite/g++.old-deja/g++.pt/nontype2.C b/gcc/testsuite/g++.old-deja/g++.pt/nontype2.C index e181411..ee233f2 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/nontype2.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/nontype2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } enum E { }; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/nontype3.C b/gcc/testsuite/g++.old-deja/g++.pt/nontype3.C index d6f3394..88904a8 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/nontype3.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/nontype3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } enum E { e }; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/nontype4.C b/gcc/testsuite/g++.old-deja/g++.pt/nontype4.C index 2aa38b1..9ad0ff4 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/nontype4.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/nontype4.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class R, void (R::* A) (void)> class s diff --git a/gcc/testsuite/g++.old-deja/g++.pt/nontype5.C b/gcc/testsuite/g++.old-deja/g++.pt/nontype5.C index ada6bb1..7d410b7 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/nontype5.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/nontype5.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 10 Jan 2001 <nathan@codesourcery.com> @@ -19,5 +19,5 @@ static int g() { return f(); }; int f() { return 0; } int main() { -return B<int,&f>::g(); // ERROR - could not convert arg +return B<int,&f>::g(); // { dg-error "" } could not convert arg } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/nttp1.C b/gcc/testsuite/g++.old-deja/g++.pt/nttp1.C index 36b7438..3af938b 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/nttp1.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/nttp1.C @@ -1,3 +1,4 @@ +// { dg-do run } // Test for nested template template parameter feature template <template<template <class> class> class TTT> struct C diff --git a/gcc/testsuite/g++.old-deja/g++.pt/nttp2.C b/gcc/testsuite/g++.old-deja/g++.pt/nttp2.C index 08781da..b850f48 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/nttp2.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/nttp2.C @@ -1,3 +1,4 @@ +// { dg-do run } // Test for nested template template parameter feature template <template<template <class> class> class TTT> struct C diff --git a/gcc/testsuite/g++.old-deja/g++.pt/operator1.C b/gcc/testsuite/g++.old-deja/g++.pt/operator1.C index dc016ad..0894b1e 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/operator1.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/operator1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 7 Nov 2000 <nathan@codesourcery.com> // Origin: bug 510 wolfgang.bangerth@iwr.uni-heidelberg.de diff --git a/gcc/testsuite/g++.old-deja/g++.pt/overload1.C b/gcc/testsuite/g++.old-deja/g++.pt/overload1.C index 25a40b1..10b9f05 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/overload1.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/overload1.C @@ -1,3 +1,4 @@ +// { dg-do run } template <class T> struct B { }; template <class T> struct A { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/overload10.C b/gcc/testsuite/g++.old-deja/g++.pt/overload10.C index 19dd174..cdb0d3e 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/overload10.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/overload10.C @@ -1,3 +1,4 @@ +// { dg-do run } struct B { int f(int) { return 1; } }; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/overload11.C b/gcc/testsuite/g++.old-deja/g++.pt/overload11.C index 300d91e..12b4978 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/overload11.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/overload11.C @@ -1,4 +1,4 @@ -// Build don't run: +// { dg-do link } template <class T> int f(int (*fn)(T)) diff --git a/gcc/testsuite/g++.old-deja/g++.pt/overload12.C b/gcc/testsuite/g++.old-deja/g++.pt/overload12.C index bf37bb6..c992eaf 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/overload12.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/overload12.C @@ -1,3 +1,4 @@ +// { dg-do run } // Testcase for not trying a candidate that would generate an ill-formed // instantiation. diff --git a/gcc/testsuite/g++.old-deja/g++.pt/overload13.C b/gcc/testsuite/g++.old-deja/g++.pt/overload13.C index 37a8d8b..f66f103 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/overload13.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/overload13.C @@ -1,3 +1,4 @@ +// { dg-do assemble } struct A { template <class T> int f (T) { return 0; } int f (int) { return 1; } @@ -6,5 +7,5 @@ struct A { int main () { A a; - return a.template f (0); // ERROR - + return a.template f (0); // { dg-error "" } } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/overload14.C b/gcc/testsuite/g++.old-deja/g++.pt/overload14.C index 022326e..92142d2 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/overload14.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/overload14.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 18 Jan 2001 <nathan@codesourcery.com> @@ -16,5 +16,5 @@ bool Foo (E e) } bool Baz (E e) { - return e != e1; // ERROR - void not ignored. + return e != e1; // { dg-error "" } void not ignored. } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/overload15.C b/gcc/testsuite/g++.old-deja/g++.pt/overload15.C index defadad..debad88 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/overload15.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/overload15.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Test resolution of templatized overloaded constructors. // The more specialized constructor, i.e., A (const B<Dim1,Dim2> &b) // should be chosen per \S 14.5.5.2/2 [temp.func.order/2]. diff --git a/gcc/testsuite/g++.old-deja/g++.pt/overload2.C b/gcc/testsuite/g++.old-deja/g++.pt/overload2.C index 809fac4..e53df3e 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/overload2.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/overload2.C @@ -1,4 +1,4 @@ -//Build don't link: +// { dg-do assemble } template<class T> class C { @@ -12,5 +12,5 @@ int main() { C<char*> c; - char* p = Z(c.O); //ERROR - ambiguous c.O + char* p = Z(c.O); //{ dg-error "" } ambiguous c.O } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/overload3.C b/gcc/testsuite/g++.old-deja/g++.pt/overload3.C index a716917..4d23173 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/overload3.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/overload3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class T> void g(T, T); diff --git a/gcc/testsuite/g++.old-deja/g++.pt/overload4.C b/gcc/testsuite/g++.old-deja/g++.pt/overload4.C index f4e58e2..3dcb397 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/overload4.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/overload4.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class T> void foo(T); diff --git a/gcc/testsuite/g++.old-deja/g++.pt/overload5.C b/gcc/testsuite/g++.old-deja/g++.pt/overload5.C index 058f4f4..1bb2d44 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/overload5.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/overload5.C @@ -1,6 +1,6 @@ -// Build don't link: +// { dg-do assemble } -template <class T> void foo(); // ERROR - candidate +template <class T> void foo(); // { dg-error "" } candidate void (*bar)() = foo<void>; -void (*baz)() = foo; // ERROR - can't deduce T +void (*baz)() = foo; // { dg-error "" } can't deduce T diff --git a/gcc/testsuite/g++.old-deja/g++.pt/overload6.C b/gcc/testsuite/g++.old-deja/g++.pt/overload6.C index 10f793a..c7a4e29 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/overload6.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/overload6.C @@ -1,3 +1,4 @@ +// { dg-do run } // Check that foo<int> isn't resolved too early. template <class T> void foo(T*); diff --git a/gcc/testsuite/g++.old-deja/g++.pt/overload7.C b/gcc/testsuite/g++.old-deja/g++.pt/overload7.C index bfd8b5a..827e3d8 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/overload7.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/overload7.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Adapted from testcase by Corey Kosak <kosak@cs.cmu.edu> @@ -11,10 +11,10 @@ template<class T> void foo(typename moo_t<T>::cow_t) {} template<class T> void foo(moo_t<T>) { typename moo_t<T>::cow_t p; - foo(p); // gets bogus error - no matching function for call - XFAIL *-*-* + foo(p); // { dg-bogus "" "" { xfail *-*-* } } - no matching function for call - } int main() { moo_t<int> x; - foo(x); // gets bogus error - instantiated from here - XFAIL *-*-* + foo(x); // { dg-bogus "" "" { xfail *-*-* } } - instantiated from here - } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/overload8.C b/gcc/testsuite/g++.old-deja/g++.pt/overload8.C index 9f38a5c..4f0a1d0 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/overload8.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/overload8.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Simplified from bug report by Tim Rowley <tor@cs.brown.edu> @@ -7,6 +7,6 @@ struct baz; void operator*(baz&, double); template <class T> inline T operator*(double s, const T &p) - ; // gets bogus error - must have argument of class type - XFAIL *-*-* + ; // { dg-bogus "" "" { xfail *-*-* } } - must have argument of class type - void m(baz& a) { a * .5; } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/overload9.C b/gcc/testsuite/g++.old-deja/g++.pt/overload9.C index bd9eeb1..f73acc7 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/overload9.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/overload9.C @@ -1,3 +1,4 @@ +// { dg-do run } template <class T> int f(T) { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/parms1.C b/gcc/testsuite/g++.old-deja/g++.pt/parms1.C index 65330c6..b8a5dda 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/parms1.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/parms1.C @@ -1,3 +1,4 @@ +// { dg-do run } // Testcase for use of template parms as types for other template parms. template <class T, T t> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/parms2.C b/gcc/testsuite/g++.old-deja/g++.pt/parms2.C index d7a644c..673427e 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/parms2.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/parms2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 5 Sept 2000 <nathan@codesourcery.com> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/parms3.C b/gcc/testsuite/g++.old-deja/g++.pt/parms3.C index 031f3d6..1eba279 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/parms3.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/parms3.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // Test that we can represent static_casts in template arg lists. -// Build don't link: template <int I> struct A { }; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/parse2.C b/gcc/testsuite/g++.old-deja/g++.pt/parse2.C index f7b737e6..10f79d9 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/parse2.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/parse2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Jason Merrill <jason@cygnus.com> template <class T> struct A { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/partial1.C b/gcc/testsuite/g++.old-deja/g++.pt/partial1.C index 7a92996..1f9ae55 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/partial1.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/partial1.C @@ -1,3 +1,4 @@ +// { dg-do run } template<class T_type, int N> class foo { public: diff --git a/gcc/testsuite/g++.old-deja/g++.pt/partial2.C b/gcc/testsuite/g++.old-deja/g++.pt/partial2.C index cdf2199..6a8a60a 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/partial2.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/partial2.C @@ -1,23 +1,23 @@ -// Build don't link: +// { dg-do assemble } // Tests partial specialization template<class T> struct foo1 {}; template<class T, int n> struct foo1<T[n]>; foo1<char> bar1; -foo1<char[10]> baz1; // ERROR - incomplete type +foo1<char[10]> baz1; // { dg-error "" } incomplete type template<class T> struct foo2 {}; template<class T, unsigned n> struct foo2<T[n]>; foo2<char> bar2; -foo2<char[10]> baz2; // ERROR - incomplete type +foo2<char[10]> baz2; // { dg-error "" } incomplete type typedef unsigned int other1_t; template<class T> struct foo3 {}; template<class T, other1_t n> struct foo3<T[n]>; foo3<char> bar3; -foo3<char[10]> baz3; // ERROR - incomplete type - +foo3<char[10]> baz3; // { dg-error "" } incomplete type - typedef int other2_t; template<class T> struct foo4 {}; template<class T, other1_t n> struct foo4<T[n]>; foo4<char> bar4; -foo4<char[10]> baz4; // ERROR - incomplete type - +foo4<char[10]> baz4; // { dg-error "" } incomplete type - diff --git a/gcc/testsuite/g++.old-deja/g++.pt/partial3.C b/gcc/testsuite/g++.old-deja/g++.pt/partial3.C index 49820db..f62f915 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/partial3.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/partial3.C @@ -1,3 +1,4 @@ +// { dg-do run } // Test that partial ordering works between conversion ops from different // classes. // From Jason Merrill <jason@cygnus.com> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/partial4.C b/gcc/testsuite/g++.old-deja/g++.pt/partial4.C index 3956a0c..fd3554e 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/partial4.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/partial4.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Gabriel Dos Reis <Gabriel.Dos-Reis@cmla.ens-cachan.fr> // Bug 29. We failed to verify that template argument deduction diff --git a/gcc/testsuite/g++.old-deja/g++.pt/partial5.C b/gcc/testsuite/g++.old-deja/g++.pt/partial5.C index fa5ebda..64f46d4 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/partial5.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/partial5.C @@ -1,3 +1,4 @@ +// { dg-do run } // Test that partial ordering ignores defaulted parms and 'this'. struct A { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/poi1.C b/gcc/testsuite/g++.old-deja/g++.pt/poi1.C index 6adf580..b6bcad3 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/poi1.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/poi1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at> template <class T> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/pointer1.C b/gcc/testsuite/g++.old-deja/g++.pt/pointer1.C index f854976..0b1e3ae 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/pointer1.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/pointer1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class T> struct S1 diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ptrmem1.C b/gcc/testsuite/g++.old-deja/g++.pt/ptrmem1.C index 5bf7dd7..8ebc61c 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/ptrmem1.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/ptrmem1.C @@ -1,3 +1,4 @@ +// { dg-do run } class foo { public: diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ptrmem10.C b/gcc/testsuite/g++.old-deja/g++.pt/ptrmem10.C index 0e7a6d7..d65f2d1 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/ptrmem10.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/ptrmem10.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 14 Aug 2000 <nathan@codesourcery.com> @@ -15,13 +15,13 @@ struct A void baz (); }; -template <typename T> void foo (int (*)(T)); // ERROR - candidate -template <typename T> void foo (int (A::*)(T)); // ERROR - candidate +template <typename T> void foo (int (*)(T)); // { dg-error "" } candidate +template <typename T> void foo (int (A::*)(T)); // { dg-error "" } candidate void A::baz () { - foo (&A::f); // ERROR - ambiguous + foo (&A::f); // { dg-error "" } ambiguous foo (A::f); foo (&(A::f)); foo (f); diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ptrmem2.C b/gcc/testsuite/g++.old-deja/g++.pt/ptrmem2.C index 1f254e9..f14611c 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/ptrmem2.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/ptrmem2.C @@ -1,3 +1,4 @@ +// { dg-do run } struct S; template <S* (S::*p)()> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ptrmem3.C b/gcc/testsuite/g++.old-deja/g++.pt/ptrmem3.C index 8b7c373..039d5dc 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/ptrmem3.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/ptrmem3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class T> struct S : public S<T*> {}; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ptrmem4.C b/gcc/testsuite/g++.old-deja/g++.pt/ptrmem4.C index 139be92..70ac25e 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/ptrmem4.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/ptrmem4.C @@ -1,4 +1,4 @@ -// Build don't run: +// { dg-do link } template<class T,class T1> int connect_to_method(T* receiver, diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ptrmem5.C b/gcc/testsuite/g++.old-deja/g++.pt/ptrmem5.C index c9e6c9b..4b7d5f9 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/ptrmem5.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/ptrmem5.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Based on testcase by adriang@campbellsoft.com @@ -14,4 +14,4 @@ struct Null { int *pd = NULL; int (*pf)() = NULL; int Null::*pmd = NULL; -int (Null::*pmf)() = NULL; // gets bogus error - cannot convert - XFAIL *-*-* +int (Null::*pmf)() = NULL; // { dg-bogus "" "" { xfail *-*-* } } - cannot convert - diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ptrmem6.C b/gcc/testsuite/g++.old-deja/g++.pt/ptrmem6.C index e7750dd..4c98b3d 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/ptrmem6.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/ptrmem6.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } class A { public: @@ -21,14 +21,14 @@ void h() {} int main() { g<&A::f>(); h<&A::i>(); - g<&B::f>(); // ERROR - - h<&B::j>(); // ERROR - - g<(void (A::*)()) &A::f>(); // ERROR - - h<(int A::*) &A::i>(); // ERROR - - g<(void (A::*)()) &B::f>(); // ERROR - - h<(int A::*) &B::j>(); // ERROR - - g<(void (A::*)()) 0>(); // ERROR - - h<(int A::*) 0>(); // ERROR - + g<&B::f>(); // { dg-error "" } + h<&B::j>(); // { dg-error "" } + g<(void (A::*)()) &A::f>(); // { dg-error "" } + h<(int A::*) &A::i>(); // { dg-error "" } + g<(void (A::*)()) &B::f>(); // { dg-error "" } + h<(int A::*) &B::j>(); // { dg-error "" } + g<(void (A::*)()) 0>(); // { dg-error "" } + h<(int A::*) 0>(); // { dg-error "" } return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ptrmem7.C b/gcc/testsuite/g++.old-deja/g++.pt/ptrmem7.C index 9efeec8..2e6b2db 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/ptrmem7.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/ptrmem7.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Jason Merrill <jason@cygnus.com> struct A { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ptrmem8.C b/gcc/testsuite/g++.old-deja/g++.pt/ptrmem8.C index f6125cd..e6715f3 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/ptrmem8.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/ptrmem8.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Mark Mitchell <mark@codesourcery.com> template <class T> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ptrmem9.C b/gcc/testsuite/g++.old-deja/g++.pt/ptrmem9.C index 9963a15..768024f 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/ptrmem9.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/ptrmem9.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Jason Merrill <jason@cygnus.com> struct A; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/recursion.C b/gcc/testsuite/g++.old-deja/g++.pt/recursion.C index 7efaeb0..30e1805 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/recursion.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/recursion.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } const double M_PI=3.14159265358979323846; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/recursion2.C b/gcc/testsuite/g++.old-deja/g++.pt/recursion2.C index 8cb3a2b..47dd552 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/recursion2.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/recursion2.C @@ -1,3 +1,4 @@ +// { dg-do run } template< int i > struct T : public T< i-1 > { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/redecl1.C b/gcc/testsuite/g++.old-deja/g++.pt/redecl1.C index 283d83f..7100988 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/redecl1.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/redecl1.C @@ -1,22 +1,22 @@ -// Build don't link: +// { dg-do assemble } template <class T> -struct S1; // ERROR - previous declaration +struct S1; // { dg-error "" } previous declaration template <class T, class U> -struct S1 {}; // ERROR - used 1 template parameter +struct S1 {}; // { dg-error "" } used 1 template parameter -template <class T = int> // ERROR - original def of default +template <class T = int> // { dg-error "" } original def of default struct S2; template <class T = int> -struct S2; // ERROR - redefinition of default +struct S2; // { dg-error "" } redefinition of default -template <class T> // ERROR - template parameter +template <class T> // { dg-error "" } template parameter struct S3; template <int I> -struct S3; // ERROR - redeclared here +struct S3; // { dg-error "" } redeclared here template <template <class T> class C> -struct S3; // ERROR - redeclared here +struct S3; // { dg-error "" } redeclared here diff --git a/gcc/testsuite/g++.old-deja/g++.pt/redecl2.C b/gcc/testsuite/g++.old-deja/g++.pt/redecl2.C index 0b65e1e..d8837f6 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/redecl2.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/redecl2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } struct A { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ref1.C b/gcc/testsuite/g++.old-deja/g++.pt/ref1.C index 8b117a5..ad46289 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/ref1.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/ref1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } int i; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ref2.C b/gcc/testsuite/g++.old-deja/g++.pt/ref2.C index ee68498..912a772 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/ref2.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/ref2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Mark Mitchell <mark@codesourcery.com> template <class T, T&> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ref3.C b/gcc/testsuite/g++.old-deja/g++.pt/ref3.C index 27f7cd2..29bf3e8 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/ref3.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/ref3.C @@ -1,3 +1,4 @@ +// { dg-do run } // Origin: John Wilkinson <jfw@sgi.com> template <class T, int& Size> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ref4.C b/gcc/testsuite/g++.old-deja/g++.pt/ref4.C index 1291dc1..867bae58 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/ref4.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/ref4.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // // Copyright (C) 2001 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 29 Apr 2001 <nathan@codesourcery.com> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/repo1.C b/gcc/testsuite/g++.old-deja/g++.pt/repo1.C index f57b2c2..1a35389 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/repo1.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/repo1.C @@ -1,8 +1,10 @@ +// { dg-do link } +// { dg-options "-frepo" } + // Bug: g++ complains about duplicate explicit instantiations with -frepo. // From Jason Merrill <jason@cygnus.com> // Build then link: -// Special g++ Options: -frepo template <class T> struct A { virtual ~A () { } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/repo2.C b/gcc/testsuite/g++.old-deja/g++.pt/repo2.C index 4067d0c..fd7c024 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/repo2.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/repo2.C @@ -1,8 +1,9 @@ +// { dg-do link } +// { dg-options "-frepo" } // Test that collect2 isn't confused by GNU ld's "In function `foo':" message. // Contributed by Jason Merrill <jason@cygnus.com> // Build then link: -// Special g++ Options: -frepo template <class T> T f (T t) diff --git a/gcc/testsuite/g++.old-deja/g++.pt/repo3.C b/gcc/testsuite/g++.old-deja/g++.pt/repo3.C index 4001676..495b9f7 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/repo3.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/repo3.C @@ -1,8 +1,9 @@ +// { dg-do link } +// { dg-options "-frepo" } // Test that we properly generate the vtable and such for C. // Contributed by scott snyder <snyder@fnal.gov> // Build then link: -// Special g++ Options: -frepo struct A { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/repo4.C b/gcc/testsuite/g++.old-deja/g++.pt/repo4.C index 6180acb..26a7442 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/repo4.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/repo4.C @@ -1,5 +1,6 @@ +// { dg-do link } +// { dg-options "-frepo" } // Build then link: -// Special g++ Options: -frepo template <class T> struct S { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/scope1.C b/gcc/testsuite/g++.old-deja/g++.pt/scope1.C index cfd9cdf..1425a9d 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/scope1.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/scope1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template<class X, class Z> class foo diff --git a/gcc/testsuite/g++.old-deja/g++.pt/shadow1.C b/gcc/testsuite/g++.old-deja/g++.pt/shadow1.C index dfe99c7..9fa40df 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/shadow1.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/shadow1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class T> struct S { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/shadow2.C b/gcc/testsuite/g++.old-deja/g++.pt/shadow2.C index 452e8ca..11d6a9b 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/shadow2.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/shadow2.C @@ -1,9 +1,9 @@ -// Build don't link: +// { dg-do assemble } // Origin: Jason Merrill <jason@cygnus.com> -template <class T> struct A { // ERROR - shadowed parameter +template <class T> struct A { // { dg-error "" } shadowed parameter struct B { - void T(); // ERROR - shadows template parameter + void T(); // { dg-error "" } shadows template parameter }; }; A<int> a; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/sizeof.C b/gcc/testsuite/g++.old-deja/g++.pt/sizeof.C index 41915b3..159c554 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/sizeof.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/sizeof.C @@ -1,3 +1,4 @@ +// { dg-do run } extern "C" void abort(); template <int I> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/sizeof2.C b/gcc/testsuite/g++.old-deja/g++.pt/sizeof2.C index 566665a..97127ea 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/sizeof2.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/sizeof2.C @@ -1,3 +1,4 @@ +// { dg-do run } // Although template class B is not used at all, it causes the // incorrect specialization of A to be selected diff --git a/gcc/testsuite/g++.old-deja/g++.pt/sizeof3.C b/gcc/testsuite/g++.old-deja/g++.pt/sizeof3.C index cd5f701..fb65a32 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/sizeof3.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/sizeof3.C @@ -1,3 +1,4 @@ +// { dg-do run } // Adapted from testcase by Oskar Enoksson <osken393@student.liu.se> extern "C" void abort(); diff --git a/gcc/testsuite/g++.old-deja/g++.pt/spec1.C b/gcc/testsuite/g++.old-deja/g++.pt/spec1.C index ab18ff8..7b173cf 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/spec1.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/spec1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class S, class T> class mem_fun1_t { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/spec10.C b/gcc/testsuite/g++.old-deja/g++.pt/spec10.C index e86f220..e9d36ec 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/spec10.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/spec10.C @@ -1,3 +1,4 @@ +// { dg-do run } extern "C" void abort(); template <class T> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/spec11.C b/gcc/testsuite/g++.old-deja/g++.pt/spec11.C index 340b58e..8d7a04e 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/spec11.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/spec11.C @@ -1,3 +1,4 @@ +// { dg-do run } extern "C" void abort(); template <class T> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/spec12.C b/gcc/testsuite/g++.old-deja/g++.pt/spec12.C index d9c3965..2e2c6ae 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/spec12.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/spec12.C @@ -1,3 +1,4 @@ +// { dg-do run } extern "C" void abort(); template <class T> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/spec13.C b/gcc/testsuite/g++.old-deja/g++.pt/spec13.C index e5748f5..b72794a 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/spec13.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/spec13.C @@ -1,3 +1,4 @@ +// { dg-do run } template <class T> void f(T t); diff --git a/gcc/testsuite/g++.old-deja/g++.pt/spec14.C b/gcc/testsuite/g++.old-deja/g++.pt/spec14.C index 997c732..b4920ef 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/spec14.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/spec14.C @@ -1,4 +1,4 @@ -// crash test - XFAIL *-*-* +// { dg-do assemble { xfail *-*-* } } class X { public: @@ -6,5 +6,5 @@ public: X() {} template <typename A, typename B> - X::X<A, void, B>() {} // ERROR - non-template type used as a template + X::X<A, void, B>() {} // { dg-error "" } non-template type used as a template }; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/spec15.C b/gcc/testsuite/g++.old-deja/g++.pt/spec15.C index 2e97b04..c812da0 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/spec15.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/spec15.C @@ -1,3 +1,4 @@ +// { dg-do run } extern "C" void abort(); template <class T> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/spec16.C b/gcc/testsuite/g++.old-deja/g++.pt/spec16.C index 434dcc2..dbe4426 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/spec16.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/spec16.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template<class K> struct A { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/spec17.C b/gcc/testsuite/g++.old-deja/g++.pt/spec17.C index 3e3dd63..e70d369 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/spec17.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/spec17.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template<class T> struct Foo { }; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/spec18.C b/gcc/testsuite/g++.old-deja/g++.pt/spec18.C index d7d034d..aec979a 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/spec18.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/spec18.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template<class A, class B> void foo(const A& a, const B& b) diff --git a/gcc/testsuite/g++.old-deja/g++.pt/spec19.C b/gcc/testsuite/g++.old-deja/g++.pt/spec19.C index 911c693..ff8a26f 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/spec19.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/spec19.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template<class T> T f(T o) { return o; } template<> int f(int o) { return o; } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/spec2.C b/gcc/testsuite/g++.old-deja/g++.pt/spec2.C index 338c69e..68c680e 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/spec2.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/spec2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } class X { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/spec20.C b/gcc/testsuite/g++.old-deja/g++.pt/spec20.C index c6b699d..064ce14 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/spec20.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/spec20.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // According to the non-normative example in // [temp.class.spec.mfunc]/2, these should be valid, but the grammar @@ -8,9 +8,9 @@ template <class T> struct S { template <class U> void f(U); - template <> void f<int>(int); // ERROR - invalid specialization + template <> void f<int>(int); // { dg-error "" } invalid specialization template <class V> struct I {}; template <class V> struct I<V*> {}; - template <> struct I<int>; // ERROR - invalid specialization + template <> struct I<int>; // { dg-error "" } invalid specialization }; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/spec21.C b/gcc/testsuite/g++.old-deja/g++.pt/spec21.C index 95e12d2..4107306 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/spec21.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/spec21.C @@ -1,16 +1,16 @@ -// Build don't link: +// { dg-do assemble } template <class T> struct S {}; -template <class T = int> struct S<T*> {}; // ERROR - default argument +template <class T = int> struct S<T*> {}; // { dg-error "" } default argument template <int I, int J> struct A {}; -template <int I> struct A<I+5, I*2> {}; // ERROR - argument involves parameter +template <int I> struct A<I+5, I*2> {}; // { dg-error "" } argument involves parameter template <class T, T t> struct C {}; -template <class T> struct C<T, 1>; // ERROR - type depends on parameter +template <class T> struct C<T, 1>; // { dg-error "" } type depends on parameter int i; -template <class T> struct C<T*, &i>; // ERROR - type depends on parameter +template <class T> struct C<T*, &i>; // { dg-error "" } type depends on parameter template< int X, int (*array_ptr)[X] > class B {}; int array[5]; -template< int X > class B<X,&array> { }; // ERROR - type depends on parameter +template< int X > class B<X,&array> { }; // { dg-error "" } type depends on parameter diff --git a/gcc/testsuite/g++.old-deja/g++.pt/spec22.C b/gcc/testsuite/g++.old-deja/g++.pt/spec22.C index e170b6e..3046455 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/spec22.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/spec22.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class T> struct S @@ -9,7 +9,7 @@ struct S template <class T> -template <> // ERROR - enclosing classes not specialized +template <> // { dg-error "" } enclosing classes not specialized void S<T>::f<int> () -{ // ERROR - template does not match any declaration +{ // { dg-error "" } template does not match any declaration } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/spec23.C b/gcc/testsuite/g++.old-deja/g++.pt/spec23.C index 0e9ee61..33e97a0 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/spec23.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/spec23.C @@ -1,3 +1,4 @@ +// { dg-do assemble } /* [temp.expl.spec] p18. */ template<class T> @@ -6,5 +7,5 @@ struct A { }; template<class T> -class A<T>::B<void> { // ERROR - only one template header +class A<T>::B<void> { // { dg-error "" } only one template header }; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/spec24.C b/gcc/testsuite/g++.old-deja/g++.pt/spec24.C index 2b7d336..37b76cb 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/spec24.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/spec24.C @@ -1,5 +1,5 @@ -// Build don't link: +// { dg-do assemble } template <class T> class A; // template <> -class A<int>; // ERROR - missing template header - XFAIL *-*-* +class A<int>; // { dg-error "" "" { xfail *-*-* } } missing template header - diff --git a/gcc/testsuite/g++.old-deja/g++.pt/spec25.C b/gcc/testsuite/g++.old-deja/g++.pt/spec25.C index 884abf0..d056f03 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/spec25.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/spec25.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class T, int I> struct S { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/spec26.C b/gcc/testsuite/g++.old-deja/g++.pt/spec26.C index 1bd40b6..9c8c30a 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/spec26.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/spec26.C @@ -1,8 +1,8 @@ +// { dg-do assemble } // From: lat@iki.fi (Lassi A. Tuura) // Test that a specialization without an initializer is not a definition, // as specified in [temp.expl.spec]. -// Build don't link: struct X; template <class T> struct Y { static const X array[]; }; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/spec27.C b/gcc/testsuite/g++.old-deja/g++.pt/spec27.C index 63aae4c..2401fe2 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/spec27.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/spec27.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class T, class U> struct Y {}; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/spec28.C b/gcc/testsuite/g++.old-deja/g++.pt/spec28.C index a6fdc06..3cecaf7 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/spec28.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/spec28.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class T> bool f(T); diff --git a/gcc/testsuite/g++.old-deja/g++.pt/spec29.C b/gcc/testsuite/g++.old-deja/g++.pt/spec29.C index 9f27a8e..ff5d433 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/spec29.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/spec29.C @@ -1,3 +1,4 @@ +// { dg-do run } char c; struct S { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/spec3.C b/gcc/testsuite/g++.old-deja/g++.pt/spec3.C index b0e710f..cce36d2 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/spec3.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/spec3.C @@ -1,3 +1,4 @@ +// { dg-do run } extern "C" void abort(); class X diff --git a/gcc/testsuite/g++.old-deja/g++.pt/spec30.C b/gcc/testsuite/g++.old-deja/g++.pt/spec30.C index 5d36e25..c3174d1 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/spec30.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/spec30.C @@ -1,3 +1,4 @@ +// { dg-do run } #include <cstddef> template <class T> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/spec31.C b/gcc/testsuite/g++.old-deja/g++.pt/spec31.C index a66e03f..1d23621 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/spec31.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/spec31.C @@ -1,2 +1,3 @@ -template <> struct A {}; // ERROR - not a specialization -template <> void f (); // ERROR - not a specialization +// { dg-do assemble } +template <> struct A {}; // { dg-error "" } not a specialization +template <> void f (); // { dg-error "" } not a specialization diff --git a/gcc/testsuite/g++.old-deja/g++.pt/spec32.C b/gcc/testsuite/g++.old-deja/g++.pt/spec32.C index 3d63461..f2c4dd7 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/spec32.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/spec32.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Raja R Harinath <harinath@cs.umn.edu> template<class T1, class T2> class foo; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/spec33.C b/gcc/testsuite/g++.old-deja/g++.pt/spec33.C index c795958..d4d70f1 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/spec33.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/spec33.C @@ -1,4 +1,4 @@ -// Build don't run: +// { dg-do link } // Origin: James McKelvey <mckelvey@fafnir.com> class A diff --git a/gcc/testsuite/g++.old-deja/g++.pt/spec34.C b/gcc/testsuite/g++.old-deja/g++.pt/spec34.C index 3f03dbe..01fc61d 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/spec34.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/spec34.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 17 Jan 2001 <nathan@codesourcery.com> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/spec35.C b/gcc/testsuite/g++.old-deja/g++.pt/spec35.C index e768c91..f39dd79 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/spec35.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/spec35.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 18 Jan 2001 <nathan@codesourcery.com> @@ -8,24 +8,24 @@ extern "C" int puts (char const *); -template <typename T> int Foo (T); // ERROR - candidate -template <typename T> int Foo (T &); // ERROR - candidate +template <typename T> int Foo (T); // { dg-error "" } candidate +template <typename T> int Foo (T &); // { dg-error "" } candidate -template <typename T> int Qux (T); // ERROR - candidate -template <typename T> int Qux (T const &); // ERROR - candidate +template <typename T> int Qux (T); // { dg-error "" } candidate +template <typename T> int Qux (T const &); // { dg-error "" } candidate -template <typename T> int Bar (T const *const &); // ERROR - candidate -template <typename T> int Bar (T *const &); // ERROR - candidate -template <typename T> int Bar (T *); // ERROR - 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 Baz (T *const &); // ERROR - candidate -template <typename T> int Baz (T *); // ERROR - candidate +template <typename T> int Baz (T *const &); // { dg-error "" } candidate +template <typename T> int Baz (T *); // { dg-error "" } candidate int Baz (int const *ptr, int *ptr2) { - Baz (ptr2); // ERROR - ambiguous - Bar (ptr2); // ERROR - ambiguous - Foo (ptr2); // ERROR - ambiguous - Qux (ptr2); // ERROR - ambiguous + Baz (ptr2); // { dg-error "" } ambiguous + Bar (ptr2); // { dg-error "" } ambiguous + Foo (ptr2); // { dg-error "" } ambiguous + Qux (ptr2); // { dg-error "" } ambiguous return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/spec36.C b/gcc/testsuite/g++.old-deja/g++.pt/spec36.C index 7581f85..e52323b 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/spec36.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/spec36.C @@ -1,3 +1,4 @@ +// { dg-do run } // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 18 Jan 2001 <nathan@codesourcery.com> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/spec37.C b/gcc/testsuite/g++.old-deja/g++.pt/spec37.C index 5578c30..1fd9ef9 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/spec37.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/spec37.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 21 Jan 2001 <nathan@codesourcery.com> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/spec38.C b/gcc/testsuite/g++.old-deja/g++.pt/spec38.C index a33be54..7509557 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/spec38.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/spec38.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 19 Jan 2001 <nathan@codesourcery.com> @@ -8,7 +8,7 @@ template <class T> struct S { - int f (T); // ERROR - void type + int f (T); // { dg-error "" } void type }; void foo () diff --git a/gcc/testsuite/g++.old-deja/g++.pt/spec39.C b/gcc/testsuite/g++.old-deja/g++.pt/spec39.C index 9cdf75c..8b4e767 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/spec39.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/spec39.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 19 Jan 2001 <nathan@codesourcery.com> @@ -12,8 +12,8 @@ template <int dim> struct Outer void f() { - Inner<dim> i; // ERROR - non-template - Inner<> j; // ERROR - non-template + Inner<dim> i; // { dg-error "" } non-template + Inner<> j; // { dg-error "" } non-template } }; struct O {}; @@ -21,15 +21,15 @@ void foo () { Outer<1> x; x.f (); - Outer<1>::Inner<2> z; // ERROR - non-template - O<1> w; // ERROR - non-template + Outer<1>::Inner<2> z; // { dg-error "" } non-template + O<1> w; // { dg-error "" } non-template } template <typename T, template <typename C> class TPL> struct X { TPL<T> t; - T<int> s; // ERROR - non-template + T<int> s; // { dg-error "" } non-template }; template <typename T> struct Y @@ -39,5 +39,5 @@ template <typename T> struct Y void bar () { X<int, Y> a; - X<int, O> b; // ERROR - non-template + X<int, O> b; // { dg-error "" } non-template } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/spec4.C b/gcc/testsuite/g++.old-deja/g++.pt/spec4.C index b6e6858..d7ef63c 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/spec4.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/spec4.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class T> struct S {}; @@ -13,4 +13,4 @@ struct S<int> void S<int>::f() {} template <> -void S<int>::g() {} // ERROR - does not match any template declaration +void S<int>::g() {} // { dg-error "" } does not match any template declaration diff --git a/gcc/testsuite/g++.old-deja/g++.pt/spec40.C b/gcc/testsuite/g++.old-deja/g++.pt/spec40.C index 2d0ad90..70abb6f 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/spec40.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/spec40.C @@ -1,3 +1,4 @@ +// { dg-do run } // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 12 Feb 2001 <nathan@codesourcery.com> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/spec41.C b/gcc/testsuite/g++.old-deja/g++.pt/spec41.C index aab53c0..9e22d7d 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/spec41.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/spec41.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: <mikes@nilenet.com> @@ -6,5 +6,5 @@ // rejected. template<class T> class blah{}; -blah<char>::blah(){} // ERROR - invalid specialization +blah<char>::blah(){} // { dg-error "" } invalid specialization int main(){} diff --git a/gcc/testsuite/g++.old-deja/g++.pt/spec5.C b/gcc/testsuite/g++.old-deja/g++.pt/spec5.C index 553d956..821880c 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/spec5.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/spec5.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class T> void f(T t1, T t2); @@ -13,8 +13,8 @@ template void g(int i, int j); void h() { - f(3, 'c'); // ERROR - no matching function - g(3, 'c'); // ERROR - no matching function + f(3, 'c'); // { dg-error "" } no matching function + g(3, 'c'); // { dg-error "" } no matching function } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/spec6.C b/gcc/testsuite/g++.old-deja/g++.pt/spec6.C index 4ef8e65..276e398 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/spec6.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/spec6.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } struct S1 { @@ -24,8 +24,8 @@ void S2<char>::f(int i1, int i2); void h() { S1 s1; - s1.f(3, 'c'); // ERROR - no matching function + s1.f(3, 'c'); // { dg-error "" } no matching function S2<char> s2; - s2.f(3, 'c'); // ERROR - no matching function + s2.f(3, 'c'); // { dg-error "" } no matching function } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/spec7.C b/gcc/testsuite/g++.old-deja/g++.pt/spec7.C index 81358d9..81be8f1 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/spec7.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/spec7.C @@ -1,3 +1,4 @@ +// { dg-do run } extern "C" void abort(); template <class T> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/spec8.C b/gcc/testsuite/g++.old-deja/g++.pt/spec8.C index 966f69f..f06f313 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/spec8.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/spec8.C @@ -1,3 +1,4 @@ +// { dg-do run } extern "C" void abort(); template <void* P> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/spec9.C b/gcc/testsuite/g++.old-deja/g++.pt/spec9.C index e2a2208..acb9e70 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/spec9.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/spec9.C @@ -1,3 +1,4 @@ +// { dg-do assemble } extern "C" void abort(); template <class T> @@ -14,7 +15,7 @@ int main() template <> int f(int i) -{ // ERROR - specialization of f<int>(int) after instantiation +{ // { dg-error "" } specialization of f<int>(int) after instantiation return 1; } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/static1.C b/gcc/testsuite/g++.old-deja/g++.pt/static1.C index 67e2363..aafd009 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/static1.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/static1.C @@ -1,3 +1,4 @@ +// { dg-do run } extern "C" void abort(); template <class T> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/static10.C b/gcc/testsuite/g++.old-deja/g++.pt/static10.C index cf2336f..52a88ad 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/static10.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/static10.C @@ -1,5 +1,4 @@ -// Build don't link: -// crash test - XFAIL *-*-* +// { dg-do assemble { xfail *-*-* } } // regression test - // by Paul Burchard <burchard@pobox.com>, Level Set Systems, Inc. @@ -12,7 +11,7 @@ struct X { }; template<class A> struct Y { - static X<A> x(A(1)); // ERROR - ANSI C++ forbids in-class initialization of non-const static member `x' + static X<A> x(A(1)); // { dg-error "" } ANSI C++ forbids in-class initialization of non-const static member `x' }; Y<int> y; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/static11.C b/gcc/testsuite/g++.old-deja/g++.pt/static11.C index 3e31b40..1b03766 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/static11.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/static11.C @@ -1,3 +1,4 @@ +// { dg-do run } // Bug: g++ was failing to destroy C<int>::a because it was using two // different sentry variables for construction and destruction. // diff --git a/gcc/testsuite/g++.old-deja/g++.pt/static2.C b/gcc/testsuite/g++.old-deja/g++.pt/static2.C index 5060cfd..d75caf4 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/static2.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/static2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class A> class TEST diff --git a/gcc/testsuite/g++.old-deja/g++.pt/static3.C b/gcc/testsuite/g++.old-deja/g++.pt/static3.C index bfcfbdb..6688d23 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/static3.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/static3.C @@ -1,6 +1,6 @@ +// { dg-do run { xfail *-*-aout *-*-coff *-*-hpux* *-*-hms } } // On targets that don't support weak symbols, we require an explicit // instantiation of arr. -// excess errors test - XFAIL *-*-aout *-*-coff *-*-hpux* *-*-hms template<class T> struct A { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/static4.C b/gcc/testsuite/g++.old-deja/g++.pt/static4.C index 2ff3221..e582740 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/static4.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/static4.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class T> struct S diff --git a/gcc/testsuite/g++.old-deja/g++.pt/static5.C b/gcc/testsuite/g++.old-deja/g++.pt/static5.C index f6e125d..aed6208 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/static5.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/static5.C @@ -1,9 +1,9 @@ -// Build don't link: +// { dg-do assemble } template <class T> struct S { - static const T t = 3; // ERROR - initializing non-integral type + static const T t = 3; // { dg-error "" } initializing non-integral type }; double d = S<double>::t; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/static6.C b/gcc/testsuite/g++.old-deja/g++.pt/static6.C index 8052dc2..0866e2e 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/static6.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/static6.C @@ -1,5 +1,4 @@ -// Build don't run: -// excess errors test - XFAIL *-*-aout *-*-coff *-*-hpux* *-*-hms +// { dg-do link { xfail *-*-aout *-*-coff *-*-hpux* *-*-hms } } // Simplified from testcase by Erez Louidor Lior <s3824888@techst02.technion.ac.il> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/static7.C b/gcc/testsuite/g++.old-deja/g++.pt/static7.C index 282f78f..49c558c 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/static7.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/static7.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Mark Mitchell <mark@codesourcery.com> template <class T> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/static8.C b/gcc/testsuite/g++.old-deja/g++.pt/static8.C index 172c3c3..9b2ca82 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/static8.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/static8.C @@ -1,3 +1,4 @@ +// { dg-do run } // Origin: Mark Mitchell <mark@codesourcery.com> int i; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/static9.C b/gcc/testsuite/g++.old-deja/g++.pt/static9.C index 35484a3..f23741c 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/static9.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/static9.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Mark Mitchell <mark@codesourcery.com> template <class T> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/static_cast.C b/gcc/testsuite/g++.old-deja/g++.pt/static_cast.C index 26f26c5..89e794a 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/static_cast.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/static_cast.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class InputIterator, class BinaryOperation> void accumulate(InputIterator first, diff --git a/gcc/testsuite/g++.old-deja/g++.pt/stmtexpr.C b/gcc/testsuite/g++.old-deja/g++.pt/stmtexpr.C index 57ef7e3..2d5ecbd 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/stmtexpr.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/stmtexpr.C @@ -1,3 +1,4 @@ +// { dg-do run } extern "C" void abort(); template <class T> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/stmtexpr2.C b/gcc/testsuite/g++.old-deja/g++.pt/stmtexpr2.C index 475ad72..36c0fcc 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/stmtexpr2.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/stmtexpr2.C @@ -1,3 +1,4 @@ +// { dg-do run } extern "C" void abort(); int i; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/switch1.C b/gcc/testsuite/g++.old-deja/g++.pt/switch1.C index 51d2de1..45bc951 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/switch1.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/switch1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Mark Mitchell <mark@codesourcery.com> template <class T> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/syntax1.C b/gcc/testsuite/g++.old-deja/g++.pt/syntax1.C index 787df52..4400ae2 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/syntax1.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/syntax1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 22 June 2000 <nathan@codesourcery.com> @@ -20,7 +20,7 @@ class Y }; template <class T> Y::Y(T &) {} -template class Y::Y (int); // ERROR - parse error -template Y::Y (int); // ERROR - template-id does not match +template class Y::Y (int); // { dg-error "" } parse error +template Y::Y (int); // { dg-error "" } template-id does not match template Y::Y (int &); diff --git a/gcc/testsuite/g++.old-deja/g++.pt/syntax2.C b/gcc/testsuite/g++.old-deja/g++.pt/syntax2.C index 78e356c..17a642e 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/syntax2.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/syntax2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 22 June 2000 <nathan@codesourcery.com> @@ -22,6 +22,6 @@ template <class T> template <class U> image<T>::image(const image<U> ©) } template class image<double>; -template class image<double>::image (const image<int> &); // ERROR - parse error -template class image<double>::image (image<int>); // ERROR - specified as declarator-id +template class image<double>::image (const image<int> &); // { dg-error "" } parse error +template class image<double>::image (image<int>); // { dg-error "" } specified as declarator-id template image<double>::image (const image<int> &); diff --git a/gcc/testsuite/g++.old-deja/g++.pt/t00.C b/gcc/testsuite/g++.old-deja/g++.pt/t00.C index 14bfcf8..ad3b9ad 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/t00.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/t00.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } int f1 () { struct A { A() { a = 2; } int a; } ; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/t01.C b/gcc/testsuite/g++.old-deja/g++.pt/t01.C index b1d7d38..70943b9 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/t01.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/t01.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class A> class B { public: A a; }; static B<int> b_int; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/t03.C b/gcc/testsuite/g++.old-deja/g++.pt/t03.C index 29f687a..7e64060 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/t03.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/t03.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class A> class B { public: A a; }; static B<int> b_int; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/t04.C b/gcc/testsuite/g++.old-deja/g++.pt/t04.C index faa04fc..087c575 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/t04.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/t04.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class A> class B { public: A a; }; static B<int> b_int; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/t05.C b/gcc/testsuite/g++.old-deja/g++.pt/t05.C index 6dab744..9e69cbc 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/t05.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/t05.C @@ -1,9 +1,9 @@ -// Build don't link: +// { dg-do assemble } -template <class A> class B { // ERROR - candidates +template <class A> class B { // { dg-error "" } candidates A a; public: - B(A&aa); // ERROR - near match + B(A&aa); // { dg-error "" } near match ~B(); }; -static B<int> b_int (3); // ERROR - no matching function +static B<int> b_int (3); // { dg-error "" } no matching function diff --git a/gcc/testsuite/g++.old-deja/g++.pt/t06.C b/gcc/testsuite/g++.old-deja/g++.pt/t06.C index 8681f53..d3a65b3 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/t06.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/t06.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } typedef int I; int i; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/t07.C b/gcc/testsuite/g++.old-deja/g++.pt/t07.C index 3cdb3da..d144cad 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/t07.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/t07.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class A> class B { A a; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/t08.C b/gcc/testsuite/g++.old-deja/g++.pt/t08.C index ce24cca..8f8f37b 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/t08.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/t08.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class A> class B { A a; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/t09.C b/gcc/testsuite/g++.old-deja/g++.pt/t09.C index dab4730..98c855d 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/t09.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/t09.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } struct bs_1 { typedef int (*pfi) (void); diff --git a/gcc/testsuite/g++.old-deja/g++.pt/t10.C b/gcc/testsuite/g++.old-deja/g++.pt/t10.C index c70b902..560812c 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/t10.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/t10.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class A> class B { public: A a; B(); }; template <> class B<char> { public: int y[10]; }; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/t11.C b/gcc/testsuite/g++.old-deja/g++.pt/t11.C index 8137349..07abc71 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/t11.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/t11.C @@ -1,9 +1,9 @@ -// Build don't link: +// { dg-do assemble } template <class A> class B { public: A a; - B() { x = 2; } // ERROR - no x + B() { x = 2; } // { dg-error "" } no x }; static B<int> bi; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/t11a.C b/gcc/testsuite/g++.old-deja/g++.pt/t11a.C index 0dcd297..178f093d 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/t11a.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/t11a.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class A> class B { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/t12.C b/gcc/testsuite/g++.old-deja/g++.pt/t12.C index 0ebb045..86b65e2 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/t12.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/t12.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } class OBJECT {int a;}; class STDFILE {int b;}; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/t12a.C b/gcc/testsuite/g++.old-deja/g++.pt/t12a.C index e0f1e65..623f014 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/t12a.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/t12a.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } int a (void * x) { return 1; } typedef void *T; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/t13.C b/gcc/testsuite/g++.old-deja/g++.pt/t13.C index 2f589a7..f2c5180 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/t13.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/t13.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class A> class B { public: diff --git a/gcc/testsuite/g++.old-deja/g++.pt/t14.C b/gcc/testsuite/g++.old-deja/g++.pt/t14.C index 8532f2b..68443a0 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/t14.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/t14.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } class OBJECT { @@ -11,7 +11,7 @@ template <class T> class TESTA { public: TESTA(); - T foo(int i) {T t = 0; return t}; // ERROR - no semi + T foo(int i) {T t = 0; return t}; // { dg-error "" } no semi }; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/t14a.C b/gcc/testsuite/g++.old-deja/g++.pt/t14a.C index 694f846..c3a330a 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/t14a.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/t14a.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } class OBJECT { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/t16.C b/gcc/testsuite/g++.old-deja/g++.pt/t16.C index 02ceaee..e865bdf 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/t16.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/t16.C @@ -1,3 +1,4 @@ +// { dg-do run } extern "C" int printf (const char *, ...); template <class T> T max (const T&x, const T&y) { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/t18.C b/gcc/testsuite/g++.old-deja/g++.pt/t18.C index 760747e..de7a381 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/t18.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/t18.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } extern void byebye (); template <class T1, class T2> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/t20.C b/gcc/testsuite/g++.old-deja/g++.pt/t20.C index 07a86fa..2e985d8 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/t20.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/t20.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class X> class A { public: diff --git a/gcc/testsuite/g++.old-deja/g++.pt/t21.C b/gcc/testsuite/g++.old-deja/g++.pt/t21.C index f05f89f..e91e567 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/t21.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/t21.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class X> class A { public: int a; X x; }; template <class X> X f (A<X> a) { return a.x; } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/t22.C b/gcc/testsuite/g++.old-deja/g++.pt/t22.C index 1102baa..fe7a61a 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/t22.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/t22.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } class AA { public: static int xx; }; template <class X> class A { @@ -7,4 +7,4 @@ template <class X> class A { }; int AA::xx; -template <class Y> int A<Y>::x; // gets bogus error +template <class Y> int A<Y>::x; // { dg-bogus "" } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/t23.C b/gcc/testsuite/g++.old-deja/g++.pt/t23.C index 82221b3..2e6488a 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/t23.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/t23.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class T> class temp1 { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/t24.C b/gcc/testsuite/g++.old-deja/g++.pt/t24.C index 6032270..c2c2719 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/t24.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/t24.C @@ -1,8 +1,8 @@ -// Build don't link: -// Special g++ Options: +// { dg-do assemble } +// { dg-options "" } template <class X> int f (X x, X y) { return 23; } int foo () { - return f (7); // ERROR - + return f (7); // { dg-error "" } } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/t25.C b/gcc/testsuite/g++.old-deja/g++.pt/t25.C index 2319774..6c7db91 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/t25.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/t25.C @@ -1,8 +1,8 @@ -// Build don't link: +// { dg-do assemble } template <class X> int f (X x, X y) { return 23; } template <class X> int f (X x, int j = 3) { return 29; } int foo () { - return f (7); // gets bogus error - + return f (7); // { dg-bogus "" } } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/t26.C b/gcc/testsuite/g++.old-deja/g++.pt/t26.C index cfc1591..181419b 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/t26.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/t26.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class X> int f (X x, unsigned int j = 3) { return 29; } template <class X> int f (X x, X y) { return 23; } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/t27.C b/gcc/testsuite/g++.old-deja/g++.pt/t27.C index f3246e8..ed7c4b2 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/t27.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/t27.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class X> int f (X x, int * j) { return 29; } template <class X> int f (X x, ...) { return 23; } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/t28.C b/gcc/testsuite/g++.old-deja/g++.pt/t28.C index dd524cb..64b1a56 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/t28.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/t28.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class X> class B; template <class X> int f (B<X> b) { return 37; } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/t29.C b/gcc/testsuite/g++.old-deja/g++.pt/t29.C index 54a5052..bcc94a3 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/t29.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/t29.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class X, int n> X f (auto X (*x)[n]) { return (*x)[n/2]; } extern int i[30]; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/t30.C b/gcc/testsuite/g++.old-deja/g++.pt/t30.C index 42d88ea..45da04c 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/t30.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/t30.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class X, int n> X f (auto X (*x)[n]) { return (*x)[n/2]; } extern int i[30], i2[33]; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/t31.C b/gcc/testsuite/g++.old-deja/g++.pt/t31.C index 8800ebe..4e3718b 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/t31.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/t31.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } struct B { int foo (); }; int B::foo() { return 37; } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/t32.C b/gcc/testsuite/g++.old-deja/g++.pt/t32.C index f2614f8..2e906ba 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/t32.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/t32.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class X> struct A { int fooo (int x); @@ -7,7 +7,7 @@ template <class X> struct A { inline int z () { return 5; } }; -template <class Y> int A<Y>::fooo (int t) { return (this->*(x?&A<Y>::y : &A<Y>::z))() + t; } // gets bogus error +template <class Y> int A<Y>::fooo (int t) { return (this->*(x?&A<Y>::y : &A<Y>::z))() + t; } // { dg-bogus "" } A<int> ai; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/t32a.C b/gcc/testsuite/g++.old-deja/g++.pt/t32a.C index 13dfda1..d4456d9 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/t32a.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/t32a.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } struct A { int x; @@ -7,4 +7,4 @@ struct A { int foo (int j); }; -int A::foo (int q) { return q + (this->*(x ? &A::y : &A::z)) (); } // gets bogus error +int A::foo (int q) { return q + (this->*(x ? &A::y : &A::z)) (); } // { dg-bogus "" } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/t34.C b/gcc/testsuite/g++.old-deja/g++.pt/t34.C index acf858a..db591ea 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/t34.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/t34.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class X> struct A { int operator [] (int); }; template <class Y> int A<Y>::operator[] (int j) { return j * j; } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/t34a.C b/gcc/testsuite/g++.old-deja/g++.pt/t34a.C index 7d5aebf..be08287 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/t34a.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/t34a.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } struct A { int operator[] (int); diff --git a/gcc/testsuite/g++.old-deja/g++.pt/t35.C b/gcc/testsuite/g++.old-deja/g++.pt/t35.C index f0ed971..70d8846 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/t35.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/t35.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: +// { dg-do assemble } +// { dg-options "" } template<class X> struct A { A (); ~A(); diff --git a/gcc/testsuite/g++.old-deja/g++.pt/t35a.C b/gcc/testsuite/g++.old-deja/g++.pt/t35a.C index 71712bf..48f4ca6 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/t35a.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/t35a.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class X> struct A { }; template <> struct A<int> { int foo (); }; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/t36.C b/gcc/testsuite/g++.old-deja/g++.pt/t36.C index bb791b9..b6bfe0d 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/t36.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/t36.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } void * foo () { typedef int * ip; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/t37.C b/gcc/testsuite/g++.old-deja/g++.pt/t37.C index cb957ec..99348c0 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/t37.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/t37.C @@ -1,13 +1,13 @@ -// Build don't link: +// { dg-do assemble } -class A { // ERROR - synthesized copy ctor +class A { // { dg-error "" } synthesized copy ctor public: - A(int); // ERROR - referenced below - A(float); // ERROR - referenced below + A(int); // { dg-error "" } referenced below + A(float); // { dg-error "" } referenced below ~A(); }; -A::A() { // ERROR - +A::A() { // { dg-error "" } } A::A(int) { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/t37a.C b/gcc/testsuite/g++.old-deja/g++.pt/t37a.C index 797b78d..b3f78c6 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/t37a.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/t37a.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } class A { public: diff --git a/gcc/testsuite/g++.old-deja/g++.pt/t38.C b/gcc/testsuite/g++.old-deja/g++.pt/t38.C index cd89282..5a9da92 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/t38.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/t38.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: +// { dg-do assemble } +// { dg-options "" } extern "C" int printf (const char *, ...); template<class X> struct A { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/t39.C b/gcc/testsuite/g++.old-deja/g++.pt/t39.C index d12ef81..82b584c 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/t39.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/t39.C @@ -1,3 +1,4 @@ +// { dg-do run } extern "C" int printf (const char *, ...); template <class T> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/t40.C b/gcc/testsuite/g++.old-deja/g++.pt/t40.C index 34768a9..e518ed2 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/t40.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/t40.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } struct A { struct B { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/t41.C b/gcc/testsuite/g++.old-deja/g++.pt/t41.C index c02f677..4bf91cc 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/t41.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/t41.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } struct A { struct B { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/t42.C b/gcc/testsuite/g++.old-deja/g++.pt/t42.C index 5545994..ca76d52 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/t42.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/t42.C @@ -1,3 +1,4 @@ +// { dg-do run } extern "C" void abort (); struct A { @@ -5,10 +6,10 @@ struct A { int x; stat (int j) { abort (); } }; - static int stat (double d) { return 0; } // gets bogus error - cfront takes it + static int stat (double d) { return 0; } // { dg-bogus "" } cfront takes it static int zap () { stat (0); - return stat (1); // gets bogus error - this should work + return stat (1); // { dg-bogus "" } this should work } }; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/test4.C b/gcc/testsuite/g++.old-deja/g++.pt/test4.C index f4c2a20..1beac03 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/test4.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/test4.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } class B { }; template <class x, int b> class X : public B { int y[b]; }; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/test5.C b/gcc/testsuite/g++.old-deja/g++.pt/test5.C index dc74c2d..cb9de7e 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/test5.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/test5.C @@ -1,3 +1,3 @@ -// Build don't link: +// { dg-do assemble } template <char *a, const char *b, char *const c> class A{int x;}; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/tiemann1r.C b/gcc/testsuite/g++.old-deja/g++.pt/tiemann1r.C index 65e6807..89b5453 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/tiemann1r.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/tiemann1r.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } struct bs_1 { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/tiemann2.C b/gcc/testsuite/g++.old-deja/g++.pt/tiemann2.C index 6bfcb48..2b1a12f 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/tiemann2.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/tiemann2.C @@ -1,3 +1,4 @@ +// { dg-do run } extern "C" int printf (const char *, ...); template <class T> T max (const T&x, const T&y) { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/to2.C b/gcc/testsuite/g++.old-deja/g++.pt/to2.C index 936729c..e3667c9 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/to2.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/to2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class A> class B { public: A a; }; static B<int> b_int; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/tt.C b/gcc/testsuite/g++.old-deja/g++.pt/tt.C index e597875..68b647c 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/tt.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/tt.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } #define DEF_A struct A { A() { a = 2; } int a; } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/tt2.C b/gcc/testsuite/g++.old-deja/g++.pt/tt2.C index f6c435b..694007b 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/tt2.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/tt2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } int f1 () { struct A { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ttp1.C b/gcc/testsuite/g++.old-deja/g++.pt/ttp1.C index 4c6bac0..af3f8f7 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/ttp1.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/ttp1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template<class E> class D { @@ -10,5 +10,5 @@ template<template<class> class D,class E> class C int main() { - C<int,D> c; // ERROR - args not match + C<int,D> c; // { dg-error "" } args not match } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ttp10.C b/gcc/testsuite/g++.old-deja/g++.pt/ttp10.C index ca0c9b6..ca04f90 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/ttp10.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/ttp10.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template<class T> class D { @@ -13,14 +13,14 @@ template<class T> int D<T>::f() template<template<class> class D,class E> class C { - D d; // ERROR - D is a template + D d; // { dg-error "" } D is a template public: int f(); }; template<template<class> class D,class E> int C<D,E>::f() { - return d.f(); // ERROR - d not properly declared + return d.f(); // { dg-error "" } d not properly declared } int main() diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ttp11.C b/gcc/testsuite/g++.old-deja/g++.pt/ttp11.C index 213eb40..06f5e0b 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/ttp11.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/ttp11.C @@ -1,3 +1,4 @@ +// { dg-do run } template<class T> class D { public: diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ttp12.C b/gcc/testsuite/g++.old-deja/g++.pt/ttp12.C index c9bc9f3..e0dae91 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/ttp12.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/ttp12.C @@ -1,3 +1,4 @@ +// { dg-do run } template<class T> class D { public: diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ttp13.C b/gcc/testsuite/g++.old-deja/g++.pt/ttp13.C index 2745c7a..dd8675a 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/ttp13.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/ttp13.C @@ -1,3 +1,4 @@ +// { dg-do run } template<class T> class D { public: diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ttp14.C b/gcc/testsuite/g++.old-deja/g++.pt/ttp14.C index 04877d6..96f170f 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/ttp14.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/ttp14.C @@ -1,3 +1,4 @@ +// { dg-do run } template<class T> class D { T a; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ttp15.C b/gcc/testsuite/g++.old-deja/g++.pt/ttp15.C index 25f3c4d..b664702 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/ttp15.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/ttp15.C @@ -1,3 +1,4 @@ +// { dg-do run } template<class T> class D { public: diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ttp16.C b/gcc/testsuite/g++.old-deja/g++.pt/ttp16.C index ac736fa..07ed77a 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/ttp16.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/ttp16.C @@ -1,3 +1,4 @@ +// { dg-do run } template<class T> class D { T a; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ttp17.C b/gcc/testsuite/g++.old-deja/g++.pt/ttp17.C index 6852404..65e5e8f 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/ttp17.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/ttp17.C @@ -1,3 +1,4 @@ +// { dg-do run } template<class T> class D { public: diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ttp18.C b/gcc/testsuite/g++.old-deja/g++.pt/ttp18.C index 6c9e579..e3f0969 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/ttp18.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/ttp18.C @@ -1,3 +1,4 @@ +// { dg-do run } template<class T> class D { public: diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ttp19.C b/gcc/testsuite/g++.old-deja/g++.pt/ttp19.C index 8a24946..76ff601 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/ttp19.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/ttp19.C @@ -1,3 +1,4 @@ +// { dg-do run } #include <vector> template<template<class> class D,class E> class C diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ttp2.C b/gcc/testsuite/g++.old-deja/g++.pt/ttp2.C index 5badbe2..ccfa901 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/ttp2.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/ttp2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template<class E> class D { @@ -10,5 +10,5 @@ template<template<class> class D,int> class C int main() { - C<1,D> c; // ERROR - args not match + C<1,D> c; // { dg-error "" } args not match } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ttp20.C b/gcc/testsuite/g++.old-deja/g++.pt/ttp20.C index e3b26c6..c9f7912 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/ttp20.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/ttp20.C @@ -1,3 +1,4 @@ +// { dg-do run } template<class T> class D { public: diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ttp21.C b/gcc/testsuite/g++.old-deja/g++.pt/ttp21.C index c6cc24b..c1a4fd0 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/ttp21.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/ttp21.C @@ -1,3 +1,4 @@ +// { dg-do run } template<class T> class D { public: diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ttp22.C b/gcc/testsuite/g++.old-deja/g++.pt/ttp22.C index 7eac0ed..01f08c0 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/ttp22.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/ttp22.C @@ -1,3 +1,4 @@ +// { dg-do run } template<class T> class D { public: diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ttp23.C b/gcc/testsuite/g++.old-deja/g++.pt/ttp23.C index 636bb1c..8db7f38 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/ttp23.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/ttp23.C @@ -1,3 +1,4 @@ +// { dg-do run } template<class T> class D { public: diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ttp24.C b/gcc/testsuite/g++.old-deja/g++.pt/ttp24.C index b73d1a1..999ec6c 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/ttp24.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/ttp24.C @@ -1,3 +1,4 @@ +// { dg-do run } template<class T> class D { public: diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ttp25.C b/gcc/testsuite/g++.old-deja/g++.pt/ttp25.C index c30905e..4464b6f 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/ttp25.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/ttp25.C @@ -1,3 +1,4 @@ +// { dg-do run } template<class T> class D { public: diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ttp26.C b/gcc/testsuite/g++.old-deja/g++.pt/ttp26.C index 6e6425e..0be2c44 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/ttp26.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/ttp26.C @@ -1,3 +1,4 @@ +// { dg-do run } template<class T, class U = int> class D { public: diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ttp27.C b/gcc/testsuite/g++.old-deja/g++.pt/ttp27.C index 7ecf301..e29b83e 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/ttp27.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/ttp27.C @@ -1,3 +1,4 @@ +// { dg-do run } template<class T> class D { public: diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ttp28.C b/gcc/testsuite/g++.old-deja/g++.pt/ttp28.C index 5948dc5..91480ca 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/ttp28.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/ttp28.C @@ -1,3 +1,4 @@ +// { dg-do run } template<class T> class D { public: diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ttp29.C b/gcc/testsuite/g++.old-deja/g++.pt/ttp29.C index b431ad0..cdf542a 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/ttp29.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/ttp29.C @@ -1,3 +1,4 @@ +// { dg-do run } template<class T> class D { public: diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ttp3.C b/gcc/testsuite/g++.old-deja/g++.pt/ttp3.C index 322dd19..2350104 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/ttp3.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/ttp3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template<class E,class F> class D { @@ -10,5 +10,5 @@ template<template<class> class D,class E> class C int main() { - C<D,int> c; // ERROR - param list not match// WARNING - sees it as not having a type + C<D,int> c; // { dg-error "" } param list not match/sees it as not having a type } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ttp30.C b/gcc/testsuite/g++.old-deja/g++.pt/ttp30.C index c47b157..6e5724e 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/ttp30.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/ttp30.C @@ -1,3 +1,4 @@ +// { dg-do run } template<class T> class D { public: diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ttp31.C b/gcc/testsuite/g++.old-deja/g++.pt/ttp31.C index 4e1acf2..25dcc81 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/ttp31.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/ttp31.C @@ -1,3 +1,4 @@ +// { dg-do run } template<class T> class D { public: diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ttp32.C b/gcc/testsuite/g++.old-deja/g++.pt/ttp32.C index 5c7a63a..a03dba2 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/ttp32.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/ttp32.C @@ -1,3 +1,4 @@ +// { dg-do run } template<class T> class D { public: diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ttp33.C b/gcc/testsuite/g++.old-deja/g++.pt/ttp33.C index 3755ff3..c5e2664 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/ttp33.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/ttp33.C @@ -1,3 +1,4 @@ +// { dg-do run } template<class T> class D { public: diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ttp34.C b/gcc/testsuite/g++.old-deja/g++.pt/ttp34.C index d605043..469d20d 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/ttp34.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/ttp34.C @@ -1,3 +1,4 @@ +// { dg-do run } template<class T> class D { public: diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ttp35.C b/gcc/testsuite/g++.old-deja/g++.pt/ttp35.C index 655f406..4e02a95 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/ttp35.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/ttp35.C @@ -1,3 +1,4 @@ +// { dg-do run } template<int T, class U = int> class D { public: diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ttp36.C b/gcc/testsuite/g++.old-deja/g++.pt/ttp36.C index 976bc0e..2836e8a 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/ttp36.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/ttp36.C @@ -1,3 +1,4 @@ +// { dg-do run } template<int T, class U = int> class D { public: diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ttp37.C b/gcc/testsuite/g++.old-deja/g++.pt/ttp37.C index 01b0d29..4ef30dd 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/ttp37.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/ttp37.C @@ -1,3 +1,4 @@ +// { dg-do run } template<int T, class U = int> class D { public: diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ttp38.C b/gcc/testsuite/g++.old-deja/g++.pt/ttp38.C index 00c663c..be4bca9 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/ttp38.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/ttp38.C @@ -1,3 +1,4 @@ +// { dg-do run } template<class T, class U = int> class D { public: diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ttp39.C b/gcc/testsuite/g++.old-deja/g++.pt/ttp39.C index 24ff6c0..a962004 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/ttp39.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/ttp39.C @@ -1,3 +1,4 @@ +// { dg-do run } template<class T, class U = T> class D { public: diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ttp4.C b/gcc/testsuite/g++.old-deja/g++.pt/ttp4.C index 249ad9c..0b65ad6 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/ttp4.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/ttp4.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template<class E> class D { @@ -6,7 +6,7 @@ template<class E> class D template<template<class> class D,class E> class C { - D<1> d; // ERROR - arg not match + D<1> d; // { dg-error "" } arg not match }; int main() diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ttp40.C b/gcc/testsuite/g++.old-deja/g++.pt/ttp40.C index d30b4d6..49d39e1 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/ttp40.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/ttp40.C @@ -1,3 +1,4 @@ +// { dg-do run } #include <vector> template<class E,template<class> class DD = std::vector> class C diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ttp41.C b/gcc/testsuite/g++.old-deja/g++.pt/ttp41.C index f206c03..18a3322 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/ttp41.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/ttp41.C @@ -1,3 +1,4 @@ +// { dg-do run } template<template<class> class D,class E> class C { public: diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ttp42.C b/gcc/testsuite/g++.old-deja/g++.pt/ttp42.C index b2610df..53bdae1 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/ttp42.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/ttp42.C @@ -1,3 +1,4 @@ +// { dg-do run } template <class T, template <class T> class C> struct X {}; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ttp43.C b/gcc/testsuite/g++.old-deja/g++.pt/ttp43.C index a020655..d18a4eb 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/ttp43.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/ttp43.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template < class T, template <class> class E1, template <class> class E2 > struct Add { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ttp44.C b/gcc/testsuite/g++.old-deja/g++.pt/ttp44.C index 7f797e6..f977fcb 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/ttp44.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/ttp44.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template < class T, template < class > class E1, template < class > class E2 > class Add { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ttp45.C b/gcc/testsuite/g++.old-deja/g++.pt/ttp45.C index 05fcd9d..9ff2aa7 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/ttp45.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/ttp45.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template<class M, class T> struct temp2; template<template<class> class M, class T> struct temp2<M<T>, T> {}; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ttp46.C b/gcc/testsuite/g++.old-deja/g++.pt/ttp46.C index 23a32a8..b741179 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/ttp46.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/ttp46.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <template<class> class TT> void f() {} template <template<class,class> class TT> void f() {} diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ttp47.C b/gcc/testsuite/g++.old-deja/g++.pt/ttp47.C index 731ce40..268ce87 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/ttp47.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/ttp47.C @@ -1,3 +1,4 @@ +// { dg-do run } template <template<class,class> class TT, class T> void f(T) { } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ttp48.C b/gcc/testsuite/g++.old-deja/g++.pt/ttp48.C index 33d0d47..355caf5 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/ttp48.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/ttp48.C @@ -1,3 +1,4 @@ +// { dg-do run } template <template<int> class TT, class T> void f(T) { } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ttp49.C b/gcc/testsuite/g++.old-deja/g++.pt/ttp49.C index b0a02d2..8449849 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/ttp49.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/ttp49.C @@ -1,9 +1,9 @@ -// Build don't link: +// { dg-do assemble } template <int i> class C {}; template <template <long> class TT> class D {}; int main() { - D<C> d; // ERROR - args not match + D<C> d; // { dg-error "" } args not match } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ttp5.C b/gcc/testsuite/g++.old-deja/g++.pt/ttp5.C index 4b835e8..155f125 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/ttp5.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/ttp5.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template<int> class D { @@ -6,7 +6,7 @@ template<int> class D template<template<int> class D,class E> class C { - D<int> d; // ERROR - arg not match + D<int> d; // { dg-error "" } arg not match }; int main() diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ttp50.C b/gcc/testsuite/g++.old-deja/g++.pt/ttp50.C index 4892e0c..365cfaf 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/ttp50.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/ttp50.C @@ -1,3 +1,4 @@ +// { dg-do run } template <class T, template <T> class TT> class C {}; template <int> class D {}; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ttp51.C b/gcc/testsuite/g++.old-deja/g++.pt/ttp51.C index 9a497b7..db83349 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/ttp51.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/ttp51.C @@ -1,3 +1,4 @@ +// { dg-do run } template<class E, int i, class F, class G=int, int j=i, class H=E> class D { }; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ttp52.C b/gcc/testsuite/g++.old-deja/g++.pt/ttp52.C index fb841b9..5d883fd 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/ttp52.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/ttp52.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template<class A,class B> class mymap {}; @@ -13,6 +13,6 @@ class base // specialization template<class Key, class Value> class base<Key, Value, mymap<int, int > > -{ // ERROR - type/value mismatch +{ // { dg-error "" } type/value mismatch }; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ttp53.C b/gcc/testsuite/g++.old-deja/g++.pt/ttp53.C index e5e87b4..b43771c 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/ttp53.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/ttp53.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Submitted by Erez Louidor Lior <s3824888@techst02.technion.ac.il> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ttp54.C b/gcc/testsuite/g++.old-deja/g++.pt/ttp54.C index bae649a..a789e93 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/ttp54.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/ttp54.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Reported by Bruce Eckel <Bruce@EckelObjects.com> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ttp55.C b/gcc/testsuite/g++.old-deja/g++.pt/ttp55.C index 10af608..d04dbb8b 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/ttp55.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/ttp55.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Testing overloading of function argument involving template template // parameters diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ttp56.C b/gcc/testsuite/g++.old-deja/g++.pt/ttp56.C index 562f430..70c2312 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/ttp56.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/ttp56.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // by Paul Burchard <burchard@pobox.com>, Level Set Systems, Inc. // Copyright (C) 1999 Free Software Foundation @@ -10,7 +10,7 @@ template<class Y> class B { }; -template<template<class XX> class AA> // gets bogus error - `template <class XX> template <class X> class A<X>' previously declared here +template<template<class XX> class AA> // { dg-bogus "" } `template <class XX> template <class X> class A<X>' previously declared here class C { class D { }; @@ -21,6 +21,6 @@ class C { }; int main() { - C<A> c; // gets bogus error - redefinition of `template <class XX> template <class X> class A<X>' + C<A> c; // { dg-bogus "" } redefinition of `template <class XX> template <class X> class A<X>' } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ttp57.C b/gcc/testsuite/g++.old-deja/g++.pt/ttp57.C index 7c7c938..3fe33a8 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/ttp57.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/ttp57.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Alex Samuel <samuel@codesourcery.com> namespace NS diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ttp58.C b/gcc/testsuite/g++.old-deja/g++.pt/ttp58.C index 729996f..4a3188c 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/ttp58.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/ttp58.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Alex Samuel <samuel@codesourcery.com> namespace NS diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ttp59.C b/gcc/testsuite/g++.old-deja/g++.pt/ttp59.C index 20880ff..7404846 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/ttp59.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/ttp59.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Marcin Kowalczyk <qrczak@knm.org.pl> template<template<typename> class t1, typename t0> void single() diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ttp6.C b/gcc/testsuite/g++.old-deja/g++.pt/ttp6.C index cdea182..e527dc5 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/ttp6.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/ttp6.C @@ -1,3 +1,4 @@ +// { dg-do run } template<int> class F { }; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ttp60.C b/gcc/testsuite/g++.old-deja/g++.pt/ttp60.C index 856d0f5..a34d089 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/ttp60.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/ttp60.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // Origin: "Marcin 'Qrczak' Kowalczyk" <qrczak@knm.org.pl> -// Build don't link: template<template<typename> class t1, typename t0> t1<t0> single() { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ttp61.C b/gcc/testsuite/g++.old-deja/g++.pt/ttp61.C index eb1f02c..90ee042 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/ttp61.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/ttp61.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // Origin: grg at ai dot mit dot edu -// Build don't link: class A; template<template<class Ignored> class base> class C : diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ttp62.C b/gcc/testsuite/g++.old-deja/g++.pt/ttp62.C index 1ff649d..6faabe1 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/ttp62.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/ttp62.C @@ -1,3 +1,4 @@ +// { dg-do run } // Origin: Ewgenij Gawrilow <gawrilow@math.TU-Berlin.DE> extern "C" void abort (); diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ttp63.C b/gcc/testsuite/g++.old-deja/g++.pt/ttp63.C index 43abedb..75453de 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/ttp63.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/ttp63.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Kriang Lerdsuwanakij <lerdsuwa@users.sourceforge.net> template <template <class> class TT> class X {}; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ttp64.C b/gcc/testsuite/g++.old-deja/g++.pt/ttp64.C index bfbc425..4cc1b98 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/ttp64.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/ttp64.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: David Margery <David.Margery@irisa.fr> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ttp65.C b/gcc/testsuite/g++.old-deja/g++.pt/ttp65.C index 9f4507a..fbc7dee 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/ttp65.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/ttp65.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 2000 Free Software Foundation // Contributed by Kriang Lerdsuwanakij <lerdsuwa@users.sourceforge.net> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ttp7.C b/gcc/testsuite/g++.old-deja/g++.pt/ttp7.C index 0b98217..729452b 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/ttp7.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/ttp7.C @@ -1,12 +1,12 @@ -// Build don't link: +// { dg-do assemble } template<class E> class D { }; -template<template<class> class D,class E> class C // ERROR - ref below +template<template<class> class D,class E> class C // { dg-error "" } ref below { - D<int,int> d; // ERROR - arg not match + D<int,int> d; // { dg-error "" } arg not match }; int main() diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ttp8.C b/gcc/testsuite/g++.old-deja/g++.pt/ttp8.C index fd2a67c..b376d1b 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/ttp8.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/ttp8.C @@ -1,3 +1,4 @@ +// { dg-do run } template<class E> class DD { }; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ttp9.C b/gcc/testsuite/g++.old-deja/g++.pt/ttp9.C index 3892b6e..7ca9a9a 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/ttp9.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/ttp9.C @@ -1,3 +1,4 @@ +// { dg-do run } template<class E,class F=int> class D { }; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/typedef1.C b/gcc/testsuite/g++.old-deja/g++.pt/typedef1.C index 8d674c9..4d6a1e4 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/typedef1.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/typedef1.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // Testcase for handling of typedef wierdness. -// Build don't link: template <class T> struct A diff --git a/gcc/testsuite/g++.old-deja/g++.pt/typedef2.C b/gcc/testsuite/g++.old-deja/g++.pt/typedef2.C index 18802fc..89fabaf 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/typedef2.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/typedef2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } typedef const int cint; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/typedef3.C b/gcc/testsuite/g++.old-deja/g++.pt/typedef3.C index 110e481..3787dea 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/typedef3.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/typedef3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class T> void f(T, T) diff --git a/gcc/testsuite/g++.old-deja/g++.pt/typedef4.C b/gcc/testsuite/g++.old-deja/g++.pt/typedef4.C index 4b1c5d8..4ccd246 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/typedef4.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/typedef4.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Mark Mitchell <mark@codesourcery.com> struct B1 { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/typename1.C b/gcc/testsuite/g++.old-deja/g++.pt/typename1.C index c34eff1..c3b07ff 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/typename1.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/typename1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template<class T> struct A { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/typename10.C b/gcc/testsuite/g++.old-deja/g++.pt/typename10.C index 1b122b2..f778c42 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/typename10.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/typename10.C @@ -1,7 +1,7 @@ -// Build don't link: +// { dg-do assemble } struct S { typedef int I; }; -void f(typename S::I); // ERROR - using typename outside of template +void f(typename S::I); // { dg-error "" } using typename outside of template diff --git a/gcc/testsuite/g++.old-deja/g++.pt/typename11.C b/gcc/testsuite/g++.old-deja/g++.pt/typename11.C index 1cee212..a22bd6c 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/typename11.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/typename11.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class T, int I> struct S { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/typename12.C b/gcc/testsuite/g++.old-deja/g++.pt/typename12.C index e247145..d6b6fe1 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/typename12.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/typename12.C @@ -1,6 +1,6 @@ -// Special g++ Options: +// { dg-do run } +// { dg-options "" } // execution test -// excess errors test int i = 0; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/typename13.C b/gcc/testsuite/g++.old-deja/g++.pt/typename13.C index 0facf66..b0d4b47 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/typename13.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/typename13.C @@ -1,6 +1,5 @@ -// Build don't link: -// Special g++ Options: -// excess errors test +// { dg-do assemble } +// { dg-options "" } template <class T> struct B diff --git a/gcc/testsuite/g++.old-deja/g++.pt/typename14.C b/gcc/testsuite/g++.old-deja/g++.pt/typename14.C index d2783ab..3fc7ff5 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/typename14.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/typename14.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -Wno-deprecated +// { dg-do assemble } +// { dg-options "-Wno-deprecated" } template <class T> struct B { @@ -10,6 +10,6 @@ template <class T> struct S : public B<T> { struct I { - void f(X x); // WARNING - implicit typename + void f(X x); // { dg-warning "" } implicit typename }; }; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/typename15.C b/gcc/testsuite/g++.old-deja/g++.pt/typename15.C index 8f263f0..aee28ce 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/typename15.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/typename15.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: +// { dg-do assemble } +// { dg-options "" } template <class T, bool B> struct R { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/typename16.C b/gcc/testsuite/g++.old-deja/g++.pt/typename16.C index f40a6a2..3402195 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/typename16.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/typename16.C @@ -1,5 +1,5 @@ -// Build don't run: -// Special g++ Options: -Wno-deprecated +// { dg-do link } +// { dg-options "-Wno-deprecated" } struct B { typedef int I; @@ -11,7 +11,7 @@ struct D1 : public B { template <class T> struct D2 : public D1<T> { - I i; // ERROR - not a type + I i; // { dg-error "" } not a type }; template <> @@ -27,5 +27,5 @@ void f(double) {} int main() { D2<int> d2i; - f(d2i.i); // ERROR - no member i + f(d2i.i); // { dg-error "" } no member i } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/typename17.C b/gcc/testsuite/g++.old-deja/g++.pt/typename17.C index 87b0ab3..a235d60 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/typename17.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/typename17.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class T> struct A diff --git a/gcc/testsuite/g++.old-deja/g++.pt/typename18.C b/gcc/testsuite/g++.old-deja/g++.pt/typename18.C index ed423e7..ac875f5 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/typename18.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/typename18.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: +// { dg-do assemble } +// { dg-options "" } // Origin: Mark Mitchell <mark@codesourcery.com> void X(); diff --git a/gcc/testsuite/g++.old-deja/g++.pt/typename19.C b/gcc/testsuite/g++.old-deja/g++.pt/typename19.C index 332f294..5733c9b 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/typename19.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/typename19.C @@ -1,4 +1,5 @@ -// Special g++ Options: +// { dg-do run } +// { dg-options "" } // Origin: Mark Mitchell <mark@codesourcery.com> template <class T> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/typename2.C b/gcc/testsuite/g++.old-deja/g++.pt/typename2.C index f2f2265..60a442c 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/typename2.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/typename2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } class Base { public: diff --git a/gcc/testsuite/g++.old-deja/g++.pt/typename20.C b/gcc/testsuite/g++.old-deja/g++.pt/typename20.C index 0f6c4fc..215ded4 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/typename20.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/typename20.C @@ -1,6 +1,6 @@ -// Build don't link: +// { dg-do assemble } +// { dg-options "" } // Origin: Mark Mitchell <mark@codesourcery.com> -// Special g++ Options: template <class T> struct B { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/typename21.C b/gcc/testsuite/g++.old-deja/g++.pt/typename21.C index 2dc52aa..bd15b56 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/typename21.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/typename21.C @@ -1,6 +1,6 @@ -// Build don't link: +// { dg-do assemble } +// { dg-options "" } // Origin: Mark Mitchell <mark@codesourcery.com> -// Special g++ Options: template <class T> struct S1 { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/typename22.C b/gcc/testsuite/g++.old-deja/g++.pt/typename22.C index ba9da1b..ce411bb 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/typename22.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/typename22.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Mark Mitchell <mark@codesourcery.com> template <class T> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/typename23.C b/gcc/testsuite/g++.old-deja/g++.pt/typename23.C index 5bdbe6f..33030c7 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/typename23.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/typename23.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template<class T> void value_type(T){} @@ -11,5 +11,5 @@ template<class>class Vector{}; template<class T> struct D:B<T>{ - Vector<value_type> r; // ERROR - value_type is not a type + Vector<value_type> r; // { dg-error "" } value_type is not a type }; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/typename24.C b/gcc/testsuite/g++.old-deja/g++.pt/typename24.C index 893d406..a376f24 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/typename24.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/typename24.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Mark Mitchell <mark@codesourcery.com> class ostream; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/typename25.C b/gcc/testsuite/g++.old-deja/g++.pt/typename25.C index eb3b4ee..aa1d109 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/typename25.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/typename25.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: +// { dg-do assemble } +// { dg-options "" } // Copyright (C) 2000 Free Software Foundation // Adapted by Nathan Sidwell 1 July 2000 <nathan@codesourcery.com> // Derived from a bug report by scott snyder <snyder@fnal.gov> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/typename26.C b/gcc/testsuite/g++.old-deja/g++.pt/typename26.C index c9bb0b2..14476b1 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/typename26.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/typename26.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 9 Aug 2000 <nathan@codesourcery.com> @@ -8,12 +8,12 @@ template<class LB> struct C { - typename LB::DataType; // ERROR - does not declare anything + typename LB::DataType; // { dg-error "" } does not declare anything typename LB::DataType m; }; struct B {}; struct A { - B; // ERROR - does not declare anything + B; // { dg-error "" } does not declare anything B m; }; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/typename27.C b/gcc/testsuite/g++.old-deja/g++.pt/typename27.C index 1e3e6d6..ae89a67 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/typename27.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/typename27.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 9 Aug 2000 <nathan@codesourcery.com> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/typename28.C b/gcc/testsuite/g++.old-deja/g++.pt/typename28.C index a538c4d..0f2ae51 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/typename28.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/typename28.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // // Origin: Jens.Maurer@gmx.net // Copyright (C) 2001 Free Software Foundation, Inc. diff --git a/gcc/testsuite/g++.old-deja/g++.pt/typename3.C b/gcc/testsuite/g++.old-deja/g++.pt/typename3.C index 8aea446..931b212 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/typename3.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/typename3.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -Wno-deprecated +// { dg-do assemble } +// { dg-options "-Wno-deprecated" } template <class T> struct A @@ -11,10 +11,10 @@ struct A template <class U> struct B : public A<U> { - A_Type Func(); // WARNING - implicit typename + A_Type Func(); // { dg-warning "" } implicit typename }; template <class U> -B<U>::A_Type B<U>::Func() { // WARNING - implicit typename +B<U>::A_Type B<U>::Func() { // { dg-warning "" } implicit typename } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/typename4.C b/gcc/testsuite/g++.old-deja/g++.pt/typename4.C index 07719e0..674cfb4 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/typename4.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/typename4.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -Wno-deprecated +// { dg-do assemble } +// { dg-options "-Wno-deprecated" } template <class T> struct A @@ -17,10 +17,10 @@ struct B : public A<U> template <class U> struct C : public B<U> { - A_Type Func(); // WARNING - implicit typename + A_Type Func(); // { dg-warning "" } implicit typename }; template <class U> -C<U>::A_Type C<U>::Func() { // WARNING - implicit typename +C<U>::A_Type C<U>::Func() { // { dg-warning "" } implicit typename } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/typename5.C b/gcc/testsuite/g++.old-deja/g++.pt/typename5.C index bbf4af7..bb97158 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/typename5.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/typename5.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -Wno-deprecated +// { dg-do assemble } +// { dg-options "-Wno-deprecated" } template <class T> struct A @@ -17,10 +17,10 @@ struct B : public A<U> template <class U> struct C : public B<U> { - void Func(A_Type); // WARNING - implicit typename + void Func(A_Type); // { dg-warning "" } implicit typename }; template <class U> -void C<U>::Func(A_Type) { // WARNING - implicit typename +void C<U>::Func(A_Type) { // { dg-warning "" } implicit typename } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/typename6.C b/gcc/testsuite/g++.old-deja/g++.pt/typename6.C index 1f72cec..34e356b 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/typename6.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/typename6.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class T> struct A @@ -10,10 +10,10 @@ struct A template <class U> struct B : public A<U> { - A_Type Func(); // ERROR - declaration + A_Type Func(); // { dg-error "" } declaration }; template <class U> -A<U>::A_Type B<U>::Func() // ERROR - function +A<U>::A_Type B<U>::Func() // { dg-error "" } function { } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/typename7.C b/gcc/testsuite/g++.old-deja/g++.pt/typename7.C index 6b4ef22..e7f3790 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/typename7.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/typename7.C @@ -1,6 +1,6 @@ +// { dg-do assemble } +// { dg-options "" } // Test for implicit typename -// Build don't link: -// Special g++ Options: template <class T> struct A { @@ -15,6 +15,6 @@ template <class T> struct D : public A <C <T> > { void f () { - B* new_entries = (B *) 0; // WARNING - implicit typename + B* new_entries = (B *) 0; // { dg-warning "" } implicit typename } }; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/typename8.C b/gcc/testsuite/g++.old-deja/g++.pt/typename8.C index e95a0a1..6eb818b 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/typename8.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/typename8.C @@ -1,23 +1,23 @@ -// Build don't link: +// { dg-do assemble } template < class T > class A { public: - typedef typename T::myT anotherT; // ERROR - undefined type + typedef typename T::myT anotherT; // { dg-error "" } undefined type - anotherT t; // ERROR - undefined type + anotherT t; // { dg-error "" } undefined type A() { } - A(anotherT _t) { // ERROR - undefined type + A(anotherT _t) { // { dg-error "" } undefined type t=_t; } - anotherT getT() { // ERROR - undefined type + anotherT getT() { // { dg-error "" } undefined type return t; } }; -class B : public A< B > // ERROR - forward declaration +class B : public A< B > // { dg-error "" } forward declaration { public: typedef int myT; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/typename9.C b/gcc/testsuite/g++.old-deja/g++.pt/typename9.C index 027d0a0..d619b58 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/typename9.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/typename9.C @@ -1,5 +1,6 @@ +// { dg-do run } +// { dg-options "-w" } // Test to make sure that implicit typename doesn't break name binding rules. -// Special g++ Options: -w typedef double A; template<class T> class B { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/unify1.C b/gcc/testsuite/g++.old-deja/g++.pt/unify1.C index 8d2e062..2413ab0 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/unify1.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/unify1.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // Tests non-unification of parms that don't use template parms. -// Build don't link: enum kind {a, b}; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/unify2.C b/gcc/testsuite/g++.old-deja/g++.pt/unify2.C index 89b043d..5a9b2d2 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/unify2.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/unify2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class T> struct S diff --git a/gcc/testsuite/g++.old-deja/g++.pt/unify3.C b/gcc/testsuite/g++.old-deja/g++.pt/unify3.C index 847dc0e..848aca7 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/unify3.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/unify3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class T1, class T2> struct ComputeBinaryType diff --git a/gcc/testsuite/g++.old-deja/g++.pt/unify4.C b/gcc/testsuite/g++.old-deja/g++.pt/unify4.C index 259920d..e4129ea 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/unify4.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/unify4.C @@ -1,3 +1,4 @@ +// { dg-do assemble } template <class T> void f (T); void g (); @@ -6,6 +7,6 @@ void g (int); int main () { - f (g); // ERROR - ambiguous unification + f (g); // { dg-error "" } ambiguous unification return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/unify6.C b/gcc/testsuite/g++.old-deja/g++.pt/unify6.C index 34b32e4..feac3f7 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/unify6.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/unify6.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 1999 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 21 May 1999 <nathan@acm.org> @@ -23,8 +23,8 @@ template<class T> void foo(T const *){} void f() { - foo<int &>(); // ERROR - attempt to build int & const * - foo<void ()>(); // ERROR - attempt to build void (const *)() + foo<int &>(); // { dg-error "" } attempt to build int & const * + foo<void ()>(); // { dg-error "" } attempt to build void (const *)() } typedef void (*Fptr)(); diff --git a/gcc/testsuite/g++.old-deja/g++.pt/unify7.C b/gcc/testsuite/g++.old-deja/g++.pt/unify7.C index 6afb8238..fb7e6b0 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/unify7.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/unify7.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 26 Feb 2000 <nathan@codesourcery.com> @@ -6,10 +6,10 @@ // template functions can be distinguished by return type alone. The return // type may also be a template parameter. -template <typename C> C foo (); // gets bogus error +template <typename C> C foo (); // { dg-bogus "" } void g () { - int (*pfn1) () = &foo; // gets bogus error - void (*pfn2) () = &foo; // gets bogus error + int (*pfn1) () = &foo; // { dg-bogus "" } + void (*pfn2) () = &foo; // { dg-bogus "" } } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/unify8.C b/gcc/testsuite/g++.old-deja/g++.pt/unify8.C index afe57d1..cc89c69 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/unify8.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/unify8.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 12 Jan 2001 <nathan@codesourcery.com> @@ -10,11 +10,11 @@ template <typename T> void Foo (T const **); template <typename T> void Bar (T const * const *); -void Foo (int); // ERROR - candidate -void Foo (float); // ERROR - candidate +void Foo (int); // { dg-error "" } candidate +void Foo (float); // { dg-error "" } candidate void baz (int **p1) { - Foo (p1); // ERROR - no such function + Foo (p1); // { dg-error "" } no such function Bar (p1); // OK } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/union1.C b/gcc/testsuite/g++.old-deja/g++.pt/union1.C index a1da446..6f17cf1 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/union1.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/union1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } union Un {int i;}; diff --git a/gcc/testsuite/g++.old-deja/g++.pt/union2.C b/gcc/testsuite/g++.old-deja/g++.pt/union2.C index f064e4e..9eb4a87 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/union2.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/union2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: David Mazieres <dm@amsterdam.lcs.mit.edu> template<class T> struct vector_base { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/using1.C b/gcc/testsuite/g++.old-deja/g++.pt/using1.C index 3857d70..8147b2b 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/using1.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/using1.C @@ -1,3 +1,4 @@ +// { dg-do run } // Copyright (C) 2001, 2002 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 26 Feb 2001 <nathan@codesourcery.com> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/using2.C b/gcc/testsuite/g++.old-deja/g++.pt/using2.C index 5d47b75..27ae74a 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/using2.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/using2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // // Copyright (C) 2001 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 22 May 2001 <nathan@codesourcery.com> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/vaarg.C b/gcc/testsuite/g++.old-deja/g++.pt/vaarg.C index 56ae0d4..c5a8c80 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/vaarg.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/vaarg.C @@ -1,3 +1,4 @@ +// { dg-do run } #include <stdarg.h> extern "C" void abort(); diff --git a/gcc/testsuite/g++.old-deja/g++.pt/vaarg2.C b/gcc/testsuite/g++.old-deja/g++.pt/vaarg2.C index 19d8574..ebdc5d7 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/vaarg2.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/vaarg2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 2000 Free Software Foundation // Contributed by Nathan Sidwell 22 June 2000 <nathan@codesourcery.com> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/vaarg3.C b/gcc/testsuite/g++.old-deja/g++.pt/vaarg3.C index 46c9824..f76def0 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/vaarg3.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/vaarg3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 2000 Free Software Foundation // Contributed by Nathan Sidwell 22 June 2000 <nathan@codesourcery.com> @@ -12,15 +12,15 @@ template <class Type> void PrintArgs (Type somearg, ...) { va_list argp; -va_start (argp, somearg); // ERROR - cannot pass non-POD +va_start (argp, somearg); // { dg-error "" } cannot pass non-POD Type value; -value = va_arg (argp, Type); // ERROR - cannot pass non-POD +value = va_arg (argp, Type); // { dg-error "" } cannot pass non-POD va_end (argp); } int main (void) { A dummy; -PrintArgs (dummy, dummy); // ERROR - cannot pass non-POD +PrintArgs (dummy, dummy); // { dg-error "" } cannot pass non-POD return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.pt/var1.C b/gcc/testsuite/g++.old-deja/g++.pt/var1.C index 06cbfa9..a15743d 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/var1.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/var1.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Jason Merrill <jason@cygnus.com> -template <class T> T t; // ERROR - template declaration of t +template <class T> T t; // { dg-error "" } template declaration of t diff --git a/gcc/testsuite/g++.old-deja/g++.pt/vbase1.C b/gcc/testsuite/g++.old-deja/g++.pt/vbase1.C index d386817..ddffa93 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/vbase1.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/vbase1.C @@ -1,3 +1,4 @@ +// { dg-do run } // Check that template classes handle inherited virtual bases // properly, initializing them before direct non-virtual bases. diff --git a/gcc/testsuite/g++.old-deja/g++.pt/virtual1.C b/gcc/testsuite/g++.old-deja/g++.pt/virtual1.C index efa97b7..f30730f 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/virtual1.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/virtual1.C @@ -1,3 +1,4 @@ +// { dg-do run } struct V { virtual ~V() {} }; template <class T> struct A : virtual V { }; template <class T> struct B { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/virtual2.C b/gcc/testsuite/g++.old-deja/g++.pt/virtual2.C index 59fab89..a056a15 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/virtual2.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/virtual2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Mark Mitchell <mark@codesourcery.com> template <class T> diff --git a/gcc/testsuite/g++.old-deja/g++.pt/virtual3.C b/gcc/testsuite/g++.old-deja/g++.pt/virtual3.C index 6088082..c34f508 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/virtual3.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/virtual3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Origin: Mark Mitchell <mark@codesourcery.com> struct S diff --git a/gcc/testsuite/g++.old-deja/g++.pt/virtual4.C b/gcc/testsuite/g++.old-deja/g++.pt/virtual4.C index 64dc51a..0cbd23c 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/virtual4.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/virtual4.C @@ -1,3 +1,4 @@ +// { dg-do run } // Origin: Mark Mitchell <mark@codesourcery.com> struct B diff --git a/gcc/testsuite/g++.old-deja/g++.pt/warn1.C b/gcc/testsuite/g++.old-deja/g++.pt/warn1.C index 96ed148..de9e7bb 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/warn1.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/warn1.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -Wunused +// { dg-do assemble } +// { dg-options "-Wunused" } template <class T> struct S @@ -13,7 +13,7 @@ struct S void foo() { R r; // no warning - int i; // WARNING - unused + int i; // { dg-warning "" } unused } S(); diff --git a/gcc/testsuite/g++.old-deja/g++.pt/warn2.C b/gcc/testsuite/g++.old-deja/g++.pt/warn2.C index a45e518..95514c9 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/warn2.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/warn2.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -Wall +// { dg-do assemble } +// { dg-options "-Wall" } // Origin: Jeroen@MMR.be template <typename T> diff --git a/gcc/testsuite/g++.old-deja/g++.rfg/00321_01-.C b/gcc/testsuite/g++.old-deja/g++.rfg/00321_01-.C index d7e08a3..8d0f35e 100644 --- a/gcc/testsuite/g++.old-deja/g++.rfg/00321_01-.C +++ b/gcc/testsuite/g++.old-deja/g++.rfg/00321_01-.C @@ -1,7 +1,7 @@ +// { dg-do assemble } // Here is a simple one. GCC correctly gives errors for this code when the // - -pedantic-errors option is used, whereas g++ doesn't. -// Build don't link: int (*p1)[3]; int (*p2)[5]; @@ -9,6 +9,6 @@ int (*p2)[5]; void test () { - p1 == p2; // ERROR - comparison.* - p1 > p2; // ERROR - comparison.* + p1 == p2; // { dg-error "" } comparison.* + p1 > p2; // { dg-error "" } comparison.* } diff --git a/gcc/testsuite/g++.old-deja/g++.rfg/00324_02-.C b/gcc/testsuite/g++.old-deja/g++.rfg/00324_02-.C index 4055ba8..4fc2a50 100644 --- a/gcc/testsuite/g++.old-deja/g++.rfg/00324_02-.C +++ b/gcc/testsuite/g++.old-deja/g++.rfg/00324_02-.C @@ -1,7 +1,7 @@ +// { dg-do assemble } // Another simple one. GCC corerctly gives errors for this code when the // - -pedantic-errors options is used. g++ doesn't. -// Build don't link: void f (int i) { } @@ -12,5 +12,5 @@ int i; void test () { - i ? f : fp; // ERROR - + i ? f : fp; // { dg-error "" } } diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/980310-1.C b/gcc/testsuite/g++.old-deja/g++.robertl/980310-1.C index ee558f4..860080e 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/980310-1.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/980310-1.C @@ -1,4 +1,5 @@ -// Special g++ Options: -g +// { dg-do run } +// { dg-options "-g" } // Internal compiler error on egcs 1.0.1 i586-pc-linux-gnulibc1. // From: Max Lawson <mlawson@drfmc.ceng.cea.fr> // Message-Id: <9803091022.AA07520@drfmc.ceng.cea.fr> diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb10.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb10.C index 7da5d75..ba9c6db 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb10.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb10.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <int object_size> class _fixed_size_allocator { diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb102.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb102.C index 9bbd47f..c82fd56 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb102.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb102.C @@ -1,3 +1,4 @@ +// { dg-do run } // Error: intenral compiler error on 1998/05/28 snapshot. #include <stdio.h> #include <stdlib.h> diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb103.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb103.C index ef25fb4..58abd0c 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb103.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb103.C @@ -1,11 +1,11 @@ -// Build don't link: +// { dg-do assemble } // Error: Internal compiler error in 2.7.2 & EGCS 1.0.0 template <int nlimb, int i> inline unsigned f (unsigned* ptr); template <int nlimb> inline unsigned f<nlimb,nlimb> (unsigned* ptr) -{ //ERROR - partial specialization of function? +{ //{ dg-error "" } partial specialization of function? return 1; } diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb104.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb104.C index 10c5945..d399a5f 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb104.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb104.C @@ -1,3 +1,4 @@ +// { dg-do run } #include <string.h> class SomeClass_t { diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb105.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb105.C index f431fba..400b15b 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb105.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb105.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template< class T > void sort( T* t, int n ) { diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb106.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb106.C index 9363171..9fa686e 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb106.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb106.C @@ -1,6 +1,5 @@ -// Skip if not native -// Special g++ Options: -O2 -fPIC -// Build don't link: +// { dg-do assemble { target native } } +// { dg-options "-O2 -fPIC " } struct T { char* f1; diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb107.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb107.C index 8d0f3cb..3e90a9c 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb107.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb107.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class T> struct X { diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb108.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb108.C index 3bf71b0..3f19c2a 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb108.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb108.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } class X { public: diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb109.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb109.C index 7a7c56c..e72ebc4 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb109.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb109.C @@ -1,3 +1,4 @@ +// { dg-do assemble } #include<map> #include<iostream> #include<vector> @@ -19,7 +20,7 @@ inline istream& operator>>(istream& is, Empty& ) { return is;} template<class VertexType, class EdgeType> class Graph -{ // ERROR - candidates +{ // { dg-error "" } candidates public: // public type interface typedef std::map<int, EdgeType > Successor; @@ -41,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) // ERROR - no size function + for(int i = 0; i < G.size(); ++i) // { dg-error "" } no size function { - os << G[i].first << " <"; // ERROR - no index operator + os << G[i].first << " <"; // { dg-error "" } no index operator // The compiler does not like this line!!!!!! typename Graph<VertexType, EdgeType>::Successor::iterator - startN = G[i].second.begin(), // ERROR - no index operator - endN = G[i].second.end(); // ERROR - no index operator + startN = G[i].second.begin(), // { dg-error "" } no index operator + endN = G[i].second.end(); // { dg-error "" } no index operator while(startN != endN) { - os << G[(*startN).first].first << ' ' // ERROR - no index operator + os << G[(*startN).first].first << ' ' // { dg-error "" } no index operator << (*startN).second << ' '; ++startN; } @@ -64,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); // ERROR - no bool constructor + Graph<std::string, Empty> V(true); // { dg-error "" } no bool constructor // ReadGraph(V, "gra1.dat"); // display of vertices with successors diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb11.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb11.C index 307aa6a..e5f29a1 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb11.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb11.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template<int N1, int N2> struct meta_max { diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb110.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb110.C index 54a1c8b..96b085f 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb110.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb110.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } class X { public: diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb111.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb111.C index 8afc921..c671de4 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb111.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb111.C @@ -1,3 +1,4 @@ +// { dg-do run } int main() { for(int i=1; i < 9; i++); for(int i=1; i < 9; i++); diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb112.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb112.C index c0231b7..69ee83c 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb112.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb112.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class STRUCT, class MEMBER> inline STRUCT * setback(MEMBER *bp, MEMBER STRUCT::*offset) { diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb113.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb113.C index 88d33b1..9c7ca6b 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb113.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb113.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } #include <iostream> class X : public std::streambuf diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb114.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb114.C index 020b88b..265d16c 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb114.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb114.C @@ -1,3 +1,4 @@ +// { dg-do run } #include <string.h> class SomeClass_t { diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb115.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb115.C index fc404d9..e7065b2 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb115.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb115.C @@ -1,4 +1,5 @@ -// Special g++ Options: -O +// { dg-do run } +// { dg-options "-O" } #include <iostream> #include <typeinfo> diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb116.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb116.C index 63f5e79..b942479 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb116.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb116.C @@ -1,3 +1,4 @@ +// { dg-do run } template <class INT> class b { diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb118.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb118.C index 51d86af..723e853 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb118.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb118.C @@ -1,5 +1,6 @@ +// { dg-do run } +// { dg-options "" } // Test for obsolete specialization syntax. Turn off -pedantic. -// Special g++ Options: #include <iostream> #include <typeinfo> diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb119.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb119.C index cecea83..d011ae1 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb119.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb119.C @@ -1,3 +1,4 @@ +// { dg-do assemble } template<bool B> void f() { @@ -5,6 +6,6 @@ void f() int main() { - f<bool>(); // ERROR - .* + f<bool>(); // { dg-error "" } .* } diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb12.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb12.C index 5c948f1..9b34944 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb12.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb12.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Error: Internal Compiler Error in 2.7.2. & egcs 1.0.0 #ifndef NO_META_MAX diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb120.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb120.C index b94820c..b261802 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb120.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb120.C @@ -1,3 +1,4 @@ +// { dg-do run } template<double functionToIntegrate(double)> double integrate(double a, double b, int numSamplePoints) { diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb121.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb121.C index 456615d..85dc43d 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb121.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb121.C @@ -1,14 +1,14 @@ -//Build don't link: +// { dg-do assemble } class A { private: int i1_; public: - void f(int const i1 = 1); // ERROR - previous specification + void f(int const i1 = 1); // { dg-error "" } previous specification }; void A::f(int const i1 = 1) -{ // ERROR - duplicate default argument +{ // { dg-error "" } duplicate default argument i1_ = i1; } diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb122.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb122.C index 9cf3033..f520171 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb122.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb122.C @@ -1,6 +1,6 @@ -// Build don't link: +// { dg-do assemble } +// { dg-options "" } // Disable -ansi -pedantic-errors because of GNU extension -// Special g++ Options: template<class foo> class bar { public: diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb123.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb123.C index dd729d4..cb4505f 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb123.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb123.C @@ -1,5 +1,5 @@ -// Special g++ Options: -O2 -W -// Build don't link: +// { dg-do assemble } +// { dg-options "-O2 -W " } #include "stdio.h" void writeNote() throw( int ) diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb124.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb124.C index 92fa872..0be035a 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb124.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb124.C @@ -1,4 +1,4 @@ -//Build don't link: +// { dg-do assemble } #include <stdexcept> class X : public std::runtime_error { X (); diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb125.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb125.C index aff6ae6..915fbe6 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb125.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb125.C @@ -1,23 +1,22 @@ -// This is a crash test; we don't care how many normal errors we get. -// excess errors test - XFAIL *-*-* +// { dg-do assemble } struct test_box { void print(void); }; -void test<class BOX> (test_box *); // ERROR - illegal code +void test<class BOX> (test_box *); // { dg-error "" } illegal code class test_square { - friend void test<class BOX> (test_box *); // ERROR - does not match + friend void test<class BOX> (test_box *); // { dg-error "" } does not match } -template <class BOX> void test(BOX *the_box) // ERROR - semicolon missing - { +template <class BOX> void test(BOX *the_box) // { dg-error "" } semicolon missing + {x the_box->print(); - }; + }; // { dg-error "" } -template void test<> (test_box *); +template void test<> (test_box *); // { dg-error "" } diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb126.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb126.C index 8c634e8..c6c66c3 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb126.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb126.C @@ -1,3 +1,4 @@ +// { dg-do run } #include <string.h> class SomeClass_t { diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb127.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb127.C index f83b6c2..d8d28b3 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb127.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb127.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // Gets ICE 40. #include <vector> @@ -47,7 +48,7 @@ void ODEsolver::init() void ODEsolver::timeloop(vector<double>& y, double ts, double te, double dt) { - (ODEsolver::useMethod)(y,ts,dt); // ERROR - should use this->* + (ODEsolver::useMethod)(y,ts,dt); // { dg-error "" } should use this->* } int main (int nargs, char** args) diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb128.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb128.C index f3a65fc..d3d48e1 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb128.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb128.C @@ -1,6 +1,7 @@ +// { dg-do assemble } template<class T> struct A { - typedef T* iterator; // ERROR - pointer to reference + typedef T* iterator; // { dg-error "" } pointer to reference public: A(){} }; diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb129.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb129.C index 3be9340..83fb86b 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb129.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb129.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Gives ICE on EGCS release branch as of 98/06/08 on i686-pc-linux-gnulibc1) // From: Klaus-Georg Adams <Klaus-Georg.Adams@chemie.uni-karlsruhe.de> // Message-Id: <199806081358.PAA02505@achibm5.chemie.uni-karlsruhe.de> @@ -17,7 +17,7 @@ int main() find_if( l.begin(), l.end(), // This is a typo, it should be bind2nd, but an // ICE is not a very helpful diagnostic! - binder2nd( equal_to<int>(), 2 ) ); // ERROR - + binder2nd( equal_to<int>(), 2 ) ); // { dg-error "" } assert( *(it) == 2 ); } diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb129a.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb129a.C index e7d4272..bba5ff0 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb129a.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb129a.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Gives ICE on EGCS release branch as of 98/06/08 on i686-pc-linux-gnulibc1) // From: Klaus-Georg Adams <Klaus-Georg.Adams@chemie.uni-karlsruhe.de> // Message-Id: <199806081358.PAA02505@achibm5.chemie.uni-karlsruhe.de> @@ -16,7 +16,7 @@ int main() std::find_if( l.begin(), l.end(), // This is a typo, it should be bind2nd, but an // ICE is not a very helpful diagnostic! - std::binder2nd( std::equal_to<int>(), 2 ) ); // ERROR - + std::binder2nd( std::equal_to<int>(), 2 ) ); // { dg-error "" } assert( *(it) == 2 ); } diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb13.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb13.C index f0e4848..40c454a 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb13.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb13.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template<class T> class Array { public: diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb130.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb130.C index d4aad46..b1f0392 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb130.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb130.C @@ -1,7 +1,7 @@ -// Build don't link: +// { dg-do assemble } +// { dg-options "-Wall" } // Gives spurious warnings when compiled with -Wall // EGCS 06/08/98 i686-pc-linux-gnulibc1 -// Special g++ Options: -Wall // Message-Id: <199806081358.PAA02505@achibm5.chemie.uni-karlsruhe.de> // From: Klaus-Georg Adams <Klaus-Georg.Adams@chemie.uni-karlsruhe.de> diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb131.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb131.C index 34ee0af..75aab60 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb131.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb131.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // From: Klaus-Georg Adams <Klaus-Georg.Adams@chemie.uni-karlsruhe.de> // Reported against EGCS snaps 98/06/18. @@ -10,11 +10,11 @@ struct a { void bar( double ); void bar( float ); - void foo( void (a::*member)(float) ); // ERROR - candidate + void foo( void (a::*member)(float) ); // { dg-error "" } candidate }; a::a() { - foo( &junk ); // ERROR - junk is an unqualified-id. - foo( &bar ); // ERROR - bar is an unqualified-id. + foo( &junk ); // { dg-error "" } junk is an unqualified-id. + foo( &bar ); // { dg-error "" } bar is an unqualified-id. } diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb132.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb132.C index a7f41593..1a5b45a 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb132.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb132.C @@ -1,7 +1,7 @@ -// Build don't link: +// { dg-do assemble } +// { dg-options "-O -Wall -fgcse -frerun-loop-opt" } // From: Klaus-Georg Adams <Klaus-Georg.Adams@chemie.uni-karlsruhe.de> // Reported against EGCS snaps 98/06/28. -// Special g++ Options: -O -Wall -fgcse -frerun-loop-opt // // Compilation of this program with the flags g++ -Wall -O -fgcse // -frerun-loop-opt or -O2 produces spurious warnings in the standard diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb133.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb133.C index e2b25f6..685fdf1 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb133.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb133.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Gives ICE 109 // From: Klaus-Georg Adams <Klaus-Georg.Adams@chemie.uni-karlsruhe.de> // Reported against EGCS snaps 98/06/28. @@ -9,7 +9,7 @@ int main() { try { } - catch (bad_alloc) { // ERROR - parse error + catch (bad_alloc) { // { dg-error "" } parse error return 1; } return 0; diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb133a.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb133a.C index 2dc7a8b..eb6c72d 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb133a.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb133a.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Gives ICE 109 // From: Klaus-Georg Adams <Klaus-Georg.Adams@chemie.uni-karlsruhe.de> // Reported against EGCS snaps 98/06/28. @@ -7,7 +7,7 @@ int main() { try { } - catch (std::bad_alloc) { // ERROR - parse error + catch (std::bad_alloc) { // { dg-error "" } parse error return 1; } return 0; diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb133b.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb133b.C index e2b25f6..685fdf1 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb133b.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb133b.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Gives ICE 109 // From: Klaus-Georg Adams <Klaus-Georg.Adams@chemie.uni-karlsruhe.de> // Reported against EGCS snaps 98/06/28. @@ -9,7 +9,7 @@ int main() { try { } - catch (bad_alloc) { // ERROR - parse error + catch (bad_alloc) { // { dg-error "" } parse error return 1; } return 0; diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb14.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb14.C index 2a0fa52..0218a7e 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb14.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb14.C @@ -1,3 +1,4 @@ +// { dg-do run } extern "C" void abort (); diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb15.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb15.C index f56f313..1cb9fd1 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb15.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb15.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } #include<iostream> #include<cstddef> diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb16.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb16.C index 5dc259d..533b134 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb16.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb16.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template<class T> struct A { typedef T T1; diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb17.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb17.C index 7cb5009..4163399 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb17.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb17.C @@ -1,3 +1,4 @@ +// { dg-do run } #include <stdio.h> class A { diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb18.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb18.C index fd953fe..8f0a829 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb18.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb18.C @@ -1,8 +1,8 @@ -// Build don't link: +// { dg-do assemble } class C { }; void foo() { C c; - void * v = static_cast<void *>(c); // ERROR - illegal cast + void * v = static_cast<void *>(c); // { dg-error "" } illegal cast } diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb19.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb19.C index a5ddd36..60f4aa1 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb19.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb19.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } #define CRASH 1 #ifdef CRASH diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb2.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb2.C index b200021..e40afbe 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb2.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } typedef __SIZE_TYPE__ size_t; inline void *operator new(size_t, void *place) throw() { return place; } diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb20.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb20.C index 08c76d0..c15d4af 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb20.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb20.C @@ -1,5 +1,5 @@ +// { dg-do assemble } // Error: ICE on 2.7.2.3 and EGCS 1.0.0. -// Build don't link: template<int N1, int N2> struct meta_max { diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb21.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb21.C index 11b38cd..a061fc0 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb21.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb21.C @@ -1,3 +1,4 @@ +// { dg-do run } #include <vector> #include <sstream> diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb22.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb22.C index f604a5a..3d4cc03 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb22.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb22.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // Ambiguous conversion, three candidates: // builtin == (int, int), and the two user-defined operators // Each one requires a user-defined ICS where another uses builtin conversions, @@ -11,16 +12,16 @@ public: }; bool operator==(const MyInt& a, const int& b) -{ // ERROR - candidate +{ // { dg-error "" } candidate return (int)a == b; } bool operator==(const MyInt& a, const MyInt& b) -{ // ERROR - candidate +{ // { dg-error "" } candidate return (int)a == (int)b; } bool f() { - return 3 == MyInt(); // ERROR - ambiguous + return 3 == MyInt(); // { dg-error "" } ambiguous } diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb23.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb23.C index 8a0602a..920f458 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb23.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb23.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } class foo { protected: void __duplicate (); diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb24.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb24.C index 528af4c..5e2a3ee 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb24.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb24.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } #include <iostream> template < class T > diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb26.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb26.C index 2374b55..65c71ba 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb26.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb26.C @@ -1,3 +1,4 @@ +// { dg-do run } // // egcs-2.90.06 // cannot declare friend of enclosing class using its scope, works fine diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb27.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb27.C index 4e2d5ea..204a143 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb27.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb27.C @@ -1,8 +1,9 @@ +// { dg-do assemble } +// { dg-options "-Wno-deprecated" } /* bug.cc */ /* simple program to demonstrate the bug with named return values in gcc */ /* (w) 4.9.97 by Kurt Garloff <K.Garloff@ping.de> */ -// Special g++ Options: -Wno-deprecated // 8/28/1998 - This dies in add_conversions from dfs_walk, null CLASSTYPE_METHOD_VEC // for the test<T> record_type. This is marked as an expected failure for now, // until we actually fix it. @@ -28,8 +29,8 @@ class test // named return value version template <class T> -test<T> operator + (const test<T>& a, const test<T>& b) return c(a);// ERROR - named return value -{ c += b; } // ERROR - c undeclared +test<T> operator + (const test<T>& a, const test<T>& b) return c(a);// { dg-error "" } named return value +{ c += b; } // { dg-error "" } c undeclared int main() { diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb28.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb28.C index ab4e0b2..89f19d5 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb28.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb28.C @@ -1,4 +1,4 @@ -//Build don't link: +// { dg-do assemble } #include <vector> using namespace std; diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb29.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb29.C index ce8d499..bea0d12 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb29.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb29.C @@ -1,4 +1,4 @@ -//Build don't link: +// { dg-do assemble } #include <vector> using namespace std; diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb3.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb3.C index ccf6027..b7487e9 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb3.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } #include <complex> template<class T> class Vec { diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb30.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb30.C index 9814697..e0f290b 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb30.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb30.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } #include <fstream> class bifstream : public std::ifstream { diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb31.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb31.C index 33a12b8..1e3c8f0 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb31.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb31.C @@ -1,3 +1,4 @@ +// { dg-do run } #include<iostream> int main() { diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb32.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb32.C index 95e1617..a70c8f9 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb32.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb32.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } class A { public: void malloc(unsigned int); diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb33.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb33.C index 9664f42..50328ad 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb33.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb33.C @@ -1,3 +1,4 @@ +// { dg-do run } #include <fstream> #include <cstdio> diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb34.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb34.C index 08167b5..0818f7c 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb34.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb34.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } class Base { public: class Bar { public: virtual ~Bar() {}; }; diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb35.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb35.C index e28fb49..6546d7c 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb35.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb35.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } class string { diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb36.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb36.C index 337e5a7..56e67b3 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb36.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb36.C @@ -1,3 +1,4 @@ +// { dg-do assemble } #include <vector> using namespace std; @@ -13,6 +14,6 @@ private: template <typename T> foo<T>::foo() :v(), t() {} template <typename T=float> -foo<T>::foo(vector<int> v_) :v(v_), t() {} // ERROR - default arg for member template +foo<T>::foo(vector<int> v_) :v(v_), t() {} // { dg-error "" } default arg for member template foo<float> a; diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb37.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb37.C index be4b57d..185b632 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb37.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb37.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template<class T> struct A { typedef T T1; diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb38.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb38.C index 9a75405..e4bcf32 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb38.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb38.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } class string { public: diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb39.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb39.C index 98bee9c..144d3ff 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb39.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb39.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } #include <cctype> #include <iostream> #include <sstream> diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb4.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb4.C index 6972896..6496fc9 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb4.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb4.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // Error: Internal Compiler Error in GCC 2.7.2 and EGCS 1998/05/28 snapshot. #include <iostream> @@ -6,7 +7,7 @@ class some_base { public: class base_func_args; - virtual void func(base_func_args &) = 0; // ERROR - referenced below + virtual void func(base_func_args &) = 0; // { dg-error "" } referenced below }; class some_base::base_func_args @@ -29,7 +30,7 @@ public: float f; }; -class some_derived::func(derived_func_args &a) // ERROR - illegal member syntax +class some_derived::func(derived_func_args &a) // { dg-error "" } illegal member syntax { std::cout << a.i << ' ' << a.f << std::endl; } @@ -37,12 +38,12 @@ class some_derived::func(derived_func_args &a) // ERROR - illegal member syntax int main() { - some_derived d; // ERROR - abstract class - some_derived::derived_func_args dfa; // ERROR - incomplete class + some_derived d; // { dg-error "" } abstract class + some_derived::derived_func_args dfa; // { dg-error "" } incomplete class some_base *b = &d; dfa.i = 10; dfa.f = 20; - b->func(dfs); // ERROR - dfs not declared + b->func(dfs); // { dg-error "" } dfs not declared return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb41.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb41.C index 1cc7509..9f6ee5f 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb41.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb41.C @@ -1,3 +1,4 @@ +// { dg-do run } #include <iostream> #include <iterator> #include <string> diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb43.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb43.C index c4cf028..74912c1 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb43.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb43.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // All the pointer_to_binary_function cases used to fail because g++ // couldn't handle converting an overloaded function to a class type. // The first one should still fail because it requires an implicit conversion @@ -27,7 +28,7 @@ int main() sort( a.begin(), a.end(), compare<int> ); sort<vector<int>::iterator, pointer_to_binary_function<const Expr<int>, const Expr<int>, bool> > - ( a.begin(), a.end(), compare ); // ERROR - constructor is explicit + ( a.begin(), a.end(), compare ); // { dg-error "" } constructor is explicit sort( a.begin(), a.end(), ptr_fun<const Expr<int>, const Expr<int>, bool> (compare) ); sort( a.begin(), a.end(), diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb44.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb44.C index 3604233..314ec9d 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb44.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb44.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // spurious 'const' in error. // For egcs-2.91.34, the warning message refers to // class ostream & operator <<(class ostream &, const class Vector<T> &) @@ -13,7 +14,7 @@ using namespace std; template <class T> class Vector { - friend ostream& operator<< (ostream& out, const Vector<T> & vec); // WARNING - + friend ostream& operator<< (ostream& out, const Vector<T> & vec); // { dg-warning "" } }; template <class T> diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb45.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb45.C index 9e2642c..d6c0a40 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb45.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb45.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } class A {}; class B : public virtual A {}; template <class Imp> class C : public Imp {}; diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb46.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb46.C index d4a9d65..0a233d3 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb46.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb46.C @@ -1,3 +1,4 @@ +// { dg-do run } #include <iostream> class A1 { diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb48.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb48.C index 1d10bed..3b98a35 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb48.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb48.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } char *t1 (const char *s) { return const_cast<char *>(s); diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb49.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb49.C index 95c454e..c1d70a0 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb49.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb49.C @@ -1,5 +1,4 @@ -// Build don't link: -// excess errors test +// { dg-do assemble } // Here we declare ::S typedef struct s1 *S; @@ -22,7 +21,7 @@ class X { public: static T *do_something (); - friend class T; // ERROR - `T' is a template parameter + friend class T; // { dg-error "" } `T' is a template parameter friend class XX<T, U>; }; diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb5.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb5.C index 2721d8f..06e31b6 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb5.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb5.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } enum { a, b }; class Bug { diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb50.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb50.C index c7f9076..8d2c403 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb50.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb50.C @@ -1,3 +1,4 @@ +// { dg-do run } struct foo { }; int f(int a, int b) { diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb51.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb51.C index 0357f92..3f421b0 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb51.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb51.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } typedef unsigned long Xv_opaque; class DynaString diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb52.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb52.C index 50b4516..4607c1c 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb52.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb52.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } class base { protected: virtual void f(); diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb54.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb54.C index b8ac403..1e71ca8 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb54.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb54.C @@ -1,3 +1,4 @@ +// { dg-do run } #include <iomanip> #include <iostream> #include <cstdlib> diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb55.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb55.C index 0ab10d5..c1e2400 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb55.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb55.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Since the constructor is in streambuf.h, additional diagnostics are // produced, which are not really supported in the old-deja framework @@ -7,6 +7,6 @@ void t( char* buf ) { - std::istrstream str = buf; //ERROR - inaccessible copy constructor + std::istrstream str = buf; //{ dg-error "" } inaccessible copy constructor } diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb56.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb56.C index 0b4bb7d..90932de 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb56.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb56.C @@ -1,10 +1,10 @@ +// { dg-do assemble } // Error: Internal compiler error on 1998/05/28 snapshot. -// Build don't link: class foo { public: typedef int sometype; }; -struct die : public foo::sometype { // ERROR - invalid base type +struct die : public foo::sometype { // { dg-error "" } invalid base type }; diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb57.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb57.C index 5f7de55..b7879fa 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb57.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb57.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } #include <exception> //using namespace std; class A { diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb58.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb58.C index 3612034..566cf9a 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb58.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb58.C @@ -1,4 +1,5 @@ -// Special g++ Options: +// { dg-do run } +// { dg-options "" } // Test for g++ array init extension class A { diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb59.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb59.C index 395e838..84ccff2 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb59.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb59.C @@ -1,3 +1,4 @@ +// { dg-do run } #define INC_FUNCTIONAL 1 #define USE_STATIC_CAST 1 diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb6.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb6.C index 157bf47..6fddb85 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb6.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb6.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } class A { public: A() { t=0; } diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb60.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb60.C index 2229035..ea80a4c 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb60.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb60.C @@ -1,4 +1,4 @@ -//Build don't link: +// { dg-do assemble } #include <string> class t { diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb61.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb61.C index 370273a..68344a6 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb61.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb61.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } void action0(float& arg1) { diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb62.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb62.C index b197e0e..bffba04 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb62.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb62.C @@ -1,4 +1,4 @@ -//Build don't link: +// { dg-do assemble } #include <vector> void f(void) diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb63.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb63.C index f786e70..a1601f8 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb63.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb63.C @@ -1,4 +1,5 @@ -//Special g++ Options: +// { dg-do run } +// { dg-options "" } //This uses GNU extensions, so disable -ansi #include <stdio.h> #include <stdlib.h> diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb64.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb64.C index da043af..16f52e0 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb64.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb64.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class A> class B:public A { B(){} diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb65.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb65.C index b36c382..b7b535d 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb65.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb65.C @@ -1,3 +1,4 @@ +// { dg-do run } #include <iterator> using namespace std; diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb66.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb66.C index 00ef6b0..3088593 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb66.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb66.C @@ -1,3 +1,4 @@ +// { dg-do run } #include <cassert> #include <iostream> diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb67.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb67.C index 45cdedd..bebe995 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb67.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb67.C @@ -1,6 +1,6 @@ -// Build don't link: +// { dg-do assemble } /* Check whether a typedef for a basic type as a baseclass is diagnosed. */ typedef int an_int; -class bar : public an_int {}; // ERROR - not an aggregate +class bar : public an_int {}; // { dg-error "" } not an aggregate diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb69.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb69.C index 2daa5fe..5d3f7e6 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb69.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb69.C @@ -1,16 +1,17 @@ +// { dg-do assemble } // Test that g++ complains about referring to a builtin type in a // mem-initializer. // Contributed by Kevin Buhr <buhr@stat.wisc.edu> int r = 0; -struct foo { // ERROR - candidate - foo(int x) { r = 1; } // ERROR - candidate +struct foo { // { dg-error "" } candidate + foo(int x) { r = 1; } // { dg-error "" } candidate }; struct bar : foo { typedef int an_int; - bar() : bar::an_int(3) {} // ERROR - not a base + bar() : bar::an_int(3) {} // { dg-error "" } not a base }; int diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb7.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb7.C index 73c33ab..4785305 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb7.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb7.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } #include <vector> class T diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb70.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb70.C index 30da184..b17dc10 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb70.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb70.C @@ -1,6 +1,6 @@ +// { dg-do assemble } // conversion ops should be treated as coming from the most derived class // for overload resolution. See [over.match.funcs]. -// Build don't link: class X { public: diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb71.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb71.C index a9ed564..2e9b05c 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb71.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb71.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } typedef __SIZE_TYPE__ size_t; class A { @@ -15,7 +15,7 @@ friend class D; unsigned counter; }; -class D { //WARNING - only private members +class D { //{ dg-warning "" } only private members int ins( B*&); }; diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb73.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb73.C index 622d3ec..bf9cf59 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb73.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb73.C @@ -1,4 +1,5 @@ -// Special g++ Options: -O -Wall +// { dg-do run } +// { dg-options "-O -Wall" } // Depletes VM. #include <iostream> diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb74.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb74.C index 1ec7da6..5fb8211 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb74.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb74.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } class base { public: virtual ~base(); diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb75.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb75.C index 41ad816..c032c2a 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb75.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb75.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } int*& foo (int const *& x) { return const_cast<int*&> (x); diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb76.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb76.C index f8dba7b..c74e7bd 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb76.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb76.C @@ -1,4 +1,4 @@ -//Build don't link: +// { dg-do assemble } // the template operator!= interferes. It should be in a namespace. #include <utility> diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb77.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb77.C index 3db45cc..358c186 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb77.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb77.C @@ -1,3 +1,4 @@ +// { dg-do run } #include <iostream> #include <sstream> diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb79.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb79.C index b95bfafeb..e5905ff 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb79.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb79.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // Makes bogus x86 assembly code. #include <iostream> @@ -10,7 +11,7 @@ T max(T a, T b) } // Prototypes (enable one or the other) -double max<>(double, double); // ERROR - bogus code +double max<>(double, double); // { dg-error "" } bogus code // int max(int, int); int main() @@ -19,7 +20,7 @@ int main() double d = 1234.5678; cout.precision(12); - cout << max(d, i) << endl; // ERROR - - cout << max(i, d) << endl; // ERROR - + cout << max(d, i) << endl; // { dg-error "" } + cout << max(i, d) << endl; // { dg-error "" } return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb8.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb8.C index 213bb6d..d80414c 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb8.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb8.C @@ -1,12 +1,13 @@ +// { dg-do assemble } class foo { public: - operator <<(const void *); //ERROR - no return type - operator <<(char *); //ERROR - no return type + operator <<(const void *); //{ dg-error "" } no return type + operator <<(char *); //{ dg-error "" } no return type }; void main() -{ //ERROR - wrong return type for main +{ //{ dg-error "" } wrong return type for main foo f; f << (void*)0; } diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb80.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb80.C index 7161423..e30f7ef 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb80.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb80.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } #include <exception> class A { diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb81.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb81.C index 919fd58..1f05c60 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb81.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb81.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } class x { public: diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb82.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb82.C index 7492c8f..9bf0398 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb82.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb82.C @@ -1,12 +1,13 @@ +// { dg-do assemble } #include <stdio.h> template <int n1> -double val <int> () // ERROR - bogus code +double val <int> () // { dg-error "" } bogus code { return (double) n1; } int main () { - printf ("%d\n", val<(int)3> ()); // ERROR - val undeclared + printf ("%d\n", val<(int)3> ()); // { dg-error "" } val undeclared } diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb83.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb83.C index 0f42cf4..fdc8aab 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb83.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb83.C @@ -1,5 +1,5 @@ -// Skip if not native -// Special g++ Options: -fprofile-arcs -ftest-coverage +// { dg-do run { target native } } +// { dg-options "-fprofile-arcs -ftest-coverage" } void test_swap(int& x, int& y) throw() { diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb84.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb84.C index dce51d8..0d09059 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb84.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb84.C @@ -1,3 +1,4 @@ +// { dg-do run } // Error: Internal Compiler error on GCC 2.7.2.3 & EGCS 1998/05/23 snapshot. class A { diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb86.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb86.C index 1922dc2..d854afe 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb86.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb86.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class T> void foo (); template <class T> diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb87.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb87.C index eee6ff6..7d288bc 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb87.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb87.C @@ -1,6 +1,7 @@ +// { dg-do assemble } template <unsigned X, class T> struct Foo { friend void operator<<(int, Foo const &) {} }; template <unsigned X> class Bar : public Foo<X,int> {}; -inline Bar<0> bar(int,int,int) { return Bar<3>(); } // ERROR - no conversion +inline Bar<0> bar(int,int,int) { return Bar<3>(); } // { dg-error "" } no conversion diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb88.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb88.C index 006fe56..cb604bc 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb88.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb88.C @@ -1,5 +1,6 @@ +// { dg-do run } +// { dg-options "-w" } // Another magic NULL problem. -// Special g++ Options: -w #include <stddef.h> diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb9.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb9.C index 968c942..a64380d 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb9.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb9.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } template <class Key> class d0om_Hashmap { diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb90.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb90.C index 2a43645..0623241 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb90.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb90.C @@ -1,5 +1,5 @@ -// Special g++ Options: -O2 -// Build don't link: +// { dg-do assemble } +// { dg-options "-O2" } #ifdef HIDE_BUG #define realloc Realloc diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb91.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb91.C index 3e5ac2b..bcd3a3d 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb91.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb91.C @@ -1,3 +1,4 @@ +// { dg-do run } #include <sys/types.h> #include <algorithm> typedef short _eb91_int16_t; diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb92.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb92.C index 8cb1639..a9660e4 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb92.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb92.C @@ -1 +1,2 @@ -template<int N> f<0>(){} // ERROR - invalid code +// { dg-do assemble } +template<int N> f<0>(){} // { dg-error "" } invalid code diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb93.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb93.C index 988e65d..da5e7bd 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb93.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb93.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // Error: Internal compiler error on egcs 1998/05/28 snapshot. const double M_PI=3.14159265358979323846; @@ -26,5 +27,5 @@ inline double Sine() int main() { double f=Sine<32,5>() - return 0; // ERROR - parse error + return 0; // { dg-error "" } parse error } diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb94.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb94.C index 7f7c0b4..b3d2da1 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb94.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb94.C @@ -1,3 +1,4 @@ +// { dg-do assemble } class baseClass @@ -12,4 +13,4 @@ private: static int variable; // this is intentionally duplicated }; -myClass::variable = 0; //ERROR - no type +myClass::variable = 0; //{ dg-error "" } no type diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb95.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb95.C index 0d8e405..51d8cff 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb95.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb95.C @@ -1,3 +1,4 @@ +// { dg-do run } struct A {}; template <class T> diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb97.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb97.C index e05cc41..e273dab 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb97.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb97.C @@ -1,3 +1,4 @@ +// { dg-do run } // Creates bad assembly on sparc and x86 template<unsigned long SIZE> struct Array { }; diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb98.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb98.C index cc19f09..68404fe 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb98.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb98.C @@ -1,3 +1,4 @@ +// { dg-do assemble } // Error: Internal compiler error in egcs 1998/05/28 snapshot. @@ -13,5 +14,5 @@ void f() { - extent(b); // ERROR - no matching function + extent(b); // { dg-error "" } no matching function } diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb99.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb99.C index 4cced8b..7f2c83c 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb99.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb99.C @@ -1,3 +1,4 @@ +// { dg-do assemble } @@ -130,5 +131,5 @@ class Bar; int main() { ref_ptr<Baz> foo; - static_cast<Bar *> (foo)->DoSomething; //ERROR - invalid cast + static_cast<Bar *> (foo)->DoSomething; //{ dg-error "" } invalid cast } diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/ebnull-cast.C b/gcc/testsuite/g++.old-deja/g++.robertl/ebnull-cast.C index d220e90..d4c0a46 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/ebnull-cast.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/ebnull-cast.C @@ -1,3 +1,4 @@ +// { dg-do run } class null { null (null const&); void operator& (); diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/ebnull-oldcast.C b/gcc/testsuite/g++.old-deja/g++.robertl/ebnull-oldcast.C index cf6c21b..be3a564 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/ebnull-oldcast.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/ebnull-oldcast.C @@ -1,3 +1,4 @@ +// { dg-do run } class null { null (null const&); void operator& (); diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/ebnull.C b/gcc/testsuite/g++.old-deja/g++.robertl/ebnull.C index e6eea2d..fda61cc 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/ebnull.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/ebnull.C @@ -1,3 +1,4 @@ +// { dg-do run } class null { null (null const&); void operator& (); diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eh990323-1.C b/gcc/testsuite/g++.old-deja/g++.robertl/eh990323-1.C index 40df155..221a6d7 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eh990323-1.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eh990323-1.C @@ -1,3 +1,4 @@ +// { dg-do run } // check cleanup of template temporaries extern "C" void abort (); extern "C" void exit (int); diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eh990323-2.C b/gcc/testsuite/g++.old-deja/g++.robertl/eh990323-2.C index d672814..2c2e4bd 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eh990323-2.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eh990323-2.C @@ -1,3 +1,4 @@ +// { dg-do run } // check MI and VBC offsets on throw extern "C" void abort (); extern "C" void exit (int); diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eh990323-3.C b/gcc/testsuite/g++.old-deja/g++.robertl/eh990323-3.C index 9dce31c..e8369ca 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eh990323-3.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eh990323-3.C @@ -1,3 +1,4 @@ +// { dg-do run } // try throwing 0 cast to a class object extern "C" void abort (); extern "C" void exit (int); diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eh990323-4.C b/gcc/testsuite/g++.old-deja/g++.robertl/eh990323-4.C index 3884015..24c740d 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eh990323-4.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eh990323-4.C @@ -1,3 +1,4 @@ +// { dg-do run } // check MI and VBC offsets on throw extern "C" void abort (); extern "C" void exit (int); diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eh990323-5.C b/gcc/testsuite/g++.old-deja/g++.robertl/eh990323-5.C index 87718d2..7913c09 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eh990323-5.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eh990323-5.C @@ -1,3 +1,4 @@ +// { dg-do run } // check cleanup of partial array objects extern "C" void abort (void); extern "C" void exit (int); diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/ice990323-1.C b/gcc/testsuite/g++.old-deja/g++.robertl/ice990323-1.C index 06112d2..41fed6f 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/ice990323-1.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/ice990323-1.C @@ -1,9 +1,9 @@ -// Build don't link: +// { dg-do assemble } //test 2 struct A {}; void f() { - struct A; // ERROR - forward ref - throw *(new A); // ERROR - invalid use of undefined type + struct A; // { dg-error "" } forward ref + throw *(new A); // { dg-error "" } invalid use of undefined type } diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/ice990323-2.C b/gcc/testsuite/g++.old-deja/g++.robertl/ice990323-2.C index 5d08ada..6ba0f05 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/ice990323-2.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/ice990323-2.C @@ -1,3 +1,4 @@ +// { dg-do run } // check EH with templates extern "C" void abort (); extern "C" void exit (int); diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/ice990323-3.C b/gcc/testsuite/g++.old-deja/g++.robertl/ice990323-3.C index 842e647..37d5b69 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/ice990323-3.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/ice990323-3.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // try throwing overloaded function void f(int) @@ -11,5 +11,5 @@ void f(long) void g() { - throw &f; // ERROR - insufficient contextual information + throw &f; // { dg-error "" } insufficient contextual information } diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/ice990323-4.C b/gcc/testsuite/g++.old-deja/g++.robertl/ice990323-4.C index 7f3f20e..4332e0f 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/ice990323-4.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/ice990323-4.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // try throwing template function name template <class T> void f(T); @@ -9,5 +9,5 @@ template <class T> void f(T) void g() { - throw &f; // ERROR - insufficient contextual information + throw &f; // { dg-error "" } insufficient contextual information } diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/ice990323-5.C b/gcc/testsuite/g++.old-deja/g++.robertl/ice990323-5.C index 45225e3..c0dfcd5 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/ice990323-5.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/ice990323-5.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // check attempting to throw an overloaded function struct A { @@ -8,5 +8,5 @@ struct A { void g() { - throw &A::f; // ERROR - insufficient context + throw &A::f; // { dg-error "" } insufficient context } diff --git a/gcc/testsuite/g++.old-deja/g++.warn/cast-align1.C b/gcc/testsuite/g++.old-deja/g++.warn/cast-align1.C index 2876bf7..43cecab 100644 --- a/gcc/testsuite/g++.old-deja/g++.warn/cast-align1.C +++ b/gcc/testsuite/g++.old-deja/g++.warn/cast-align1.C @@ -1,7 +1,6 @@ -// Build don't link: -// Skip if not target: sparc-*-* +// { dg-do assemble { target sparc-*-* } } +// { dg-options "-ansi -pedantic-errors -Wcast-align" } -// Special g++ Options: -ansi -pedantic-errors -Wcast-align // Copyright (C) 1999 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 7 Dec 1999 <nathan@acm.org> @@ -24,5 +23,5 @@ void f3 (X *xp, Z *zp) void f4 (char *ptr) { - (Z *)ptr; // WARNING - alignment + (Z *)ptr; // { dg-warning "" } alignment } diff --git a/gcc/testsuite/g++.old-deja/g++.warn/compare1.C b/gcc/testsuite/g++.old-deja/g++.warn/compare1.C index 687d986..5407c93 100644 --- a/gcc/testsuite/g++.old-deja/g++.warn/compare1.C +++ b/gcc/testsuite/g++.old-deja/g++.warn/compare1.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -ansi -pedantic-errors -Wsign-compare +// { dg-do assemble } +// { dg-options "-ansi -pedantic-errors -Wsign-compare" } // Copyright (C) 2001 Free Software Foundation, Inc. // Contributed by Kaveh R. Ghazi <ghazi@caip.rutgers.edu> 5/13/2001 @@ -8,7 +8,7 @@ int foo(int x, int y, unsigned u) { /* A MAX_EXPR is non-negative if EITHER argument to the MAX_EXPR is determined to be non-negative. */ - if (u < (x >? -1)) // WARNING - signed and unsigned + if (u < (x >? -1)) // { dg-warning "" } signed and unsigned return x; if (u < (x >? 10)) return x; @@ -21,7 +21,7 @@ int foo(int x, int y, unsigned u) /* A MIN_EXPR is non-negative if BOTH arguments to the MIN_EXPR are determined to be non-negative. */ - if (u < ((x?11:8) <? -1)) // WARNING - signed and unsigned + if (u < ((x?11:8) <? -1)) // { dg-warning "" } signed and unsigned return x; if (u < ((x?11:8) <? 10)) return x; diff --git a/gcc/testsuite/g++.old-deja/g++.warn/flow1.C b/gcc/testsuite/g++.old-deja/g++.warn/flow1.C index bb34138..61f6a55 100644 --- a/gcc/testsuite/g++.old-deja/g++.warn/flow1.C +++ b/gcc/testsuite/g++.old-deja/g++.warn/flow1.C @@ -1,6 +1,6 @@ +// { dg-do assemble } +// { dg-options "-Wreturn-type" } // Test that we don't get a warning about flowing off the end. -// Build don't link: -// Special g++ Options: -Wreturn-type struct A { ~A (); diff --git a/gcc/testsuite/g++.old-deja/g++.warn/impint.C b/gcc/testsuite/g++.old-deja/g++.warn/impint.C index b253f3f..96c8fbe 100644 --- a/gcc/testsuite/g++.old-deja/g++.warn/impint.C +++ b/gcc/testsuite/g++.old-deja/g++.warn/impint.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 24 Feb 2000 <nathan@codesourcery.com> @@ -22,36 +22,36 @@ void rock (int, int = 3.5); void fn () { - X x1(3.5); // WARNING - double to int - X x2(3.5f); // WARNING - float to int - X x3(1, 3.5); // WARNING - double to int - X x4(1, 3.5f); // WARNING - float to int - X x5(3.5, 1); // WARNING - double to int - X x6(3.5f, 1); // WARNING - float to int + X x1(3.5); // { dg-warning "" } double to int + X x2(3.5f); // { dg-warning "" } float to int + X x3(1, 3.5); // { dg-warning "" } double to int + X x4(1, 3.5f); // { dg-warning "" } float to int + X x5(3.5, 1); // { dg-warning "" } double to int + X x6(3.5f, 1); // { dg-warning "" } float to int - X y1 = 3.5; // WARNING - double to int - X y2 = 3.5f; // WARNING - float to int + X y1 = 3.5; // { dg-warning "" } double to int + X y2 = 3.5f; // { dg-warning "" } float to int - int j1 (3.5); // WARNING - double to int - int j2 (3.5f); // WARNING - float to int + int j1 (3.5); // { dg-warning "" } double to int + int j2 (3.5f); // { dg-warning "" } float to int - int k1 = 3.5; // WARNING - double to int - int k2 = 3.5f; // WARNING - float to int + int k1 = 3.5; // { dg-warning "" } double to int + int k2 = 3.5f; // { dg-warning "" } float to int - j1 = 3.5; // WARNING - double to int - j2 = 3.5f; // WARNING - float to int + j1 = 3.5; // { dg-warning "" } double to int + j2 = 3.5f; // { dg-warning "" } float to int - foo (3.5); // WARNING - double to int - foo (3.5f); // WARNING - float to int + foo (3.5); // { dg-warning "" } double to int + foo (3.5f); // { dg-warning "" } float to int - wibble (3.5); // WARNING - double to int - wibble (3.5f); // WARNING - float to int - wibble (1, 3.5); // WARNING - double to int - wibble (1, 3.5f); // WARNING - float to int - wibble (3.5, 1); // WARNING - double to int - wibble (3.5f, 1); // WARNING - float to int + wibble (3.5); // { dg-warning "" } double to int + wibble (3.5f); // { dg-warning "" } float to int + wibble (1, 3.5); // { dg-warning "" } double to int + wibble (1, 3.5f); // { dg-warning "" } float to int + wibble (3.5, 1); // { dg-warning "" } double to int + wibble (3.5f, 1); // { dg-warning "" } float to int - punk (); // WARNING - double to int - rock (1); // WARNING - double to int + punk (); // { dg-warning "" } double to int + rock (1); // { dg-warning "" } double to int } diff --git a/gcc/testsuite/g++.old-deja/g++.warn/impint2.C b/gcc/testsuite/g++.old-deja/g++.warn/impint2.C index a522ffc..1690319 100644 --- a/gcc/testsuite/g++.old-deja/g++.warn/impint2.C +++ b/gcc/testsuite/g++.old-deja/g++.warn/impint2.C @@ -1,4 +1,4 @@ -// Build don't link: +// { dg-do assemble } // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 6 Mar 2000 <nathan@codesourcery.com> @@ -16,32 +16,32 @@ struct X void foo (int const &); void wibble (int const &); void wibble (int const &, int const &); -void punk (int const & = 3.5f); // WARNING - in passing +void punk (int const & = 3.5f); // { dg-warning "" } in passing void rock (); -void rock (int const &, int const & = 3.5f); // WARNING - in passing +void rock (int const &, int const & = 3.5f); // { dg-warning "" } in passing void fn () { - X x2(3.5f); // WARNING - float to int - X x4(1, 3.5f); // WARNING - float to int - X x6(3.5f, 1); // WARNING - float to int + X x2(3.5f); // { dg-warning "" } float to int + X x4(1, 3.5f); // { dg-warning "" } float to int + X x6(3.5f, 1); // { dg-warning "" } float to int - X y2 = 3.5f; // WARNING - float to int + X y2 = 3.5f; // { dg-warning "" } float to int - int j2 (3.5f); // WARNING - float to int + int j2 (3.5f); // { dg-warning "" } float to int - int k2 = 3.5f; // WARNING - float to int + int k2 = 3.5f; // { dg-warning "" } float to int - j2 = 3.5f; // WARNING - float to int + j2 = 3.5f; // { dg-warning "" } float to int - foo (3.5f); // WARNING - float to int + foo (3.5f); // { dg-warning "" } float to int - wibble (3.5f); // WARNING - float to int - wibble (1, 3.5f); // WARNING - float to int - wibble (3.5f, 1); // WARNING - float to int + wibble (3.5f); // { dg-warning "" } float to int + wibble (1, 3.5f); // { dg-warning "" } float to int + wibble (3.5f, 1); // { dg-warning "" } float to int - punk (); // WARNING - float to int - rock (1); // WARNING - float to int + punk (); // { dg-warning "" } float to int + rock (1); // { dg-warning "" } float to int } // and make sure we really know when something's unsigned diff --git a/gcc/testsuite/g++.old-deja/g++.warn/inline.C b/gcc/testsuite/g++.old-deja/g++.warn/inline.C index f18f1a0..7863be8 100644 --- a/gcc/testsuite/g++.old-deja/g++.warn/inline.C +++ b/gcc/testsuite/g++.old-deja/g++.warn/inline.C @@ -1,5 +1,5 @@ -// Build don't link: -// Special g++ Options: -ansi -pedantic-errors -Winline -O1 +// { dg-do assemble } +// { dg-options "-ansi -pedantic-errors -Winline -O1" } // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 9 Mar 2000 <nathan@codesourcery.com> @@ -14,7 +14,7 @@ inline void wibble () {} inline void wobble () -{} // gets bogus error - cannot inline +{} // { dg-bogus "" } cannot inline void bar (void (*)()); @@ -31,12 +31,12 @@ struct B void mwibble () {}; void mwobble () - {}; // gets bogus error - cannot inline + {}; // { dg-bogus "" } cannot inline static void swibble () {}; static void swobble () - {}; // gets bogus error - cannot inline + {}; // { dg-bogus "" } cannot inline }; void bar (void (B::*)()); @@ -60,7 +60,7 @@ void bar3 (B *b) struct C { virtual void vwobble () - {}; // gets bogus error - cannot inline + {}; // { dg-bogus "" } cannot inline }; void bar4 () diff --git a/gcc/testsuite/g++.old-deja/g++.warn/iomanip.C b/gcc/testsuite/g++.old-deja/g++.warn/iomanip.C index b7a47fa..c437b26 100644 --- a/gcc/testsuite/g++.old-deja/g++.warn/iomanip.C +++ b/gcc/testsuite/g++.old-deja/g++.warn/iomanip.C @@ -1,7 +1,7 @@ +// { dg-do assemble } +// { dg-options "-O -Winline" } // Bug: g++ wouldn't inline op<< because it was an explicit instantiation. // Origin: Jason Merrill <jason@cygnus.com> -// Special g++ Options: -O -Winline -// Build don't link: #include <iomanip> #include <iostream> diff --git a/gcc/testsuite/g++.old-deja/g++.warn/virt1.C b/gcc/testsuite/g++.old-deja/g++.warn/virt1.C index 2712add..4550dd5 100644 --- a/gcc/testsuite/g++.old-deja/g++.warn/virt1.C +++ b/gcc/testsuite/g++.old-deja/g++.warn/virt1.C @@ -1,10 +1,10 @@ -// Special g++ Options: -Woverloaded-virtual -// Build don't link: +// { dg-do assemble } +// { dg-options "-Woverloaded-virtual" } struct A { - virtual void f(); // WARNING - hidden + virtual void f(); // { dg-warning "" } hidden }; struct B: public A { - void f(int); // WARNING - by this + void f(int); // { dg-warning "" } by this }; diff --git a/gcc/testsuite/g++.old-deja/old-deja.exp b/gcc/testsuite/g++.old-deja/old-deja.exp index ba9b7ff..425fdd4 100644 --- a/gcc/testsuite/g++.old-deja/old-deja.exp +++ b/gcc/testsuite/g++.old-deja/old-deja.exp @@ -1,4 +1,4 @@ -# Copyright (C) 1988, 90, 91, 92, 1994, 1997, 2000 Free Software Foundation, Inc. +# Copyright (C) 1988, 90, 91, 92, 1994, 1997, 2000, 2003 Free Software Foundation, Inc. # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -14,49 +14,35 @@ # along with this program; if not, write to the Free Software # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. -# This file was written by Rob Savoye. (rob@cygnus.com) - -# -# these tests come from the original DejaGnu test suite -# developed at Cygnus Support. If this isn't deja gnu, I -# don't know what is... -# - -# load support procs -load_lib old-dejagnu.exp -load_lib g++.exp - - -# When a testcase doesn't have any special options, use these. -if ![info exists DEFAULT_CXXFLAGS] { - set DEFAULT_CXXFLAGS "-ansi -pedantic-errors -Wno-long-long" +# Load support procs. +load_lib g++-dg.exp +# If a testcase doesn't have special options, use these. +global DEFAULT_CXXFLAGS +if ![info exists DEFAULT_CXXFLAGS] then { + set DEFAULT_CXXFLAGS " -ansi -pedantic-errors -Wno-long-long" } -old-dejagnu-init -global GXX_UNDER_TEST - -# -# main test loop -# - -set dirlen [expr [string length "$srcdir/$subdir"] + 1]; -foreach file [lsort [find $srcdir/$subdir *.C]] { - # If we're only testing specific files and this isn't one of them, skip it. - set tfile [string range $file $dirlen end]; - if ![runtest_file_p $runtests $tfile] then { - continue - } - verbose "Testing $file" - - # We don't want old-dejagnu.exp to have to know about all the global - # variables we use. For now we tell it about CXXFLAGS and LIBS and - # leave LDFLAGS alone. - old-dejagnu $GXX_UNDER_TEST "$file" "$tfile" "" "$DEFAULT_CXXFLAGS" "-lstdc++" +# Initialize `dg'. +dg-init + +# Gather a list of all tests, with the exception of those in directories +# that are handled specially. +set tests [lsort [find $srcdir/$subdir *.C]] + +proc g++-dg-prune { system text } { + regsub -all "(^|\n)\[^\n\]*: In (\[^\n\]*function|method|\[^\n\]*structor) \[^\n\]*" $text "" text + regsub -all "(^|\n)\[^\n\]*: In instantiation of \[^\n\]*" $text "" text + regsub -all "(^|\n)\[^\n\]*: instantiated from \[^\n\]*" $text "" text + regsub -all "(^|\n)\[^\n\]*: At (top level|global scope):\[^\n\]*" $text "" text + regsub -all "(^|\n)\[^\n\]*file path prefix \[^\n\]* never used" $text "" text + regsub -all "(^|\n)\[^\n\]*linker input file unused since linking not done" $text "" text + regsub -all "(^|\n)collect: re(compiling|linking)\[^\n\]*" $text "" text + return $text } -# The framework doesn't like to see any error remnants, -# so remove them. -if [info exists errorInfo] then { - unset errorInfo -} +# Main loop. +dg-runtest $tests "" $DEFAULT_CXXFLAGS + +# All done. +dg-finish diff --git a/gcc/testsuite/lib/g++-dg.exp b/gcc/testsuite/lib/g++-dg.exp index ebf909b..d40c3c9 100644 --- a/gcc/testsuite/lib/g++-dg.exp +++ b/gcc/testsuite/lib/g++-dg.exp @@ -1,4 +1,4 @@ -# Copyright (C) 1997, 1999, 2000 Free Software Foundation, Inc. +# Copyright (C) 1997, 1999, 2000, 2003 Free Software Foundation, Inc. # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -24,6 +24,16 @@ load_lib scanasm.exp proc g++-dg-test { prog do_what extra_tool_flags } { # Set up the compiler flags, based on what we're going to do. + set options [list] + + # Tests should be able to use "dg-do repo". However, the dg test + # driver checks the argument to dg-do against a list of acceptable + # options, and "repo" is not among them. Therefore, we resort to + # this ugly approach. + if [string match "*-frepo*" $extra_tool_flags] then { + set do_what "repo" + } + switch $do_what { "preprocess" { set compile_type "preprocess" @@ -47,6 +57,10 @@ proc g++-dg-test { prog do_what extra_tool_flags } { # The following line is needed for targets like the i960 where # the default output file is b.out. Sigh. } + "repo" { + set compile_type "object" + set output_file "[file rootname [file tail $prog]].o" + } "run" { set compile_type "executable" # FIXME: "./" is to cope with "." not being in $PATH. @@ -62,13 +76,20 @@ proc g++-dg-test { prog do_what extra_tool_flags } { return "" } } - set options "" + if { $extra_tool_flags != "" } { lappend options "additional_flags=$extra_tool_flags" } set comp_output [g++_target_compile "$prog" "$output_file" "$compile_type" $options]; + if { $do_what == "repo" } { + set object_file "$output_file" + set output_file "[file rootname [file tail $prog]].exe" + concat comp_output \ + [g++_target_compile "$object_file" "$output_file" "executable" $options] + } + return [list $comp_output $output_file] } @@ -86,3 +107,20 @@ proc g++-dg-prune { system text } { return $text } + +# Record additional sources files that must be compiled along with the +# main source file. + +proc dg-gpp-additional-sources { args } { + global additional_sources + set additional_sources [lindex $args 1] +} + +# Record additional files -- other than source files -- that must be +# present on the system where the compiler runs. + +proc dg-gpp-additional-files { args } { + global additional_files + set additional_files [lindex $args 1] +} + diff --git a/gcc/testsuite/lib/g++.exp b/gcc/testsuite/lib/g++.exp index ac7b3f9..63808f8 100644 --- a/gcc/testsuite/lib/g++.exp +++ b/gcc/testsuite/lib/g++.exp @@ -1,4 +1,4 @@ -# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 2000, 2001, 2002 +# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 2000, 2001, 2002, 2003 # Free Software Foundation, Inc. # This program is free software; you can redistribute it and/or modify @@ -31,7 +31,8 @@ load_lib gcc-defs.exp set gpp_compile_options "" - +set additional_sources "" +set additional_files "" # # g++_version -- extract and print the version number of the compiler @@ -305,7 +306,35 @@ proc g++_target_compile { source dest type options } { exec rm -f $rponame } - return [target_compile $source $dest $type $options] + global additional_sources + global additional_files + set to_download "" + if { $additional_sources != "" } then { + if [is_remote host] { + lappend options "additional_flags=$additional_sources" + } + regsub -all " " $additional_sources " [file dirname $source]/" additional_sources + if ![is_remote host] { + lappend options "additional_flags=$additional_sources" + } + set to_download [concat $to_download $additional_sources] + } + if { $additional_files != "" } then { + regsub -all " " $additional_files " [file dirname $source]/" additional_files + set to_download [concat $to_download $additional_files] + } + if [is_remote host] { + foreach file $to_download { + remote_download host $file + } + } + + set result [target_compile $source $dest $type $options] + + set additional_sources "" + set additional_files "" + + return $result } # diff --git a/gcc/testsuite/lib/old-dejagnu.exp b/gcc/testsuite/lib/old-dejagnu.exp deleted file mode 100644 index 39c5515..0000000 --- a/gcc/testsuite/lib/old-dejagnu.exp +++ /dev/null @@ -1,606 +0,0 @@ -# Copyright (C) 1988, 90, 91, 92, 1994, 1996, 1997, 2000, 2001 Free Software Foundation, Inc. - -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. - -# This file was written by Rob Savoye. (rob@cygnus.com) -# With modifications by Mike Stump <mrs@cygnus.com>. - -# These tests come from the original DejaGnu test suite -# developed at Cygnus Support. If this isn't deja gnu, I -# don't know what is. -# -# Language independence is achieved by: -# -# 1) Using global $tool to indicate the language (eg: gcc, g++, etc.). -# This should only be used to look up other objects. We don't want to -# have to add code for each new language that is supported. If this is -# done right, no code needs to be added here for each new language. -# -# 2) Passing compiler options in as arguments. -# -# We require a bit of smarts in our caller to isolate us from the vagaries of -# each language. See old-deja.exp for the g++ example. - -# Useful subroutines. - -# process-option -- Look for and process a test harness option in the testcase. -# -# PROG is the pathname of the testcase. -# OPTION is the string to look for. -# MESSAGE is what to print if $verbose > 1. -# FLAG_NAME is one of ERROR, WARNING, etc. -# PATTERN is ??? - -proc process-option { prog option message flag_name pattern } { - global verbose - - set result "" - - set tmp [grep $prog "$option.*" line] - if ![string match "" $tmp] then { - foreach i $tmp { - #send_user "Found: $i\n" - set xfail_test 0 - set triplet_match 0 - regsub "\\*/$" [string trim $i] "" i - if [regexp "LINE +\[0-9\]+" $i xopt] then { - regsub "LINE" $xopt "" xopt; - regsub "LINE +\[0-9\]+" $i "" i - set i [lreplace $i 0 0 [expr "${xopt}-0"]]; - } - if [regexp "XFAIL( +\[^ \]+-\[^ \]+-\[^ \]+)*" $i xopt] then { - set xfail_test 1 - regsub "XFAIL( +\[^ \]+-\[^ \]+-\[^ \]+)*" $i "" i - regsub "XFAIL" $xopt "" xopt - if ![string match "" [string trim $xopt]] then { - foreach triplet $xopt { - if [istarget $triplet] { - set triplet_match 1; - break; - } - } - } else { - set triplet_match 1 - } - } - set compos [expr [llength $option] + 1] ;# Start of comment, if any - if { $xfail_test && $triplet_match } then { - lappend result [list [lindex $i 0] "X$flag_name" [lrange $i $compos end] "$pattern"] - } else { - lappend result [list [lindex $i 0] "$flag_name" [lrange $i $compos end] "$pattern"] - } - if { $verbose > 1 } then { - if [string match "" [lrange $i $compos end]] then { - send_user "Found $message for line [lindex $i 0]\n" - } else { - send_user "Found $message \"[lrange $i $compos end]\" for line [lindex $i 0]\n" - } - } - } - } - - #send_user "Returning: $result\n" - return $result -} - -# old-dejagnu-init -- set up some statistics collectors -# -# There currently isn't much to do, but always calling it allows us to add -# enhancements without having to update our callers. -# It must be run before calling `old-dejagnu'. - -proc old-dejagnu-init { } { -} - -# old-dejagnu-stat -- print the stats of this run -# -# ??? This is deprecated, and can be removed. - -proc old-dejagnu-stat { } { -} - -# old-dejagnu -- runs an old style DejaGnu test. -# -# Returns 0 if successful, 1 if their were any errors. -# PROG is the full path name of the file to compile. -# -# CFLAGSX is the options to always pass to the compiler. -# -# DEFAULT_CFLAGS are additional options if the testcase has none. -# -# LIBS_VAR is the name of the global variable containing libraries (-lxxx's). -# This is also ignored. -# -# LIBS is any additional libraries to link with. This *cannot* be specified -# with the compiler flags because otherwise gcc will issue, for example, a -# "-lg++ argument not used since linking not done" warning which will screw up -# the test for excess errors. We could ignore such messages instead. -# -# Think of "cflags" here as "compiler flags", not "C compiler flags". - -proc old-dejagnu { compiler prog name cflagsx default_cflags libs } { - global verbose - global tool - global subdir ;# eg: g++.old-dejagnu - global host_triplet - global tmpdir - - set runflag 1 - set execbug_flag 0 - set excessbug_flag 0 - set pattern "" - set text "\[- A-Za-z0-9\.\;\"\_\:\'\`\(\)\!\#\=\+\?\&\*]*" - - if ![info exists tmpdir] then { - set tmpdir "/tmp" - } - -# look for keywords that change the compiler options -# -# There are two types of test, negative and affirmative. Negative -# tests have the keyword of "ERROR - " or "WARNING - " on the line -# expected to produce an error. This is followed by the pattern. If -# the desired error or warning message appears, then the test passes. -# -# Affirmative test can have the following keywords "gets bogus error", -# "causes invalid C code", "invalid assembly code", "causes abort", -# "causes segfault", "causes linker error", "execution test fails". If -# the pattern after the keyword matches, then the test is a failure. -# -# One can specify particular targets for expected failures of the above -# keywords by putting "XFAIL target-triplet" after the keyword. -# -# Example: -# -# void f () -#{ -# int i[2], j; -# A a (int (i[1]), j); // gets bogus error - late parsing XFAIL *-*-* -# A b (int (i[1]), int j); // function -# a.k = 0; // gets bogus error - late parsing XFAIL *-*-* -# b (i, j); -#} -# -# Note also, that one can add a comment with the keyword ("late parsing" -# in the above example). -# -# If any of the tests contain the special pattern "FIXME -" that test is -# not run because it will produce incorrect output. -# -# Testcases can supply special options to the compiler with a line containing -# "Special.*Options: ...", where ".*" can be anything (eg: g++) and "..." are -# the additional options to pass to the compiler. Nothing else may appear -# after the options. IE: for a C testcase -# /* Special Options: -fomit-frame-pointer */ /* Oops! */ -# is wrong, -# /* Special Options: -fomit-frame-pointer */ -# is right. If no such Special Options are found, $default_cflags is used. -# FIXME: Can there be multiple lines of these? -# -# Other keywords: "Build don't link:", "Build don't run:", "Build then link:", -# "Additional sources: <file>.cc ..." - -# $name is now passed in. -# set name "[file tail [file dirname $prog]]/[file tail $prog]" - - set tmp [grep $prog "FIXME -.*"] - if ![string match "" $tmp] then { - foreach i $tmp { - warning "[file tail [file dirname $prog]]/[file tail $prog] [lrange $i 2 end]" - } - return 1 - } - - set tmp [lindex [grep $prog "Special.*Options:.*"] 0] - set cflags "" - set to_download "" - - regsub -all "\n\[^\n\]+(\n|$)" $tmp "\n" tmp - set tmp [string trim $tmp] - if ![string match "" $tmp] then { - regsub "^.*Special.*Options:" $tmp "" tmp - lappend cflags "additional_flags=$tmp" - verbose "Adding special options $tmp" 2 - } else { - lappend cflags "additional_flags=$default_cflags" - } - - if { $cflagsx != "" } { - lappend cflags "additional_flags=$cflagsx" - } - - set tmp [lindex [grep $prog "Additional sources: .*"] 0] - regsub -all "\n\[^\n\]+(\n|$)" $tmp "\n" tmp - set tmp [string trim $tmp] - if ![string match "" $tmp] then { - regsub "^.*Additional.*sources:" $tmp "" tmp - if [is_remote host] { - lappend cflags "additional_flags=$tmp" - } - regsub -all " " $tmp " [file dirname $prog]/" tmp - if ![is_remote host] { - lappend cflags "additional_flags=$tmp" - } - set to_download [concat $to_download $tmp] - verbose "Adding sources $tmp" - } - - set tmp [lindex [grep $prog "Additional files: .*"] 0] - regsub -all "\n\[^\n\]+(\n|$)" $tmp "\n" tmp - set tmp [string trim $tmp] - if ![string match "" $tmp] then { - regsub "^.*Additional.*files:" $tmp "" tmp - regsub -all " " $tmp " [file dirname $prog]/" tmp - set to_download [concat $to_download $tmp] - verbose "Downloading files $tmp" - } - - lappend cflags "compiler=$compiler" - - regsub -all "\[./\]" "$name" "-" output; - set output "$tmpdir/$output.exe"; - set compile_type "executable" - - set tmp [lindex [grep $prog "Build don.t link:"] 0] - if ![string match "" $tmp] then { - set compile_type "object" - set runflag 0 - set output "$tmpdir/[file tail [file rootname $prog]].o" - verbose "Will compile $prog to object" 3 - } - - set tmp [lindex [grep $prog "Build then link:"] 0] - if ![string match "" $tmp] then { - set compile_type "object" - set runflag 2 - set final_output "$output" - set output "$tmpdir/[file tail [file rootname $prog]].o" - verbose "Will compile $prog to object, then link it" 3 - } - - set tmp [lindex [grep $prog "Build don.t run:"] 0] - if ![string match "" $tmp] then { - set runflag 0 - verbose "Will compile $prog to binary" 3 - } - - set tmp [grep $prog "Skip if (|not )feature:.*"]; - if { $tmp != "" } { - foreach line $tmp { - if [regexp "Skip if not feature" $line] { - set not 1; - } else { - set not 0; - } - regsub "^.*Skip if (|not )feature:\[ \]*" "$line" "" i; - set is_set 0; - foreach j $i { - if [target_info exists $j] { - set is_set 1; - break; - } - } - if { $is_set != $not } { - untested "$name: Test skipped: ${line}($j set)" - return; - } - } - } - - set tmp [grep $prog "Skip if (|not )target:.*"]; - if { $tmp != "" } { - foreach line $tmp { - if [regexp "Skip if not target:" $line] { - set not 1; - } else { - set not 0; - } - regsub "^.*Skip if (|not )target:\[ \]*" "$line" "" i; - set ist 0; - foreach j $i { - if [istarget $j] { - set ist 1; - break; - } - } - if { $ist != $not } { - untested "$name: Test skipped: ${line}" - return; - } - } - } - - if ![isnative] { - set tmp [lindex [grep $prog "Skip if not native"] 0]; - if { $tmp != "" } { - untested "$name: Test skipped because not native"; - return; - } - } else { - set tmp [lindex [grep $prog "Skip if native"] 0]; - if { $tmp != "" } { - untested "$name: Test skipped because native"; - return; - } - } - - lappend cflags "libs=$libs" - -# -# Look for the other keywords and extract the error messages. -# `message' contains all the things we found. -# ??? We'd like to use lappend below instead of concat, but that doesn't -# work (adds an extra level of nesting to $tmp). -# - - set message "" - - set tmp [process-option $prog "ERROR - " "an error message" ERROR "$text error$text"] - if ![string match "" $tmp] then { - set runflag 0 - set message [concat $message $tmp] - } - - set tmp [process-option $prog "WARNING - " "a warning message" WARNING "warning"] - if ![string match "" $tmp] then { - set runflag 0 - set message [concat $message $tmp] - } - - set tmp [process-option $prog "gets bogus error" "a bogus error" BOGUS $text] - if ![string match "" $tmp] then { - set message [concat $message $tmp] - } - - set tmp [process-option $prog "causes invalid C code" "a bad C translation" BADC $text] - if ![string match "" $tmp] then { - set message [concat $message $tmp] - } - - set tmp [process-option $prog "invalid assembly code" "some invalid assembly code" BADASM $text] - if ![string match "" $tmp] then { - set message [concat $message $tmp] - } - - set tmp [process-option $prog "causes abort" "an abort cause" ABORT $text] - if ![string match "" $tmp] then { - set message [concat $message $tmp] - } - - set tmp [process-option $prog "causes segfault" "a segfault cause" SEGFAULT $text] - if ![string match "" $tmp] then { - set message [concat $message $tmp] - } - - set tmp [process-option $prog "causes linker error" "a linker error" LINKER $text] - if ![string match "" $tmp] then { - set message [concat $message $tmp] - } - - set tmp [process-option $prog "execution test fails" "an execution failure" EXECO $text] - if ![string match "" $tmp] then { - set execbug_flag 1 - set message [concat $message $tmp] - warning "please use execution test - XFAIL *-*-* in $prog instead" - } - - set tmp [process-option $prog "execution test - " "an excess error failure" EXEC $text] - if ![string match "" $tmp] then { - set message [concat $message $tmp] - } - - set tmp [process-option $prog "excess errors test fails" "an excess error failure" EXCESSO $text] - if ![string match "" $tmp] then { - set excessbug_flag 1 - set message [concat $message $tmp] - warning "please use excess errors test - XFAIL *-*-* in $prog instead" - } - - set tmp [process-option $prog "excess errors test - " "an excess error failure" EXCESS $text] - if ![string match "" $tmp] then { - set message [concat $message $tmp] - } - - set expect_crash \ - [process-option $prog "crash test - " "a crash" CRASH $text] - if {$expect_crash != "" - && [lindex [lindex $expect_crash 0] 1] == "XCRASH"} then { - set expect_crash 1 - } else { - set expect_crash 0 - } - -# -# run the compiler and analyze the results -# - # Download any source or header files we might need. - if [is_remote host] { - foreach file $to_download { - remote_download host $file - } - } - - # Since we don't check return status of the compiler, make sure - # we can't run a.out when the compilation fails. - remote_file build delete $output - set comp_output [${tool}_target_compile $prog $output $compile_type $cflags] - if { $runflag == 2 && [file exists $output] } then { - set runflag 0 - set comp_output [concat $comp_output [${tool}_target_compile $output $final_output "executable" $cflags]] - set output $final_output - } - - # Delete things like "ld.so: warning" messages. - set comp_output [prune_gcc_output [prune_warnings $comp_output]] - - if [regexp "\[Ii\]nternal (compiler )?error" $comp_output] then { - if $expect_crash then { - setup_xfail "*-*-*" - } - fail "$name caused compiler crash" - remote_file build delete $output - return 1 - } - - #send_user "\nold_dejagnu.exp: comp_output1 = :$comp_output:\n\n" - #send_user "\nold_dejagnu.exp: message = :$message:\n\n" - #send_user "\nold_dejagnu.exp: message length = [llength $message]\n\n" - - set last_line 0 - foreach i $message { - - #send_user "\nold_dejagnu.exp: i = :$i:\n\n" - - # Remove all error messages for the line [lindex $i 0] - # in the source file. If we find any, success! - set line [lindex $i 0] - set pattern [lindex $i 2] - - # Multiple tests one one line don't work, because we remove all - # messages on the line for the first test. So skip later ones. - if { $line == $last_line } { - continue - } - set last_line $line - - if [regsub -all "(^|\n)\[^\n\]+:$line:\[^\n\]*" $comp_output "" comp_output] { - set comp_output [string trimleft $comp_output] - set ok pass - set uhoh fail - } else { - set ok fail - set uhoh pass - } - - case [lindex $i 1] { - "ERROR" { - $ok "$name $pattern (test for errors, line $line)" - } - "XERROR" { - x$ok "$name $pattern (test for errors, line $line)" - } - "WARNING" { - $ok "$name $pattern (test for warnings, line $line)" - } - "XWARNING" { - x$ok "$name $pattern (test for warnings, line $line)" - } - "BOGUS" { - $uhoh "$name $pattern (test for bogus messages, line $line)" - } - "XBOGUS" { - x$uhoh "$name $pattern (test for bogus messages, line $line)" - } - "ABORT" { - $uhoh "$name $pattern (test for compiler aborts, line $line)" - } - "XABORT" { - x$uhoh "$name $pattern (test for compiler aborts, line $line)" - } - "SEGFAULT" { - $uhoh "$name $pattern (test for compiler segfaults, line $line)" - } - "XSEGFAULT" { - x$uhoh "$name $pattern (test for compiler segfaults, line $line)" - } - "LINKER" { - $uhoh "$name $pattern (test for linker problems, line $line)" - } - "XLINKER" { - x$uhoh "$name $pattern (test for linker problems, line $line)" - } - "BADC" { - $uhoh "$name $pattern (test for Bad C code, line $line)" - } - "XBADC" { - x$uhoh "$name $pattern (test for Bad C code, line $line)" - } - "BADASM" { - $uhoh "$name $pattern (test for bad assembler, line $line)" - } - "XBADASM" { - x$uhoh "$name $pattern (test for bad assembler, line $line)" - } - "XEXEC" { - set execbug_flag 1 - } - "XEXCESS" { - set excessbug_flag 1 - } - } - #send_user "\nold_dejagnu.exp: comp_output2= :$comp_output:\n\n" - } - #send_user "\nold_dejagnu.exp: comp_output3 = :$comp_output:\n\n" - - #look to see if this is all thats left, if so, all messages have been handled - #send_user "comp_output: $comp_output\n" - regsub -all "(^|\n)\[^\n\]*: In (\[^\n\]*function|method|\[^\n\]*structor) \[^\n\]*" $comp_output "" comp_output - regsub -all "(^|\n)\[^\n\]*: In instantiation of \[^\n\]*" $comp_output "" comp_output - regsub -all "(^|\n)\[^\n\]*: instantiated from \[^\n\]*" $comp_output "" comp_output - regsub -all "(^|\n)\[^\n\]*: At (top level|global scope):\[^\n\]*" $comp_output "" comp_output - regsub -all "(^|\n)\[^\n\]*file path prefix \[^\n\]* never used" $comp_output "" comp_output - regsub -all "(^|\n)\[^\n\]*linker input file unused since linking not done" $comp_output "" comp_output - regsub -all "(^|\n)collect: re(compiling|linking)\[^\n\]*" $comp_output "" comp_output - - set unsupported_message [${tool}_check_unsupported_p $comp_output] - if { $unsupported_message != "" } { - unsupported "$name: $unsupported_message" - return - } - - # someone forgot to delete the extra lines - regsub -all "\n+" $comp_output "\n" comp_output - regsub "^\n+" $comp_output "" comp_output - #send_user "comp_output: $comp_output\n" - - # excess errors - if $excessbug_flag then { - setup_xfail "*-*-*" - } - if ![string match "" $comp_output] then { - fail "$name (test for excess errors)" - send_log "$comp_output\n" - } else { - pass "$name (test for excess errors)" - } - - # run the executable image - if $runflag then { - set executable $output - if ![file exists $executable] then { - # Since we couldn't run it, we consider it an expected failure, - # so that test cases don't appear to disappear, and reappear. - setup_xfail "*-*-*" - fail "$name $pattern Execution test" - } else { - set status -1 - set result [eval [format "%s_load %s" $tool $executable]] - set status [lindex $result 0]; - set output [lindex $result 1]; - if { $status == "pass" } { - remote_file build delete $executable; - } - if { $execbug_flag || $excessbug_flag } then { - setup_xfail "*-*-*" - } - $status "$name $pattern Execution test" - } - } else { - verbose "deleting $output" - remote_file build delete $output - } - - return 0 -} |