]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
gccrs: Modify multiple definition error
authorOwen Avery <powerboat9.gamer@gmail.com>
Sun, 23 Feb 2025 21:45:41 +0000 (16:45 -0500)
committerArthur Cohen <arthur.cohen@embecosm.com>
Mon, 24 Mar 2025 12:30:43 +0000 (13:30 +0100)
gcc/rust/ChangeLog:

* resolve/rust-ast-resolve-expr.cc
(ResolveExpr::visit): Modify error message.
* resolve/rust-ast-resolve-implitem.h
(ResolveToplevelImplItem::visit): Likewise.
(ResolveTopLevelTraitItems::visit): Likewise.
(ResolveToplevelExternItem::visit): Likewise.
* resolve/rust-ast-resolve-stmt.cc
(ResolveStmt::visit): Likewise.
* resolve/rust-ast-resolve-stmt.h
(ResolveStmt::visit): Likewise.
* resolve/rust-ast-resolve-toplevel.h
(ResolveTopLevel::visit): Likewise.
* resolve/rust-ast-resolve-type.h
(ResolveGenericParams::visit): Likewise.

gcc/testsuite/ChangeLog:

* rust/compile/nr2/exclude: Remove entries.
* rust/compile/redef_error2.rs: Modify expected error.
* rust/compile/redef_error5.rs: Likewise.

Signed-off-by: Owen Avery <powerboat9.gamer@gmail.com>
gcc/rust/resolve/rust-ast-resolve-expr.cc
gcc/rust/resolve/rust-ast-resolve-implitem.h
gcc/rust/resolve/rust-ast-resolve-stmt.cc
gcc/rust/resolve/rust-ast-resolve-stmt.h
gcc/rust/resolve/rust-ast-resolve-toplevel.h
gcc/rust/resolve/rust-ast-resolve-type.h
gcc/testsuite/rust/compile/nr2/exclude
gcc/testsuite/rust/compile/redef_error2.rs
gcc/testsuite/rust/compile/redef_error5.rs

index be960beccd50d02c28b7e099b8206c9f34928b39..dc7f76d652dd499602631b6d4a7ac110d6e17c9a 100644 (file)
@@ -287,7 +287,7 @@ ResolveExpr::visit (AST::BlockExpr &expr)
        CanonicalPath::new_seg (label.get_node_id (), label_name),
        label_lifetime_node_id, label.get_locus (), false, Rib::ItemType::Label,
        [&] (const CanonicalPath &, NodeId, location_t locus) -> void {
-         rust_error_at (label.get_locus (), "label redefined multiple times");
+         rust_error_at (label.get_locus (), "label defined multiple times");
          rust_error_at (locus, "was defined here");
        });
     }
@@ -459,7 +459,7 @@ ResolveExpr::visit (AST::LoopExpr &expr)
        CanonicalPath::new_seg (expr.get_node_id (), label_name),
        label_lifetime_node_id, label.get_locus (), false, Rib::ItemType::Label,
        [&] (const CanonicalPath &, NodeId, location_t locus) -> void {
-         rust_error_at (label.get_locus (), "label redefined multiple times");
+         rust_error_at (label.get_locus (), "label defined multiple times");
          rust_error_at (locus, "was defined here");
        });
     }
@@ -535,7 +535,7 @@ ResolveExpr::visit (AST::WhileLoopExpr &expr)
        CanonicalPath::new_seg (label.get_node_id (), label_name),
        label_lifetime_node_id, label.get_locus (), false, Rib::ItemType::Label,
        [&] (const CanonicalPath &, NodeId, location_t locus) -> void {
-         rust_error_at (label.get_locus (), "label redefined multiple times");
+         rust_error_at (label.get_locus (), "label defined multiple times");
          rust_error_at (locus, "was defined here");
        });
     }
@@ -564,7 +564,7 @@ ResolveExpr::visit (AST::ForLoopExpr &expr)
        CanonicalPath::new_seg (label.get_node_id (), label_name),
        label_lifetime_node_id, label.get_locus (), false, Rib::ItemType::Label,
        [&] (const CanonicalPath &, NodeId, location_t locus) -> void {
-         rust_error_at (label.get_locus (), "label redefined multiple times");
+         rust_error_at (label.get_locus (), "label defined multiple times");
          rust_error_at (locus, "was defined here");
        });
     }
