]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
2013-08-12 Paolo Carlini <paolo.carlini@oracle.com>
authorpaolo <paolo@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 12 Aug 2013 22:37:20 +0000 (22:37 +0000)
committerpaolo <paolo@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 12 Aug 2013 22:37:20 +0000 (22:37 +0000)
* config/i386/i386.c (ix86_function_versions): Use error + inform.

/cp
2013-08-12  Paolo Carlini  <paolo.carlini@oracle.com>

* decl.c (warn_extern_redeclared_static, duplicate_decls,
check_elaborated_type_specifier): Use error + inform.
* friend.c (make_friend_class): Likewise.
* semantics.c (finish_id_expression): Likewise.

/testsuite
2013-08-12  Paolo Carlini  <paolo.carlini@oracle.com>

* g++.dg/cpp0x/constexpr-function2.C: Adjust for error -> inform
changes.
* g++.dg/cpp0x/constexpr-neg1.C: Likewise.
* g++.dg/cpp0x/defaulted2.C: Likewise.
* g++.dg/cpp0x/defaulted31.C: Likewise.
* g++.dg/cpp0x/error6.C: Likewise.
* g++.dg/cpp0x/gen-attrs-32.C: Likewise.
* g++.dg/cpp0x/override2.C: Likewise.
* g++.dg/cpp0x/parse1.C: Likewise.
* g++.dg/cpp0x/scoped_enum.C: Likewise.
* g++.dg/cpp0x/temp_default4.C: Likewise.
* g++.dg/ext/attrib32.C: Likewise.
* g++.dg/ext/gnu-inline-global-reject.C: Likewise.
* g++.dg/ext/mv13.C: Likewise.
* g++.dg/ext/mv7.C: Likewise.
* g++.dg/ext/mv9.C: Likewise.
* g++.dg/ext/pr57362.C: Likewise.
* g++.dg/ext/typeof10.C: Likewise.
* g++.dg/lookup/anon6.C: Likewise.
* g++.dg/lookup/crash6.C: Likewise.
* g++.dg/lookup/name-clash5.C: Likewise.
* g++.dg/lookup/name-clash6.C: Likewise.
* g++.dg/other/anon4.C: Likewise.
* g++.dg/other/error15.C: Likewise.
* g++.dg/other/error8.C: Likewise.
* g++.dg/other/redecl2.C: Likewise.
* g++.dg/parse/crash16.C: Likewise.
* g++.dg/parse/crash21.C: Likewise.
* g++.dg/parse/crash38.C: Likewise.
* g++.dg/parse/redef2.C: Likewise.
* g++.dg/parse/struct-as-enum1.C: Likewise.
* g++.dg/template/crash39.C: Likewise.
* g++.dg/template/redecl3.C: Likewise.
* g++.dg/tls/diag-3.C: Likewise.
* g++.dg/warn/Wredundant-decls-spec.C: Likewise.
* g++.old-deja/g++.benjamin/typedef01.C: Likewise.
* g++.old-deja/g++.benjamin/warn02.C: Likewise.
* g++.old-deja/g++.brendan/crash16.C: Likewise.
* g++.old-deja/g++.brendan/crash18.C: Likewise.
* g++.old-deja/g++.brendan/err-msg4.C: Likewise.
* g++.old-deja/g++.brendan/redecl1.C: Likewise.
* g++.old-deja/g++.brendan/static3.C: Likewise.
* g++.old-deja/g++.bugs/900127_02.C: Likewise.
* g++.old-deja/g++.jason/binding.C: Likewise.
* g++.old-deja/g++.jason/crash4.C: Likewise.
* g++.old-deja/g++.jason/crash7.C: Likewise.
* g++.old-deja/g++.jason/lineno.C: Likewise.
* g++.old-deja/g++.jason/scoping7.C: Likewise.
* g++.old-deja/g++.mike/misc3.C: Likewise.
* g++.old-deja/g++.mike/net44.C: Likewise.
* g++.old-deja/g++.mike/ns3.C: Likewise.
* g++.old-deja/g++.ns/alias4.C: Likewise.
* g++.old-deja/g++.ns/ns11.C: Likewise.
* g++.old-deja/g++.other/crash23.C: Likewise.
* g++.old-deja/g++.other/decl8.C: Likewise.
* g++.old-deja/g++.other/linkage3.C: Likewise.
* g++.old-deja/g++.other/typeck1.C: Likewise.
* g++.old-deja/g++.other/typedef5.C: Likewise.
* g++.old-deja/g++.pt/explicit34.C: Likewise.
* g++.old-deja/g++.pt/friend36.C: Likewise.
* obj-c++.dg/method-8.mm: Likewise.
* obj-c++.dg/tls/diag-3.mm: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201671 138bc75d-0d04-0410-961f-82ee72b054a4

68 files changed:
gcc/ChangeLog
gcc/config/i386/i386.c
gcc/cp/ChangeLog
gcc/cp/decl.c
gcc/cp/friend.c
gcc/cp/semantics.c
gcc/testsuite/ChangeLog
gcc/testsuite/g++.dg/cpp0x/constexpr-function2.C
gcc/testsuite/g++.dg/cpp0x/constexpr-neg1.C
gcc/testsuite/g++.dg/cpp0x/defaulted2.C
gcc/testsuite/g++.dg/cpp0x/defaulted31.C
gcc/testsuite/g++.dg/cpp0x/error6.C
gcc/testsuite/g++.dg/cpp0x/gen-attrs-32.C
gcc/testsuite/g++.dg/cpp0x/override2.C
gcc/testsuite/g++.dg/cpp0x/parse1.C
gcc/testsuite/g++.dg/cpp0x/scoped_enum.C
gcc/testsuite/g++.dg/cpp0x/temp_default4.C
gcc/testsuite/g++.dg/ext/attrib32.C
gcc/testsuite/g++.dg/ext/gnu-inline-global-reject.C
gcc/testsuite/g++.dg/ext/mv13.C
gcc/testsuite/g++.dg/ext/mv7.C
gcc/testsuite/g++.dg/ext/mv9.C
gcc/testsuite/g++.dg/ext/pr57362.C
gcc/testsuite/g++.dg/ext/typeof10.C
gcc/testsuite/g++.dg/lookup/anon6.C
gcc/testsuite/g++.dg/lookup/crash6.C
gcc/testsuite/g++.dg/lookup/name-clash5.C
gcc/testsuite/g++.dg/lookup/name-clash6.C
gcc/testsuite/g++.dg/other/anon4.C
gcc/testsuite/g++.dg/other/error15.C
gcc/testsuite/g++.dg/other/error8.C
gcc/testsuite/g++.dg/other/redecl2.C
gcc/testsuite/g++.dg/parse/crash16.C
gcc/testsuite/g++.dg/parse/crash21.C
gcc/testsuite/g++.dg/parse/crash38.C
gcc/testsuite/g++.dg/parse/redef2.C
gcc/testsuite/g++.dg/parse/struct-as-enum1.C
gcc/testsuite/g++.dg/template/crash39.C
gcc/testsuite/g++.dg/template/redecl3.C
gcc/testsuite/g++.dg/tls/diag-3.C
gcc/testsuite/g++.dg/warn/Wredundant-decls-spec.C
gcc/testsuite/g++.old-deja/g++.benjamin/typedef01.C
gcc/testsuite/g++.old-deja/g++.benjamin/warn02.C
gcc/testsuite/g++.old-deja/g++.brendan/crash16.C
gcc/testsuite/g++.old-deja/g++.brendan/crash18.C
gcc/testsuite/g++.old-deja/g++.brendan/err-msg4.C
gcc/testsuite/g++.old-deja/g++.brendan/redecl1.C
gcc/testsuite/g++.old-deja/g++.brendan/static3.C
gcc/testsuite/g++.old-deja/g++.bugs/900127_02.C
gcc/testsuite/g++.old-deja/g++.jason/binding.C
gcc/testsuite/g++.old-deja/g++.jason/crash4.C
gcc/testsuite/g++.old-deja/g++.jason/crash7.C
gcc/testsuite/g++.old-deja/g++.jason/lineno.C
gcc/testsuite/g++.old-deja/g++.jason/scoping7.C
gcc/testsuite/g++.old-deja/g++.mike/misc3.C
gcc/testsuite/g++.old-deja/g++.mike/net44.C
gcc/testsuite/g++.old-deja/g++.mike/ns3.C
gcc/testsuite/g++.old-deja/g++.ns/alias4.C
gcc/testsuite/g++.old-deja/g++.ns/ns11.C
gcc/testsuite/g++.old-deja/g++.other/crash23.C
gcc/testsuite/g++.old-deja/g++.other/decl8.C
gcc/testsuite/g++.old-deja/g++.other/linkage3.C
gcc/testsuite/g++.old-deja/g++.other/typeck1.C
gcc/testsuite/g++.old-deja/g++.other/typedef5.C
gcc/testsuite/g++.old-deja/g++.pt/explicit34.C
gcc/testsuite/g++.old-deja/g++.pt/friend36.C
gcc/testsuite/obj-c++.dg/method-8.mm
gcc/testsuite/obj-c++.dg/tls/diag-3.mm

