about summary refs log tree commit diff
diff options
context:
space:
mode:
authorEsteban Küber <esteban@kuber.com.ar>2019-01-11 21:45:24 -0800
committerEsteban Küber <esteban@kuber.com.ar>2019-01-11 21:45:24 -0800
commitde3c4be099993517dba7bb764628ff28e86f9320 (patch)
tree77ef89394fffd17a2c169f7629c5549b571586cf
parent8119017746959f7ecb3ba93c6c32a7d6d9dafc40 (diff)
downloadrust-de3c4be099993517dba7bb764628ff28e86f9320.tar.gz
rust-de3c4be099993517dba7bb764628ff28e86f9320.zip
Tweak type argument after assoc type error
-rw-r--r--src/libsyntax/parse/parser.rs11
-rw-r--r--src/test/ui/parser/issue-32214.stderr2
2 files changed, 10 insertions, 3 deletions
diff --git a/src/libsyntax/parse/parser.rs b/src/libsyntax/parse/parser.rs
index 6228598ab61..a5ef4038885 100644
--- a/src/libsyntax/parse/parser.rs
+++ b/src/libsyntax/parse/parser.rs
@@ -5360,8 +5360,15 @@ impl<'a> Parser<'a> {
                 // Parse type argument.
                 let ty_param = self.parse_ty()?;
                 if seen_binding {
-                    self.span_err(ty_param.span,
-                        "type parameters must be declared prior to associated type bindings");
+                    self.struct_span_err(
+                        ty_param.span,
+                        "type parameters must be declared prior to associated type bindings"
+                    )
+                        .span_label(
+                            ty_param.span,
+                            "must be declared prior to associated type bindings",
+                        )
+                        .emit();
                 }
                 args.push(GenericArg::Type(ty_param));
                 seen_type = true;
diff --git a/src/test/ui/parser/issue-32214.stderr b/src/test/ui/parser/issue-32214.stderr
index a01517d016d..a889513eaee 100644
--- a/src/test/ui/parser/issue-32214.stderr
+++ b/src/test/ui/parser/issue-32214.stderr
@@ -2,7 +2,7 @@ error: type parameters must be declared prior to associated type bindings
   --> $DIR/issue-32214.rs:5:34
    |
 LL | pub fn test<W, I: Trait<Item=(), W> >() {}
-   |                                  ^
+   |                                  ^ must be declared prior to associated type bindings
 
 error: aborting due to previous error