index 2ca12965d9b985f3a42c3f45cb507d3135a0747f..971bf8faee2e7f3ff56f7c4b2f7ca2fb63ef7f29 100644 (file)
@@ -51,7 +51,7 @@ public:
       [&] (const CanonicalPath &, NodeId, location_t locus) -> void {
        rich_location r (line_table, type.get_locus ());
        r.add_range (locus);
-       rust_error_at (r, "redefined multiple times");
+       rust_error_at (r, "defined multiple times");
       });
   }
 
@@ -67,7 +67,7 @@ public:
       [&] (const CanonicalPath &, NodeId, location_t locus) -> void {
        rich_location r (line_table, constant.get_locus ());
        r.add_range (locus);
-       rust_error_at (r, "redefined multiple times");
+       rust_error_at (r, "defined multiple times");
       });
   }
 
@@ -84,7 +84,7 @@ public:
       [&] (const CanonicalPath &, NodeId, location_t locus) -> void {
        rich_location r (line_table, function.get_locus ());
        r.add_range (locus);
-       rust_error_at (r, "redefined multiple times");
+       rust_error_at (r, "defined multiple times");
       });
   }
 
@@ -124,7 +124,7 @@ public:
       [&] (const CanonicalPath &, NodeId, location_t locus) -> void {
        rich_location r (line_table, function.get_locus ());
        r.add_range (locus);
-       rust_error_at (r, "redefined multiple times");
+       rust_error_at (r, "defined multiple times");
       });
 
     mappings.insert_canonical_path (function.get_node_id (), cpath);
@@ -144,7 +144,7 @@ public:
       [&] (const CanonicalPath &, NodeId, location_t locus) -> void {
        rich_location r (line_table, constant.get_locus ());
        r.add_range (locus);
-       rust_error_at (r, "redefined multiple times");
+       rust_error_at (r, "defined multiple times");
       });
 
     mappings.insert_canonical_path (constant.get_node_id (), cpath);
@@ -162,7 +162,7 @@ public:
       [&] (const CanonicalPath &, NodeId, location_t locus) -> void {
        rich_location r (line_table, type.get_locus ());
        r.add_range (locus);
-       rust_error_at (r, "redefined multiple times");
+       rust_error_at (r, "defined multiple times");
       });
 
     mappings.insert_canonical_path (type.get_node_id (), cpath);
@@ -202,7 +202,7 @@ public:
       [&] (const CanonicalPath &, NodeId, location_t locus) -> void {
        rich_location r (line_table, function.get_locus ());
        r.add_range (locus);
-       rust_error_at (r, "redefined multiple times");
+       rust_error_at (r, "defined multiple times");
       });
 
     NodeId current_module = resolver->peek_current_module_scope ();
@@ -221,7 +221,7 @@ public:
       [&] (const CanonicalPath &, NodeId, location_t locus) -> void {
        rich_location r (line_table, item.get_locus ());
        r.add_range (locus);
-       rust_error_at (r, "redefined multiple times");
+       rust_error_at (r, "defined multiple times");
       });
 
     NodeId current_module = resolver->peek_current_module_scope ();
@@ -240,7 +240,7 @@ public:
        rich_location r (line_table, type.get_locus ());
        r.add_range (locus);
 
-       rust_error_at (r, "redefined multiple times");
+       rust_error_at (r, "defined multiple times");
       });
 
     NodeId current_module = resolver->peek_current_module_scope ();
index 226d8e8e2f4c9159b1865a0e764fab6a8eb34f03..fefb522aec713303b7cefffbf76b31bc9361220f 100644 (file)
@@ -70,7 +70,7 @@ ResolveStmt::visit (AST::StaticItem &var)
     [&] (const CanonicalPath &, NodeId, location_t locus) -> void {
       rich_location r (line_table, var.get_locus ());
       r.add_range (locus);
-      rust_error_at (r, "redefined multiple times");
+      rust_error_at (r, "defined multiple times");
     });
 
   ResolveType::go (var.get_type ());