index 85d0527fef9a6f4db7335df37b9c41404cd0eb0c..e0a1dba3b7f4f669c557633d986b0751f9b047d1 100644 (file)
@@ -1,3 +1,7 @@
+2013-08-12  Paolo Carlini  <paolo.carlini@oracle.com>
+
+       * config/i386/i386.c (ix86_function_versions): Use error + inform.
+
 2013-08-12  Uros Bizjak  <ubizjak@gmail.com>
 
        * config/i386/i386.md (floatunssi<mode>2 expand): Use MODEF mode
index 509cb6e8f832d1fc42300f85ce97375c3a7b5310..842f99363b46d2bb23bc72b248224f8a66c5ea5b 100644 (file)
@@ -29870,8 +29870,8 @@ ix86_function_versions (tree fn1, tree fn2)
          error_at (DECL_SOURCE_LOCATION (fn2),
                    "missing %<target%> attribute for multi-versioned %D",
                    fn2);
-         error_at (DECL_SOURCE_LOCATION (fn1),
-                   "previous declaration of %D", fn1);
+         inform (DECL_SOURCE_LOCATION (fn1),
+                 "previous declaration of %D", fn1);
          /* Prevent diagnosing of the same error multiple times.  */
          DECL_ATTRIBUTES (fn2)
            = tree_cons (get_identifier ("target"),
index fc10e95607871dd2bd9b01fb497a7a7fab31faf2..a7462af90836e76a41cd4411a837dcb0985cedfd 100644 (file)
@@ -1,3 +1,10 @@
+2013-08-12  Paolo Carlini  <paolo.carlini@oracle.com>
+
+       * decl.c (warn_extern_redeclared_static, duplicate_decls,
+       check_elaborated_type_specifier): Use error + inform.
+       * friend.c (make_friend_class): Likewise.
+       * semantics.c (finish_id_expression): Likewise.
+
 2013-08-09  Paolo Carlini  <paolo.carlini@oracle.com>
 
        Revert:
index d49ed2903bf6fe989f7b37b8926e63c12402c58a..16f751c8ff12905c563a0b86fb64b7ba2e0a3ce4 100644 (file)
@@ -1146,8 +1146,9 @@ warn_extern_redeclared_static (tree newdecl, tree olddecl)
       && DECL_ARTIFICIAL (olddecl))
     return;
 
