]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
gccrs: Invalid order of generic parameters
authorMuhammad Mahad <mahadtxt@gmail.com>
Thu, 17 Aug 2023 10:49:15 +0000 (15:49 +0500)
committerArthur Cohen <arthur.cohen@embecosm.com>
Tue, 16 Jan 2024 18:00:33 +0000 (19:00 +0100)
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 <mahadtxt@gmail.com>
gcc/rust/parse/rust-parse-impl.h
gcc/testsuite/rust/compile/generics13.rs

index 971d8c84955147c326c47e386a7b6b9db48956f6..d156ac2e48b1f5d24d6f833d7e7b2834af422e01 100644 (file)
@@ -3142,9 +3142,12 @@ Parser<ManagedTokenSource>::parse_generic_params (EndTokenPred is_end_token)
 
   // FIXME: Add reordering hint
   if (order_error)
-    rust_error_at (generic_params.front ()->get_locus (),
-                  "invalid order for generic parameters: lifetimes should "
-                  "always come before types");
+    {
+      Error error (generic_params.front ()->get_locus (),
+                  "invalid order for generic parameters: lifetime parameters "
+                  "must be declared prior to type and const parameters");
+      add_error (std::move (error));
+    }
 
   generic_params.shrink_to_fit ();
   return generic_params;
index 05c75c5f63d74764f461a26dcca3710806874126..b6b5eddae66a9943856db5fc4d69f23fc35bf254 100644 (file)
@@ -1 +1 @@
-struct Foo<A, 'a>; // { dg-error "invalid order for generic parameters: lifetimes should always come before types" }
+struct Foo<A, 'a>; // { dg-error "invalid order for generic parameters: lifetime parameters must be declared prior to type and const parameters" }