From 0ae1af0eb31d99f4cd5ba05a199770aeee764567 Mon Sep 17 00:00:00 2001 From: Muhammad Mahad Date: Thu, 17 Aug 2023 10:25:33 +0500 Subject: [PATCH] gccrs: [E0380] Use of auto trait with method or associated item gcc/rust/ChangeLog: * parse/rust-parse-impl.h (Parser::parse_trait): added errorcode & updated error message. gcc/testsuite/ChangeLog: * rust/compile/auto_trait_invalid.rs: Updated comment. Signed-off-by: Muhammad Mahad --- gcc/rust/parse/rust-parse-impl.h | 4 ++-- gcc/testsuite/rust/compile/auto_trait_invalid.rs | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/gcc/rust/parse/rust-parse-impl.h b/gcc/rust/parse/rust-parse-impl.h index ca58d5e571a3..971d8c849551 100644 --- a/gcc/rust/parse/rust-parse-impl.h +++ b/gcc/rust/parse/rust-parse-impl.h @@ -4923,8 +4923,8 @@ Parser::parse_trait (AST::Visibility vis, if (is_auto_trait && !trait_items.empty ()) { - add_error ( - Error (locus, "associated items are forbidden within auto traits")); + add_error (Error (locus, ErrorCode::E0380, + "auto traits cannot have associated items")); // FIXME: unsure if this should be done at parsing time or not for (const auto &item : trait_items) diff --git a/gcc/testsuite/rust/compile/auto_trait_invalid.rs b/gcc/testsuite/rust/compile/auto_trait_invalid.rs index 16dca5718491..66e45531f5d8 100644 --- a/gcc/testsuite/rust/compile/auto_trait_invalid.rs +++ b/gcc/testsuite/rust/compile/auto_trait_invalid.rs @@ -2,7 +2,7 @@ #![feature(optin_builtin_traits)] -unsafe auto trait Invalid { // { dg-error "associated items are forbidden within auto traits" } +unsafe auto trait Invalid { // { dg-error "auto traits cannot have associated items" } fn foo(); // { dg-message "remove this item" } fn bar() {} // { dg-message "remove this item" } -- 2.47.2