-  permerror (input_location, "%qD was declared %<extern%> and later %<static%>", newdecl);
-  permerror (input_location, "previous declaration of %q+D", olddecl);
+  if (permerror (input_location,
+                "%qD was declared %<extern%> and later %<static%>", newdecl))
+    inform (input_location, "previous declaration of %q+D", olddecl);
 }
 
 /* NEW_DECL is a redeclaration of OLD_DECL; both are functions or
@@ -1287,19 +1288,19 @@ duplicate_decls (tree newdecl, tree olddecl, bool newdecl_is_friend)
               && DECL_UNINLINABLE (olddecl)
               && lookup_attribute ("noinline", DECL_ATTRIBUTES (olddecl)))
        {
-         warning (OPT_Wattributes, "function %q+D redeclared as inline",
-                  newdecl);
-         warning (OPT_Wattributes, "previous declaration of %q+D "
-                  "with attribute noinline", olddecl);
+         if (warning (OPT_Wattributes, "function %q+D redeclared as inline",
+                      newdecl))
+           inform (input_location, "previous declaration of %q+D "
+                   "with attribute noinline", olddecl);
        }
       else if (DECL_DECLARED_INLINE_P (olddecl)
               && DECL_UNINLINABLE (newdecl)
               && lookup_attribute ("noinline", DECL_ATTRIBUTES (newdecl)))
        {
-         warning (OPT_Wattributes, "function %q+D redeclared with "
-                  "attribute noinline", newdecl);
-         warning (OPT_Wattributes, "previous declaration of %q+D was inline",
-                  olddecl);
+         if (warning (OPT_Wattributes, "function %q+D redeclared with "
+                      "attribute noinline", newdecl))
+           inform (input_location, "previous declaration of %q+D was inline",
+                   olddecl);
        }
     }
 
@@ -1485,7 +1486,7 @@ duplicate_decls (tree newdecl, tree olddecl, bool newdecl_is_friend)
       error ("%q#D redeclared as different kind of symbol", newdecl);
       if (TREE_CODE (olddecl) == TREE_LIST)
        olddecl = TREE_VALUE (olddecl);
-      error ("previous declaration of %q+#D", olddecl);
+      inform (input_location, "previous declaration of %q+#D", olddecl);
 
       return error_mark_node;
     }
@@ -1550,7 +1551,8 @@ duplicate_decls (tree newdecl, tree olddecl, bool newdecl_is_friend)
       else
        {
          error ("conflicting declaration %q#D", newdecl);
-         error ("%q+D has a previous declaration as %q#D", olddecl, olddecl);
+         inform (input_location,
+                 "%q+D has a previous declaration as %q#D", olddecl, olddecl);
          return error_mark_node;
        }
     }
@@ -1613,9 +1615,10 @@ duplicate_decls (tree newdecl, tree olddecl, bool newdecl_is_friend)
        {
          error_at (DECL_SOURCE_LOCATION (newdecl), errmsg, newdecl);
          if (DECL_NAME (olddecl) != NULL_TREE)
-           error ((DECL_INITIAL (olddecl) && namespace_bindings_p ())
-                  ? G_("%q+#D previously defined here")
-                  : G_("%q+#D previously declared here"), olddecl);
+           inform (input_location,
+                   (DECL_INITIAL (olddecl) && namespace_bindings_p ())
+                   ? G_("%q+#D previously defined here")
+                   : G_("%q+#D previously declared here"), olddecl);
          return error_mark_node;
        }
       else if (TREE_CODE (olddecl) == FUNCTION_DECL
@@ -1759,8 +1762,10 @@ duplicate_decls (tree newdecl, tree olddecl, bool newdecl_is_friend)
          && (! DECL_TEMPLATE_SPECIALIZATION (newdecl)
              || DECL_TEMPLATE_SPECIALIZATION (olddecl)))
        {
-         warning (OPT_Wredundant_decls, "redundant redeclaration of %qD in same scope", newdecl);
-         warning (OPT_Wredundant_decls, "previous declaration of %q+D", olddecl);
+         if (warning (OPT_Wredundant_decls,
+                      "redundant redeclaration of %qD in same scope",
+                      newdecl))
+           inform (input_location, "previous declaration of %q+D", olddecl);
        }
 
       if (!(DECL_TEMPLATE_INSTANTIATION (olddecl)
@@ -11836,14 +11841,14 @@ check_elaborated_type_specifier (enum tag_types tag_code,
           && tag_code != typename_type)
     {
       error ("%qT referred to as %qs", type, tag_name (tag_code));
-      error ("%q+T has a previous declaration here", type);
+      inform (input_location, "%q+T has a previous declaration here", type);
       return error_mark_node;
     }
   else if (TREE_CODE (type) != ENUMERAL_TYPE
           && tag_code == enum_type)
     {
       error ("%qT referred to as enum", type);
-      error ("%q+T has a previous declaration here", type);
+      inform (input_location, "%q+T has a previous declaration here", type);
       return error_mark_node;
     }
   else if (!allow_template_p
index 3e018e8e84c138a044ffd9831efc6ec6eec292d4..779dac905d627670f4a81cacbebdf3c305724e68 100644 (file)
@@ -327,7 +327,7 @@ make_friend_class (tree type, tree friend_type, bool complain)
                {
                  error ("%qT is not a member class template of %qT",
                         name, ctype);
-                 error ("%q+D declared here", decl);
+                 inform (input_location, "%q+D declared here", decl);
                  return;
                }
              if (!template_member_p && (TREE_CODE (decl) != TYPE_DECL
@@ -335,7 +335,7 @@ make_friend_class (tree type, tree friend_type, bool complain)
                {
                  error ("%qT is not a nested class of %qT",
                         name, ctype);
-                 error ("%q+D declared here", decl);
+                 inform (input_location, "%q+D declared here", decl);
                  return;
                }
 
index 3bc09b9ef3f44eebd5667ce607b4855854cae86a..fa47db7cac7bfa66a01bd123a3114e28f4e5c4cf 100644 (file)
@@ -3131,7 +3131,7 @@ finish_id_expression (tree id_expression,
              error (VAR_P (decl)
                     ? G_("use of local variable with automatic storage from containing function")
                     : G_("use of parameter from containing function"));
-             error ("  %q+#D declared here", decl);
+             inform (input_location, "%q+#D declared here", decl);
              return error_mark_node;
            }
        }
index da7f54f1cd9e2650534ec050f43f3ab7338d94d6..80ed59d8c55bdc0a336e1d8ec3d212ef24b55df3 100644 (file)
@@ -1,3 +1,68 @@
+2013-08-12  Paolo Carlini  <paolo.carlini@oracle.com>
+
+       * g++.dg/cpp0x/constexpr-function2.C: Adjust for error -> inform
+       changes.
+       * g++.dg/cpp0x/constexpr-neg1.C: Likewise.
+       * g++.dg/cpp0x/defaulted2.C: Likewise.
+       * g++.dg/cpp0x/defaulted31.C: Likewise.
+       * g++.dg/cpp0x/error6.C: Likewise.
+       * g++.dg/cpp0x/gen-attrs-32.C: Likewise.
+       * g++.dg/cpp0x/override2.C: Likewise.
+       * g++.dg/cpp0x/parse1.C: Likewise.
+       * g++.dg/cpp0x/scoped_enum.C: Likewise.
+       * g++.dg/cpp0x/temp_default4.C: Likewise.
+       * g++.dg/ext/attrib32.C: Likewise.
+       * g++.dg/ext/gnu-inline-global-reject.C: Likewise.
+       * g++.dg/ext/mv13.C: Likewise.
+       * g++.dg/ext/mv7.C: Likewise.
+       * g++.dg/ext/mv9.C: Likewise.
+       * g++.dg/ext/pr57362.C: Likewise.
+       * g++.dg/ext/typeof10.C: Likewise.
+       * g++.dg/lookup/anon6.C: Likewise.
+       * g++.dg/lookup/crash6.C: Likewise.
+       * g++.dg/lookup/name-clash5.C: Likewise.
+       * g++.dg/lookup/name-clash6.C: Likewise.
+       * g++.dg/other/anon4.C: Likewise.
+       * g++.dg/other/error15.C: Likewise.
+       * g++.dg/other/error8.C: Likewise.
+       * g++.dg/other/redecl2.C: Likewise.
+       * g++.dg/parse/crash16.C: Likewise.
+       * g++.dg/parse/crash21.C: Likewise.
+       * g++.dg/parse/crash38.C: Likewise.
+       * g++.dg/parse/redef2.C: Likewise.
+       * g++.dg/parse/struct-as-enum1.C: Likewise.
+       * g++.dg/template/crash39.C: Likewise.
+       * g++.dg/template/redecl3.C: Likewise.
+       * g++.dg/tls/diag-3.C: Likewise.
+       * g++.dg/warn/Wredundant-decls-spec.C: Likewise.
+       * g++.old-deja/g++.benjamin/typedef01.C: Likewise.
+       * g++.old-deja/g++.benjamin/warn02.C: Likewise.
+       * g++.old-deja/g++.brendan/crash16.C: Likewise.
+       * g++.old-deja/g++.brendan/crash18.C: Likewise.
+       * g++.old-deja/g++.brendan/err-msg4.C: Likewise.
+       * g++.old-deja/g++.brendan/redecl1.C: Likewise.
+       * g++.old-deja/g++.brendan/static3.C: Likewise.
+       * g++.old-deja/g++.bugs/900127_02.C: Likewise.
+       * g++.old-deja/g++.jason/binding.C: Likewise.
+       * g++.old-deja/g++.jason/crash4.C: Likewise.
+       * g++.old-deja/g++.jason/crash7.C: Likewise.
+       * g++.old-deja/g++.jason/lineno.C: Likewise.
+       * g++.old-deja/g++.jason/scoping7.C: Likewise.
+       * g++.old-deja/g++.mike/misc3.C: Likewise.
+       * g++.old-deja/g++.mike/net44.C: Likewise.
+       * g++.old-deja/g++.mike/ns3.C: Likewise.
+       * g++.old-deja/g++.ns/alias4.C: Likewise.
+       * g++.old-deja/g++.ns/ns11.C: Likewise.
+       * g++.old-deja/g++.other/crash23.C: Likewise.
+       * g++.old-deja/g++.other/decl8.C: Likewise.
+       * g++.old-deja/g++.other/linkage3.C: Likewise.
+       * g++.old-deja/g++.other/typeck1.C: Likewise.
+       * g++.old-deja/g++.other/typedef5.C: Likewise.
+       * g++.old-deja/g++.pt/explicit34.C: Likewise.
+       * g++.old-deja/g++.pt/friend36.C: Likewise.
+       * obj-c++.dg/method-8.mm: Likewise.
+       * obj-c++.dg/tls/diag-3.mm: Likewise.
+
 2013-08-12  Perez Read  <netfirewall@gmail.com>
 
          PR target/58132
index 5a2ec76e3a7967b1624250bb221a9ecd2128aaae..6403ea16e87eb45b7d3eba19936a171d612783a4 100644 (file)
@@ -38,7 +38,7 @@ constexpr int g(int x, int n) // error: body not just â€˜â€˜return expr’’
 } // { dg-error "not a return-statement" }
 
 constexpr int
-bar(int x, int y) { return x + y + x * y; } // { dg-error "previously" }
+bar(int x, int y) { return x + y + x * y; } // { dg-message "previously" }
 
 int bar(int x, int y)       // { dg-error "redefinition" }
 { return x * 2 + 3 * y; }
index 8294afa98373f1142600a9f4f9d0ee7e1c7c7484..c27615f05ad6cce8b6ba408e12bd1b2c13d7ca8f 100644 (file)
@@ -50,7 +50,7 @@ private:
   bool flag;
 };
 // OK
-constexpr int bar(int x, int y) // { dg-error "previously defined here" }
+constexpr int bar(int x, int y) // { dg-message "previously defined here" }
 { return x + y + x*y; }
 // ...
 // error: redefinition of bar
index ce551a3fee2efe57354e957ae06e4d3b9918fe72..57f74e8e7147314b8cadf1d2b351ba81e1f207da 100644 (file)
@@ -6,13 +6,13 @@ void f() = delete;            // { dg-error "deleted" }
 
 struct A
 {
-  A() { }                      // { dg-error "previous" }
+  A() { }                      // { dg-message "previous" }
   void f() = default;          // { dg-error "default" }
 };
 
 A::A() = default;              // { dg-error "redefinition" }
 
-void g() {}                    // { dg-error "previous" }
+void g() {}                    // { dg-message "previous" }
 void g() = delete;             // { dg-error "redefinition" }
 
 struct B // { dg-message "user-provided default constructor" }
index de6a29854a56ffa8638e8bb1cd7eedfddbcf06b1..c76a0f2bd69ac20b8e24a67382061442da8ad839 100644 (file)
@@ -3,7 +3,7 @@
 
 struct A
 {
-  A() { }                      // { dg-error "defined" }
+  A() { }                      // { dg-message "defined" }
   ~A() = default;              // { dg-error "defaulted" }
 };
 
index 35156520b8e352ef3ad4da92af51570fb18650a4..3b457952d38a7a052abf82c4b07d2ed626b87d03 100644 (file)
@@ -2,7 +2,7 @@
 // { dg-options -std=c++0x }
 
 template<typename C>
-auto g(C& c) -> decltype (c.f()) { return c.f(); } // { dg-error "decltype .c\\.f" }
+auto g(C& c) -> decltype (c.f()) { return c.f(); } // { dg-message "decltype .c\\.f" }
 
 template<typename C>
 auto g(C& c) -> decltype (c.f()) { return c.f(); } // { dg-error "decltype .c\\.f" }
index f34466117483eeb1ef83111ddc8b152a52d4ceab..6a1b235d7f3342944adf26b2f1fb01d44cc4e3b8 100644 (file)
@@ -13,7 +13,7 @@ void bar()
 
 typedef union U1 { int i; } U2 [[gnu::transparent_union]]; // { dg-warning "ignored" }
 
-static void foo2(U1) {}                // { dg-error "previously defined" }
+static void foo2(U1) {}                // { dg-message "previously defined" }
 static void foo2(U2) {}                // { dg-error "redefinition" }
 
 void bar2(U1 u1, U2 u2)
index 4d5a412baf5e1375f1fa5905e1e0872196075f30..1a7a36e1ae0cf6c23b2ac2a73d3e0571eca82f38 100644 (file)
@@ -44,7 +44,7 @@ int main()
   B2 final2 = final;
   struct B2 {}; // { dg-error "redefinition" }
   struct B2 final; // { dg-error "redeclaration" }
-  struct B2 override; // { dg-error "previously declared here" }
+  struct B2 override; // { dg-message "previously declared here" }
   struct B2 final {}; // { dg-error "redefinition" }
   struct B2 override {}; // { dg-error "cannot specify 'override' for a class" }
   B2 override{}; // { dg-error "redeclaration" }
index 41811853cd7137a5fccb96a2cbf55113b3e3e491..4fa7461cb22a339e01c7d86f48f12fa117affcc1 100644 (file)
@@ -1,5 +1,5 @@
 // PR c++/43509
 // { dg-options "-std=c++0x" }
 
-typedef int B;                 // { dg-error "" }
+typedef int B;                 // { dg-message "" }
 B::B() {}                      // { dg-error "" }
index 4b0317cfbe023cd50acbe6b8d2f493b503800927..20391eb407b7f6809052bc0ded5c6029a6a2f4bd 100644 (file)
@@ -6,7 +6,7 @@ enum class Color1 {
 };
 
 enum struct Color2 {
-  Red, // { dg-error "previously declared here" }
+  Red, // { dg-message "previously declared here" }
   Orange,
   Yellow,
   Green,
index f1e254c40a14c1387a4e38e3394f4e1224e3c7c0..aa2ad58e01ebba93694875f521348d4e4f4aa8b2 100644 (file)
@@ -2,7 +2,7 @@
 
 class X {
   template<typename T = int> friend void f(X) { }
-  template<typename T> friend void g(X); // { dg-error "previously declared here" }
+  template<typename T> friend void g(X); // { dg-message "previously declared here" }
   template<typename T = int> friend void h(X); // { dg-error "function template friend" }
 };
 
index e4dfe4e9f672d35185777d9dc5257c348168d383..31a92b8f45c57594466acf67767bcec780e2c304 100644 (file)
@@ -12,7 +12,7 @@ void bar()
 
 typedef union U1 { int i; } U2 __attribute__((transparent_union)); // { dg-warning "ignored" }
 
-static void foo2(U1) {}                // { dg-error "previously defined" }
+static void foo2(U1) {}                // { dg-message "previously defined" }
 static void foo2(U2) {}                // { dg-error "redefinition" }
 
 void bar2(U1 u1, U2 u2)
index fc7385d809a745d63a9a5f5b98e950aef8684556..7e84fa773ebc9bfb9842c45d159c9628ebc8e00e 100644 (file)
 
 #undef fn
 #define fn pfx(func_decl_inline_before)
-decl(inline, fn) // { dg-error "previous" "" }
+decl(inline, fn) // { dg-message "previous" "" }
 gnuindef(fn, 0) // { dg-error "redeclared" "" }
 
 #undef fn
 #define fn pfx(func_decl_inline_after)
-gnuindef(fn, 0) // { dg-error "previous" "" }
+gnuindef(fn, 0) // { dg-message "previous" "" }
 decl(inline, fn) // { dg-error "redeclared" "" }
 
 #undef fn
 #define fn pfx(func_def_gnuin_redef)
-gnuindef(fn, 0) // { dg-error "previous" "" }
+gnuindef(fn, 0) // { dg-message "previous" "" }
 gnuindef(fn, 1) // { dg-error "redefinition" "" }
 
 #undef fn
 #define fn pfx(func_def_inline_redef)
-def(inline, fn, 0) // { dg-error "previous" "" }
+def(inline, fn, 0) // { dg-message "previous" "" }
 def(inline, fn, 1) // { dg-error "redefinition" "" }
 
 #undef fn
 #define fn pfx(func_def_inline_after)
-gnuindef(fn, 0) // { dg-error "previous" "" }
+gnuindef(fn, 0) // { dg-message "previous" "" }
 def(inline, fn, 1) // { dg-error "redeclare" "" }
 
 #undef fn
 #define fn pfx(func_def_inline_before)
-def(inline, fn, 0) // { dg-error "previous" "" }
+def(inline, fn, 0) // { dg-message "previous" "" }
 gnuindef(fn, 1) // { dg-error "redefinition" "" }
 
 #undef fn
 #define fn pfx(func_def_before)
-def(, fn, 0) // { dg-error "previous" "" }
+def(, fn, 0) // { dg-message "previous" "" }
 gnuindef(fn, 1) // { dg-error "redefinition" "" }
 
 #undef fn
 #define fn pfx(func_decl_static_inline_before)
-decl(static inline, fn) // { dg-error "previous" "" }
+decl(static inline, fn) // { dg-message "previous" "" }
 gnuindef(fn, 0) // { dg-error "redeclared" "" }
 
 #undef fn
 #define fn pfx(func_def_static_inline_after)
 decl(static, fn)
-gnuindef(fn, 0) // { dg-error "previous" "" }
+gnuindef(fn, 0) // { dg-message "previous" "" }
 decl(static, fn)
 def(static inline, fn, 1) // { dg-error "redeclare" "" }
index 9554993130ccf8a72689f635db926aa83476936e..5674d19c9742802d9828e24b6e09075301cec9ed 100644 (file)
@@ -5,7 +5,7 @@
 
 extern "C"
 __attribute__ ((target ("default")))
-int foo ()  // { dg-error "previously defined here" }
+int foo ()  // { dg-message "previously defined here" }
 {
   return 0;
 }
index d378402e779481fcd7fd36746d66c8ae4aca33de..64c04fac60f41f2f33d0be28bb72238d91d2de71 100644 (file)
@@ -2,7 +2,7 @@
 // { dg-options "" }
 
 __attribute__((target ("default")))
-void foo (void)        // { dg-error "previously defined here" }
+void foo (void)        // { dg-message "previously defined here" }
 {
 }
 
index 53ee995027a76002ec53eca289a9b7727da55e26..c59651e102a0b42392efa92b314ab991ca6329c4 100644 (file)
@@ -3,7 +3,7 @@
 
 void foo ();
 void foo () __attribute__((target ("sse4")));
-void foo () __attribute__((target ("default"))); // { dg-error "previous declaration" }
+void foo () __attribute__((target ("default"))); // { dg-message "previous declaration" }
 void foo ()    // { dg-error "attribute for multi-versioned" }
 {
 }
index 67f96857e8dae03fb1d362f811a9176721a1e200..71c53d3761817e7be1b09a98a9ba8827226ca162 100644 (file)
@@ -193,7 +193,6 @@ int foo(void) { return 1; }
     }
 
 /* { dg-prune-output "attribute.* is unknown" } */