index 5b425e841061ec67d17fa8bb393a7eda2aa7f482..d3ff14f755e7fa32f0b003a9acbc5d3f2c29a276 100644 (file)
@@ -63,7 +63,7 @@ public:
       [&] (const CanonicalPath &, NodeId, location_t locus) -> void {
        rich_location r (line_table, constant.get_locus ());
        r.add_range (locus);
-       rust_error_at (r, "redefined multiple times");
+       rust_error_at (r, "defined multiple times");
       });
 
     ResolveType::go (constant.get_type ());
@@ -97,7 +97,7 @@ public:
       [&] (const CanonicalPath &, NodeId, location_t locus) -> void {
        rich_location r (line_table, struct_decl.get_locus ());
        r.add_range (locus);
-       rust_error_at (r, "redefined multiple times");
+       rust_error_at (r, "defined multiple times");
       });
 
     NodeId scope_node_id = struct_decl.get_node_id ();
@@ -128,7 +128,7 @@ public:
       [&] (const CanonicalPath &, NodeId, location_t locus) -> void {
        rich_location r (line_table, enum_decl.get_locus ());
        r.add_range (locus);
-       rust_error_at (r, "redefined multiple times");
+       rust_error_at (r, "defined multiple times");
       });
 
     NodeId scope_node_id = enum_decl.get_node_id ();
@@ -158,7 +158,7 @@ public:
       [&] (const CanonicalPath &, NodeId, location_t locus) -> void {
        rich_location r (line_table, item.get_locus ());
        r.add_range (locus);
-       rust_error_at (r, "redefined multiple times");
+       rust_error_at (r, "defined multiple times");
       });
 
     // Done, no fields.
@@ -178,7 +178,7 @@ public:
       [&] (const CanonicalPath &, NodeId, location_t locus) -> void {
        rich_location r (line_table, item.get_locus ());
        r.add_range (locus);
-       rust_error_at (r, "redefined multiple times");
+       rust_error_at (r, "defined multiple times");
       });
 
     for (auto &field : item.get_tuple_fields ())
@@ -204,7 +204,7 @@ public:
       [&] (const CanonicalPath &, NodeId, location_t locus) -> void {
        rich_location r (line_table, item.get_locus ());
        r.add_range (locus);
-       rust_error_at (r, "redefined multiple times");
+       rust_error_at (r, "defined multiple times");
       });
 
     for (auto &field : item.get_struct_fields ())
@@ -230,7 +230,7 @@ public:
       [&] (const CanonicalPath &, NodeId, location_t locus) -> void {
        rich_location r (line_table, item.get_locus ());
        r.add_range (locus);
-       rust_error_at (r, "redefined multiple times");
+       rust_error_at (r, "defined multiple times");
       });
 
     // Done, no fields.
@@ -251,7 +251,7 @@ public:
       [&] (const CanonicalPath &, NodeId, location_t locus) -> void {
        rich_location r (line_table, struct_decl.get_locus ());
        r.add_range (locus);
-       rust_error_at (r, "redefined multiple times");
+       rust_error_at (r, "defined multiple times");
       });
 
     NodeId scope_node_id = struct_decl.get_node_id ();
@@ -287,7 +287,7 @@ public:
       [&] (const CanonicalPath &, NodeId, location_t locus) -> void {
        rich_location r (line_table, union_decl.get_locus ());
        r.add_range (locus);
-       rust_error_at (r, "redefined multiple times");
+       rust_error_at (r, "defined multiple times");
       });
 
     NodeId scope_node_id = union_decl.get_node_id ();
@@ -323,7 +323,7 @@ public:
       [&] (const CanonicalPath &, NodeId, location_t locus) -> void {
        rich_location r (line_table, function.get_locus ());
        r.add_range (locus);
-       rust_error_at (r, "redefined multiple times");
+       rust_error_at (r, "defined multiple times");
       });
 
     NodeId scope_node_id = function.get_node_id ();
