Skip to content

Commit a613433

Browse files
MahadMuhammadCohenArthur
authored andcommitted
gccrs: Invalid order of generic parameters
Added more userfriendly message. gcc/rust/ChangeLog: * parse/rust-parse-impl.h (Parser::parse_generic_params): Added more user friendly message. gcc/testsuite/ChangeLog: * rust/compile/generics13.rs: for dejagnu, Signed-off-by: Muhammad Mahad <[email protected]>
1 parent ba4db84 commit a613433

File tree

2 files changed

+7
-4
lines changed

2 files changed

+7
-4
lines changed

gcc/rust/parse/rust-parse-impl.h

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3142,9 +3142,12 @@ Parser<ManagedTokenSource>::parse_generic_params (EndTokenPred is_end_token)
31423142

31433143
// FIXME: Add reordering hint
31443144
if (order_error)
3145-
rust_error_at (generic_params.front ()->get_locus (),
3146-
"invalid order for generic parameters: lifetimes should "
3147-
"always come before types");
3145+
{
3146+
Error error (generic_params.front ()->get_locus (),
3147+
"invalid order for generic parameters: lifetime parameters "
3148+
"must be declared prior to type and const parameters");
3149+
add_error (std::move (error));
3150+
}
31483151

31493152
generic_params.shrink_to_fit ();
31503153
return generic_params;
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
struct Foo<A, 'a>; // { dg-error "invalid order for generic parameters: lifetimes should always come before types" }
1+
struct Foo<A, 'a>; // { dg-error "invalid order for generic parameters: lifetime parameters must be declared prior to type and const parameters" }

0 commit comments

Comments
 (0)