-/* { dg-prune-output "redefinition of int foo" } */
-/* { dg-prune-output "previous declaration of int foo" } */
-/* { dg-prune-output "int foo.* previously defined here" } */
+/* { dg-prune-output "missing 'target' attribute*" } */
+/* { dg-prune-output "redefinition of 'int foo" } */
 /* { dg-prune-output "No dispatcher found for" } */
index 1b357ad9d7b1e1dfbabd4fa3786a60386f97fb28..614538527a73068d07083c2a28288a683c374f66 100644 (file)
@@ -5,7 +5,7 @@ template<int> struct A
 {
   void foo()
   {
-    typedef int T;                // { dg-error "previous" }
+    typedef int T;                // { dg-message "previous" }
     typedef __typeof__(*this) T;  // { dg-error "conflicting" }
   }
 };
index 09fa7f8f3b6aff2a7f1442e9021fabf34ef36b2d..7c5a96848cc8107506827f0a8b71d1a3e95ec2fc 100644 (file)
@@ -1,11 +1,11 @@
-extern int v1; // { dg-error "declared" }
+extern int v1; // { dg-message "declared" }
 static union { int v1; }; // { dg-error "redeclaration" } 
 
-static union { int v2; }; // { dg-error "declared" }
+static union { int v2; }; // { dg-message "declared" }
 extern int v2; // { dg-error "redeclaration" } 
 