index 6828e573618aed3a2983802081ca1ab35766bffe..379ccabae25b4c362cd3432b65171356884b4ba6 100644 (file)
@@ -58,7 +58,7 @@ public:
       [&] (const CanonicalPath &, NodeId, location_t locus) -> void {
        rich_location r (line_table, module.get_locus ());
        r.add_range (locus);
-       rust_error_at (r, "redefined multiple times");
+       rust_error_at (r, "defined multiple times");
       });
 
     NodeId current_module = resolver->peek_current_module_scope ();
@@ -88,7 +88,7 @@ public:
       [&] (const CanonicalPath &, NodeId, location_t locus) -> void {
        rich_location r (line_table, alias.get_locus ());
        r.add_range (locus);
-       rust_error_at (r, "redefined multiple times");
+       rust_error_at (r, "defined multiple times");
       });
 
     NodeId current_module = resolver->peek_current_module_scope ();
@@ -110,7 +110,7 @@ public:
       [&] (const CanonicalPath &, NodeId, location_t locus) -> void {
        rich_location r (line_table, struct_decl.get_locus ());
        r.add_range (locus);
-       rust_error_at (r, "redefined multiple times");
+       rust_error_at (r, "defined multiple times");
       });
 
     NodeId current_module = resolver->peek_current_module_scope ();
@@ -132,7 +132,7 @@ public:
       [&] (const CanonicalPath &, NodeId, location_t locus) -> void {
        rich_location r (line_table, enum_decl.get_locus ());
        r.add_range (locus);
-       rust_error_at (r, "redefined multiple times");
+       rust_error_at (r, "defined multiple times");
       });
 
     resolver->push_new_module_scope (enum_decl.get_node_id ());
@@ -158,7 +158,7 @@ public:
       [&] (const CanonicalPath &, NodeId, location_t locus) -> void {
        rich_location r (line_table, item.get_locus ());
        r.add_range (locus);
-       rust_error_at (r, "redefined multiple times");
+       rust_error_at (r, "defined multiple times");
       });
 
     mappings.insert_canonical_path (item.get_node_id (), cpath);
@@ -180,7 +180,7 @@ public:
       [&] (const CanonicalPath &, NodeId, location_t locus) -> void {
        rich_location r (line_table, item.get_locus ());
        r.add_range (locus);
-       rust_error_at (r, "redefined multiple times");
+       rust_error_at (r, "defined multiple times");
       });
 
     mappings.insert_canonical_path (item.get_node_id (), cpath);
@@ -202,7 +202,7 @@ public:
       [&] (const CanonicalPath &, NodeId, location_t locus) -> void {
        rich_location r (line_table, item.get_locus ());
        r.add_range (locus);
-       rust_error_at (r, "redefined multiple times");
+       rust_error_at (r, "defined multiple times");
       });
 
     mappings.insert_canonical_path (item.get_node_id (), cpath);
@@ -224,7 +224,7 @@ public:
       [&] (const CanonicalPath &, NodeId, location_t locus) -> void {
        rich_location r (line_table, item.get_locus ());
        r.add_range (locus);
-       rust_error_at (r, "redefined multiple times");
+       rust_error_at (r, "defined multiple times");
       });
 
     mappings.insert_canonical_path (item.get_node_id (), cpath);
@@ -246,7 +246,7 @@ public:
       = [&] (const CanonicalPath &, NodeId, location_t locus) -> void {
       rich_location r (line_table, struct_decl.get_locus ());
       r.add_range (locus);
-      rust_error_at (r, "redefined multiple times");
+      rust_error_at (r, "defined multiple times");
     };
 
     resolver->get_type_scope ().insert (path, struct_decl.get_node_id (),
@@ -277,7 +277,7 @@ public:
       [&] (const CanonicalPath &, NodeId, location_t locus) -> void {
        rich_location r (line_table, union_decl.get_locus ());
        r.add_range (locus);
-       rust_error_at (r, "redefined multiple times");
+       rust_error_at (r, "defined multiple times");
       });
 
     NodeId current_module = resolver->peek_current_module_scope ();
