diff options
author | Muhammad Mahad <mahadtxt@gmail.com> | 2023-07-10 17:26:45 +0500 |
---|---|---|
committer | Arthur Cohen <arthur.cohen@embecosm.com> | 2024-01-16 18:49:35 +0100 |
commit | 9c99d52d00a941f48d93ae116cd425440bdfa5b2 (patch) | |
tree | 0bdb80451e7435514646f9a613e6b11bf808a7c1 /gcc/rust/hir | |
parent | f9b0ca04c88bcea93d9e80f2c98089da7484f0d7 (diff) | |
download | gcc-9c99d52d00a941f48d93ae116cd425440bdfa5b2.zip gcc-9c99d52d00a941f48d93ae116cd425440bdfa5b2.tar.gz gcc-9c99d52d00a941f48d93ae116cd425440bdfa5b2.tar.bz2 |
gccrs: [E0124] field x is already declared in struct
Refactored error message for more
than one duplicate fields.
gcc/rust/ChangeLog:
* hir/rust-ast-lower-base.cc (struct_field_name_exists):
called error function.
gcc/testsuite/ChangeLog:
* rust/compile/bad_pub_enumitems.rs: changed comment to pass test cases.
* rust/compile/dup_fields.rs: likewise.
* rust/execute/same_field_name.rs: New test.
Signed-off-by: Muhammad Mahad <mahadtxt@gmail.com>
Diffstat (limited to 'gcc/rust/hir')
-rw-r--r-- | gcc/rust/hir/rust-ast-lower-base.cc | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/gcc/rust/hir/rust-ast-lower-base.cc b/gcc/rust/hir/rust-ast-lower-base.cc index 82d1d2c..5a1ce74 100644 --- a/gcc/rust/hir/rust-ast-lower-base.cc +++ b/gcc/rust/hir/rust-ast-lower-base.cc @@ -681,7 +681,8 @@ struct_field_name_exists (std::vector<HIR::StructField> &fields, { RichLocation r (new_field.get_locus ()); r.add_range (field.get_locus ()); - rust_error_at (r, "duplicate field name %qs", + rust_error_at (r, ErrorCode ("E0124"), + "field %qs is already declared", field.get_field_name ().as_string ().c_str ()); return true; } |