-int v3; // { dg-error "declared" }
+int v3; // { dg-message "declared" }
 static union { int v3; }; // { dg-error "redeclaration" } 
 
-static union { int v4; }; // { dg-error "declared" }
+static union { int v4; }; // { dg-message "declared" }
 static union { int v4; }; // { dg-error "redeclaration" } 
index 0e49324bf273cbfa31cb26ec736cbf957afff494..b8481be4d34e32a6fdfabe4c3ed7884fc0fe66e2 100644 (file)
@@ -4,5 +4,5 @@
 
 // PR c++/18652: ICE redeclaring variable as template.
 
-int A;                 // { dg-error "previous declaration" }
+int A;                 // { dg-message "previous declaration" }
 template<int> struct A; // { dg-error "different kind of symbol" }
index 7f220d8877f7c88925c6922a0acdba74ff292f07..74595c26871bc0e274b4021f32c8874deee20cf6 100644 (file)
@@ -7,7 +7,7 @@
 // declarative region (7.3.2, clause 14). ]"
 
 namespace N
-{ // { dg-error "previous declaration" }
+{ // { dg-message "previous declaration" }
 }
 
 class N; // { dg-error "redeclared" }
index 63a0b15bf5eea55d687dc370e0fa8afe7fe99fc3..6918142f22220a35c80419296f901ba2c6a74010 100644 (file)
@@ -6,7 +6,7 @@
 // "[Note: a namespace name or a class template name must be unique in its
 // declarative region (7.3.2, clause 14). ]"
 
-class N; // { dg-error "previous declaration" }
+class N; // { dg-message "previous declaration" }
 
 namespace N
 { // { dg-error "redeclared" }
index 571f4ae65fb6a176c53b49109659255d93cfc7fa..37df228da9ba460c13dbeb86e60de781edf79576 100644 (file)
@@ -3,6 +3,6 @@
 
 void foo()
 {
-    int i;             // { dg-error "previously" }
+    int i;             // { dg-message "previously" }
     union { int i; };  // { dg-error "redeclaration" }
 }
index 3601852322a41c143725950137da67edbac9d4b2..d218c13bbb2e554d15bb03ac90016fa23ac9056c 100644 (file)
@@ -3,39 +3,39 @@
 extern void g0 (int a, int b);
 extern void g1 (int a, float b);
 
-extern void f0 (int a,         // { dg-error "previous" }
+extern void f0 (int a,         // { dg-message "previous" }
                 int a);                // { dg-error "redefinition" }
-extern void f1 (int a,         // { dg-error "previous" }
+extern void f1 (int a,         // { dg-message "previous" }
                 float a);      // { dg-error "conflicting" }
-extern void f3 (int a, int b, int c, // { dg-error "previous" }
+extern void f3 (int a, int b, int c, // { dg-message "previous" }
                 int a);                // { dg-error "redefinition" }
-extern void f4 (int a, int b, int c, // { dg-error "previous" }
+extern void f4 (int a, int b, int c, // { dg-message "previous" }
                 int a,              // { dg-error "redefinition" }
                 int a);                     // { dg-error "redefinition" }
-extern void f5 (int a, int b, int c, int d, int e, int f, int g, int h, // { dg-error "previous" }
+extern void f5 (int a, int b, int c, int d, int e, int f, int g, int h, // { dg-message "previous" }
                 int a,                                                 // { dg-error "redefinition" }
                 int i, int j, int k, int l, int m, int n, int o, int p,
                 int q, int r, int s, int t, int u, int v, int w, int x, int y,
                 int z);
 
-extern void f6 (int a, int, int, int, int, int, int, int, int, int, int, // { dg-error "previous" }
+extern void f6 (int a, int, int, int, int, int, int, int, int, int, int, // { dg-message "previous" }
                 int a,         // { dg-error "redefinition" }
                 int, int, int, int, int, int, int, int, int, int, int,
                 float, float, float, float, float, float, float, float,
                 int);
 
-extern void f7 (void (*a)(int),          // { dg-error "previous" }
+extern void f7 (void (*a)(int),          // { dg-message "previous" }
                 void (*a)(int));  // { dg-error "redefinition" }
-extern void f8 (float (*a)(int),  // { dg-error "previous" }
+extern void f8 (float (*a)(int),  // { dg-message "previous" }
                 int (*a)(float));  // { dg-error "conflicting" }
 
-extern void f9 (int a,         // { dg-error "previous" }
+extern void f9 (int a,         // { dg-message "previous" }
                 int a,         // { dg-error "redefinition" }
                 int a);                // { dg-error "redefinition" }
 
-extern void f10 (int a,                // { dg-error "previous" }
-                 int b,                // { dg-error "previous" }
-                 int c,                // { dg-error "previous" }
+extern void f10 (int a,                // { dg-message "previous" }
+                 int b,                // { dg-message "previous" }
+                 int c,                // { dg-message "previous" }
                  int c,                // { dg-error "redefinition" }
                  int b,                // { dg-error "redefinition" }
                  int a);       // { dg-error "redefinition" }
@@ -43,7 +43,7 @@ extern void f10 (int a,               // { dg-error "previous" }
 class C1 {
  public:
   void C1_g0 (int a, int b);
-  void C1_f0 (int a,           // { dg-error "previous" }
+  void C1_f0 (int a,           // { dg-message "previous" }
               int a);          // { dg-error "redefinition" }
 };
 
@@ -51,6 +51,6 @@ template <class T>
 class C2 {
  public:
   void C2_g0 (T a, T b);
-  void C2_f0 (T a,             // { dg-error "previous" }
+  void C2_f0 (T a,             // { dg-message "previous" }
               T a);            // { dg-error "redefinition" }
 };
index 9246c2afa564339354ad548c69eeecaed6fd73da..116a6846c70a6e9d98f045d3656683ee2ffee810 100644 (file)
@@ -5,7 +5,7 @@
 
 void foo(void)
 {
-  union { int alpha; int beta; }; // { dg-error "previous declaration" }
+  union { int alpha; int beta; }; // { dg-message "previous declaration" }
   double alpha;  // { dg-error "conflicting declaration" }
 }
 
index 591c258b8911ed1cb386e7f12461125bebde9166..6c8913c1f09a8afa231173952fc11d6f4c49554a 100644 (file)
@@ -7,5 +7,5 @@ struct S {
   virtual int foo() = 0;
 };
  
-int S::foo() { return 0; } // { dg-error "defined here" }
+int S::foo() { return 0; } // { dg-message "defined here" }
 int S::foo() { return 0; } // { dg-error "redefinition" }
index dc8f7a608d221e33a2a261dac1f24f40c9f21024..c7da3eb702574ec4808a97458f839ac7c40cde40 100644 (file)
@@ -1,7 +1,7 @@
 // PR c++/16971
 
 namespace N {
-  int i; // { dg-error "" }
+  int i; // { dg-message "" }
   // By checking for an explicit keyword on the next line we avoid
   // matching an ICE message.
   int i; // { dg-error "redefinition" }
index 283f6b4d583f049563a5600b23cd61e51b33c1a5..623bbec81c93f6d3cf449b064b249765054dbe7d 100644 (file)
@@ -1,6 +1,6 @@
 namespace N
 {
-  struct A; // { dg-error "previous declaration" "" }
+  struct A; // { dg-message "previous declaration" "" }
 }
 
 template<int I>
index 724f9b80a1277099c5112d9ca77fe61d744300cc..7a0c2655681645d09a58f00af5abff5b4ceace0d 100644 (file)
@@ -1,11 +1,11 @@
 /* PR c++/33207  */
 
 /* This would not ICE.  */
-namespace M { } /* { dg-error "previous declaration" } */
+namespace M { } /* { dg-message "previous declaration" } */
 struct M; /* { dg-error "redeclared as different kind of symbol" } */
 M *p; /* { dg-error "does not name a type" } */
 
 /* This would ICE when processing 'p'.  */
-namespace N { } /* { dg-error "previous declaration" } */
+namespace N { } /* { dg-message "previous declaration" } */
 struct N; /* { dg-error "redeclared as different kind of symbol" } */
 struct N* p; /* { dg-error "redeclared as different kind of symbol|invalid type" } */
index 2435672d146f4d7e14dc62c5ca691d85c10fdcc9..3ab3667d82df9b4b6c8d107d87d35a412947c247 100644 (file)
@@ -1,6 +1,6 @@
 // { dg-do compile }
 
-char * d [10];  // { dg-error "8: 'd' has a previous declaration as" }
+char * d [10];  // { dg-message "8: 'd' has a previous declaration as" }
 char e [15][10];
 int (*f)();
 
index f58c738819593fc27e4abeefeca36f25e637d62c..a6cb6b592d6393a9d86d09df913077169fa04812 100644 (file)
@@ -4,7 +4,7 @@
 
 namespace N
 {
-    struct A {};       // { dg-error "previous declaration" }
+    struct A {};       // { dg-message "previous declaration" }
 }
 
 typedef enum N::A B;   // { dg-error "enum|invalid type" }
index ddecc173c45b96a2e2ac07cd443391a9e86c58ae..840255cbea99b3ece352906af9168ec52503f1ca 100644 (file)
@@ -1,6 +1,6 @@
 // PR c++/22405
 
-template <typename T> void foo(T &arg) { // { dg-error "declared" }
+template <typename T> void foo(T &arg) { // { dg-message "declared" }
   arg+=1;
 }
 
index 029f9e69a5fc1dc1e0cb7a933d17105b94496269..faa29bf453d37ebc8e0469952542ac12724f22e3 100644 (file)
@@ -3,5 +3,5 @@
 
 // { dg-do compile }
 
-int foo;                    // { dg-error "previous declaration" }
+int foo;                    // { dg-message "previous declaration" }
 template<int> void foo() {} // { dg-error "redeclared" }
index ea5158b898fff486c82664677636391e03e5bb72..06046170b0b77c403c09ec446b7b300409bfb4f6 100644 (file)
@@ -1,10 +1,10 @@
 // Report invalid extern and __thread combinations.
 // { dg-require-effective-target tls }
 
-extern int j;          // { dg-error "previously declared here" }
+extern int j;          // { dg-message "previously declared here" }
 __thread int j;                // { dg-error "follows non-thread-local" }
 
-extern __thread int i; // { dg-error "previously declared here" }
+extern __thread int i; // { dg-message "previously declared here" }
 int i;                 // { dg-error "follows thread-local" }
 
 extern __thread int k; // This is fine.
index b5c790f474bfcf3c202d5acd799586d9243bac7e..3a9b019b67569864fade9c73b3e88dcf17837d48 100644 (file)
@@ -8,5 +8,5 @@ template <typename T> struct S
 
 template<> void S<int>::foo();
 
-template<> void S<double>::foo();  // { dg-warning "previous declaration" }
+template<> void S<double>::foo();  // { dg-message "previous declaration" }
 template<> void S<double>::foo();  // { dg-warning "redundant redeclaration" }
index d5ed39af3644a919a07efd4020a4c78add6e95ae..af65162cf138bb7c26c9c1f50dd700dbb0bee44e 100644 (file)
@@ -16,7 +16,7 @@ typedef int I;
 typedef I I;
 
 //p3--cannot redefine to a different type in a given scope
-class complex2 { /* ... */ };// { dg-error "" } .*
+class complex2 { /* ... */ };// { dg-message "" } .*
 typedef int complex2;// { dg-error "" } .*
 typedef int complex3;// { dg-message "" } .*
 class complex3 { /* ... */ };// { dg-error "" } .*
index 248e1ed9ff19519bb27d09771921ac2a352ddad8..a3d23747b48771be95af23648bac8801e1ae3075 100644 (file)
@@ -44,11 +44,5 @@ public:
   int b;
 };
 
+extern int foo3(const char *);  // { dg-message "" } 
 extern int foo3(const char *);  // { dg-warning "" } 
-extern int foo3(const char *);  // { dg-warning "" } 
-
-
-
-
-
-
index 674fc4fa6791eca5071d2916b45a8039d82775c1..5e6acc8c61c719c5368ce2e0759544d6dff1bbf5 100644 (file)
@@ -5,7 +5,7 @@
 class Graph { // { dg-error "1:new types|1: note: \\(perhaps" }
 public:
       unsigned         char N;
-      Graph(void) {} // { dg-error "7:'Graph" }
+      Graph(void) {} // { dg-message "7:'Graph" }
 }
 
 Graph::Graph(void) // { dg-error "18:return type|1: error: redefinition" }
index 119ba46053859622782b796a49d980d0a12cb88b..3119f02ede2e6d819a658e16871467fde8ad81b5 100644 (file)
@@ -7,7 +7,7 @@ public:
     Pix(const Pix&);
 
     // Friend functions so that v == x works as does x == v works
-    friend int operator==(void *v, const Pix& x) // { dg-error "previously" }
+    friend int operator==(void *v, const Pix& x) // { dg-message "previously" }
     { return v == index; }  // { dg-error "from this location" }
     // ??? should be operator!=
     friend int operator==(void *v, const Pix& x) // { dg-error "redefinition" }
index 2f4bc4210a340e9c94191472108eca3f44c04029..d1d84448f3885c747fdbd5a92dc45cd2457776ef 100644 (file)
@@ -2,8 +2,8 @@
 // GROUPS passed error-messages
 class X {
 public:
-    static int x;// { dg-error "" }  previous.*
-    static int y;// { dg-error "" }  previous.*
+    static int x;// { dg-message "" }  previous.*
+    static int y;// { dg-message "" }  previous.*
 };
 
 unsigned X::x;// { dg-error "" }  conflict.*
index 0e01f2b478922b17d11db73308604e9a57371fa0..1edd548b668900c536f72f5418c05a8812160b48 100644 (file)
@@ -1,5 +1,5 @@
 // { dg-do assemble }
 // GROUPS passed redeclaration
-inline int min(int x, int y) {return x < y ? x : y;}   /* 235 */// { dg-error "" } .*
+inline int min(int x, int y) {return x < y ? x : y;}   /* 235 */// { dg-message "" } .*
 int min(int a, int b);
 inline int min(int a, int b) {return (a < b)?a:b;}// { dg-error "" } .*
index c0ee011787f0cc4ffa7d742a910460daf689e3c7..7c43231027969cddfdcaba84cbf62a105db55ddb 100644 (file)
@@ -3,7 +3,7 @@
 class foo{
 public:
   static void  bar( int i ){ value = i; }
-  static int  value;// { dg-error "" } .*
+  static int  value;// { dg-message "" } .*
 };
 
 const int  foo::value = 0; // should be an error.// { dg-error "" } .*
index 12ae64a36a0f6771d42a9f98ccb1a923c35756ba..c74baa9406af915c02691d2481bdbb90b56cd771 100644 (file)
 
 // keywords: name spaces, overloading
 
-int global0;                   // { dg-error "" } 
+int global0;                   // { dg-message "" } 
 int global0 ();                        // { dg-error "" } 
 
-int global1 ();                        // { dg-error "" } xref for below
+int global1 ();                        // { dg-message "" } xref for below
 int global1;                   // { dg-error "" } caught
 
 struct struct_0 {
@@ -34,13 +34,13 @@ struct struct_1 {
 
 void function_0 ()
 {
-       int function_0_local;   // { dg-error "" } 
+       int function_0_local;   // { dg-message "" } 
        extern int function_0_local (); // { dg-error "" } 
 }
 
 void function_1 ()
 {
-       int function_1_local ();        // { dg-error "" } 
+       int function_1_local ();        // { dg-message "" } 
        extern int function_1_local;    // { dg-error "" } 
 }
 
index 1f297b76d6c1872e57bca636233ec1200c569793..3321cece23a47e12743823eb3a4e8de76c065595 100644 (file)
@@ -6,7 +6,7 @@ struct T { ~T(); };
 int main()
 {
   foo:
-   T t;                                // { dg-error "" } redeclared
+   T t;                                // { dg-message "" } redeclared
   bar:
    T t;                                // { dg-error "" } redeclaration
 }
index 00ba0cc0644e4ad708f24fb1191fa532f85619a3..30c563b9d830f1793d09e7d377fe17c657a79e17 100644 (file)
@@ -16,7 +16,7 @@ public:
 };
 
 template <class T>
-const ccObjectInfo& cc_Array<T>::repInvariant(int) const  // { dg-error "previously declared" }
+const ccObjectInfo& cc_Array<T>::repInvariant(int) const  // { dg-message "previously declared" }
 {  return *this /* *this is required here */; }
 
 template <class T>
index 95c7c2fb5a02c3cc33979cec5dea8960f4c6938d..f17c402976f6d5aa9675cedc833b8ba1f9144594 100644 (file)
@@ -1,6 +1,6 @@
 // { dg-do assemble  }
 // Bug: g++ can't deal.
 
-typedef unsigned size_t;       // { dg-error "" } previous declaration
+typedef unsigned size_t;       // { dg-message "" } previous declaration
 typedef unsigned long size_t;  // { dg-error "" } redefining size_t
 void f (size_t);               // causes compiler segfault - 
index bd5a393e50e0d2c3cec211228fc8494c04eee1ce..4ef9208ea34773371e0e872aa4b40bd56d4d0ed5 100644 (file)
@@ -1,6 +1,6 @@
 // { dg-do assemble  }
 // Bug; g++ binds a function definition to the line number of a later decl.
 
-void foo () { }                        // { dg-error "" } redeclared
+void foo () { }                        // { dg-message "" } redeclared
 void foo ();                   // { dg-bogus "" } invalid binding
 void foo () { }                        // { dg-error "" } redeclared
index 41859aa3981118060c7932ebd61cc25569ea6aa5..245c8fa073eac3f8b917982e8ce0dc4e87bc0191 100644 (file)
@@ -2,5 +2,5 @@
 // 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.
 
-int bar;                       // { dg-error "" } 
+int bar;                       // { dg-message "" } 
 typedef int bar;               // { dg-error "" } 
index 560f0c13efcf07035ef4d04e970896032baad7e6..f633873f854c44344254aacde3662215e85c4457 100644 (file)
@@ -1,4 +1,4 @@
 // { dg-do assemble  }
 // GROUPS uncaught
-int a;// { dg-error "" } .*
+int a;// { dg-message "" } .*
 int a;// { dg-error "" } .*
index bc45b48788833ce141e283f8bd28679dc00fbe34..226df2d9e7afaea053d25f63af670344433fbb0d 100644 (file)
@@ -1,7 +1,7 @@
 // { dg-do assemble  }
 // Make sure we don't dump core
 
-enum request { q, w, e};               // { dg-error "" } 
+enum request { q, w, e};               // { dg-message "" } 
 
 class request {                                // { dg-error "" } 
 public:
index eb40fe4aea7d961742c31480bd521933a86dcb70..b39a1d784523d6be9adcdc0f2fcada8e8209385c 100644 (file)
@@ -1,5 +1,5 @@
 // { dg-do assemble  }
-int i;         // { dg-error "" } 
+int i;         // { dg-message "" } 
 
 namespace i {  // { dg-error "" } 
 }
index 5bff439fcee978a781f51c2a8d5a1ece3a257a3f..2d9dd4a4c5731266c2aea084cbb8467bd2843bd4 100644 (file)
@@ -7,7 +7,7 @@ namespace D {     // { dg-error "" } reopening namespace with alias
   void f();
 }
 
-void C::f(){}     // { dg-error "" } previous definition
+void C::f(){}     // { dg-message "" } previous definition
 
 void D::f(){}     // { dg-error "" } redefinition
 
index 2dc0344f399fc09162fe5bf8b7752942e84d95bd..3067bdfb7c353485d0bc5fff7c32a6dfefdfabd3 100644 (file)
@@ -5,7 +5,7 @@
 namespace A{
   void f(int);
   void f(int,int);
-  int i;              // { dg-error "" } .*
+  int i;              // { dg-message "" } .*
 }
 
 void A::f(){}         // { dg-error "" } should have been declared before
index 13249020fe974b2de11b7d9507368f6d476a0444..72f94cb1a018ad45385912466d13c1f7d2a485cf 100644 (file)
@@ -2,6 +2,6 @@
 // Origin: Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
 
 class T;
-inline void operator<(T&, T&) { } // { dg-error "" }  previous definition
+inline void operator<(T&, T&) { } // { dg-message "" }  previous definition
 inline void operator<(T&, T&) { } // { dg-error "" } duplicate definition
 
index 705fc6c5df8c942af8042aeefd22b3a39669cea8..ebcc064404f7226481d29806b3e11ac3c374679c 100644 (file)
@@ -3,7 +3,7 @@
 
 void foo(void)
 {
-  extern int i;    // { dg-error "" } previous declaration
+  extern int i;    // { dg-message "" } previous declaration
   extern double i; // { dg-error "" } conflicting type
   extern int j;
   extern int j;
index 8ddff82f50dabbc94b340726a2f3eb906ac472f4..5e01c1d1f9067a5ffe089959693b2a10b988c0bd 100644 (file)
@@ -1,5 +1,5 @@
 // { dg-do assemble  }
 // Origin: Mark Mitchell <mark@codesourcery.com>
 
-extern "C" void f (); // { dg-error "" } previous declaration
+extern "C" void f (); // { dg-message "" } previous declaration
 static void f () {} // { dg-error "" } extern redeclared static
index 574fd7e2836cedf15e84bcf418e170cbb035e39b..1dce27397ae9e60007bf83f8526a0776954e120d 100644 (file)
@@ -4,7 +4,7 @@ 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)[];  // { dg-error "" } previous declaration
+extern int (*i)[];  // { dg-message "" } previous declaration
 extern int (*i)[7]; // { dg-error "" } conflicting types for `i'
 
 extern int m[];
index f9e71479c7f9fc4116108e3d7118f56125e3b337..09845509028e26f55908aaaa5b88d61a72257f91 100644 (file)
@@ -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); // { dg-error "" } covers message `previously declared here'
+typedef v* (*w)(t); // { dg-message "" } 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
index ea32cf6ea9e4b68fe6c47d33cff017504799b5bf..54029eb85448056ac85f0c0490301722cac2eab0 100644 (file)
@@ -5,7 +5,7 @@ template <class T>
 void foo(T t);
 
 template <>
-void foo(int) {}; // { dg-error "6:previously declared here" }
+void foo(int) {}; // { dg-message "6:previously declared here" }
 
 template <>
 void foo<int>(int) {} // { dg-error "6:redefinition" }
index f5cb8d40a0698b360b7e36bcaecdf8d36700a728..f6f261ba07f085b9a7fd4b9bb001cf950044c3b0 100644 (file)
@@ -1,7 +1,7 @@
 // { dg-do assemble  }
 
 template <class T>
-void f(T) {} // { dg-error "previously" }
+void f(T) {} // { dg-message "previously" }
 
 template <class U>
 struct S {
index 9857c63ffe006ae163491d596b0ad67cd9267a76..cde1bc27469bbf9fdb5c40ec56039322886167f5 100644 (file)
@@ -16,7 +16,7 @@
 @end
 
 @implementation class3
-- (int) meth1 { return 0; } /* { dg-error "previously defined here" } */
+- (int) meth1 { return 0; } /* { dg-message "previously defined here" } */
 - (int) meth1 { return 0; } /* { dg-error "redefinition of" } */
 @end
 
@@ -25,6 +25,6 @@
 @end
 
 @implementation class4
-+ (void) meth1 {} /* { dg-error "previously defined here" } */
++ (void) meth1 {} /* { dg-message "previously defined here" } */
 + (void) meth1 {} /* { dg-error "redefinition of" } */
 @end
index 0a597b20f8d15e824666177ca0379a52ce856acb..22c2395ab97a7f67ef967f6129967856a1870958 100644 (file)
@@ -1,10 +1,10 @@
 /* Report invalid extern and __thread combinations. */
 /* { dg-require-effective-target tls } */
 
-extern int j;          /* { dg-error "previously declared here" } */
+extern int j;          /* { dg-message "previously declared here" } */
 __thread int j;                /* { dg-error "follows non-thread-local" } */
 
-extern __thread int i; /* { dg-error "previously declared here" } */
+extern __thread int i; /* { dg-message "previously declared here" } */
 int i;                 /* { dg-error "follows thread-local" } */
 
 extern __thread int k; /* This is fine. */