@@ -297,7 +297,7 @@ public:
       [&] (const CanonicalPath &, NodeId, location_t locus) -> void {
        rich_location r (line_table, var.get_locus ());
        r.add_range (locus);
-       rust_error_at (r, "redefined multiple times");
+       rust_error_at (r, "defined multiple times");
       });
 
     NodeId current_module = resolver->peek_current_module_scope ();
@@ -318,7 +318,7 @@ public:
       [&] (const CanonicalPath &, NodeId, location_t locus) -> void {
        rich_location r (line_table, constant.get_locus ());
        r.add_range (locus);
-       rust_error_at (r, "redefined multiple times");
+       rust_error_at (r, "defined multiple times");
       });
 
     NodeId current_module = resolver->peek_current_module_scope ();
@@ -340,7 +340,7 @@ public:
       [&] (const CanonicalPath &, NodeId, location_t locus) -> void {
        rich_location r (line_table, function.get_locus ());
        r.add_range (locus);
-       rust_error_at (r, "redefined multiple times");
+       rust_error_at (r, "defined multiple times");
       });
 
     NodeId current_module = resolver->peek_current_module_scope ();
@@ -388,7 +388,7 @@ public:
       [&] (const CanonicalPath &, NodeId, location_t locus) -> void {
        rich_location r (line_table, impl_block.get_locus ());
        r.add_range (locus);
-       rust_error_at (r, "redefined multiple times");
+       rust_error_at (r, "defined multiple times");
       });
 
     for (auto &impl_item : impl_block.get_impl_items ())
@@ -408,7 +408,7 @@ public:
       [&] (const CanonicalPath &, NodeId, location_t locus) -> void {
        rich_location r (line_table, trait.get_locus ());
        r.add_range (locus);
-       rust_error_at (r, "redefined multiple times");
+       rust_error_at (r, "defined multiple times");
       });
 
     for (auto &item : trait.get_trait_items ())
@@ -480,7 +480,7 @@ public:
       [&] (const CanonicalPath &, NodeId, location_t locus) -> void {
        rich_location r (line_table, extern_crate.get_locus ());
        r.add_range (locus);
-       rust_error_at (r, "redefined multiple times");
+       rust_error_at (r, "defined multiple times");
       });
   }
 
index 7edcec9e1f65c016e44717ae7458cd66e47da158..8379d0e9f84be8697c52f0cb017a8ec2ff5dbf7d 100644 (file)
@@ -160,7 +160,7 @@ public:
          Rib::ItemType::Type,
          [&] (const CanonicalPath &, NodeId, location_t locus) -> void {
            rust_error_at (param.get_locus (),
-                          "generic param redefined multiple times");
+                          "generic param defined multiple times");
            rust_error_at (locus, "was defined here");
          });
 
index 6b8cf9801c5afccd202ec1afd1515f9dd68bb590..de5824813b47794b3c0b6cd0c06e936e68e62dea 100644 (file)
@@ -25,8 +25,6 @@ privacy8.rs
 pub_restricted_1.rs
 pub_restricted_2.rs
 pub_restricted_3.rs
-redef_error2.rs
-redef_error5.rs
 sizeof-stray-infer-var-bug.rs
 struct-expr-parse.rs
 undeclared_label.rs
index 65793bcda8a25ae2304a04c3260404d56f7da9ae..ed946f8b8109c290190f549337000945e88568c9 100644 (file)
@@ -1,4 +1,4 @@
 const TEST: i32 = 2;
-const TEST: f32 = 3.0; // { dg-error "redefined multiple times" }
+const TEST: f32 = 3.0; // { dg-error "defined multiple times" }
 
 fn main() {}
index dc6ad50e1045a0aa7b169cd98ac8e4c547a6b49c..b3d71e17d94968db5f192846e80305ffd3bc6b91 100644 (file)
@@ -2,7 +2,7 @@ struct Foo(i32, bool);
 
 impl Foo {
     const TEST: i32 = 123;
-    const TEST: bool = false; // { dg-error "redefined multiple times"  }
+    const TEST: bool = false; // { dg-error "defined multiple times"  }
 }
 
 fn main() {}