about summary refs log tree commit diff
path: root/src/libsyntax
diff options
context:
space:
mode:
authorEsteban Küber <esteban@kuber.com.ar>2019-01-11 19:31:45 -0800
committerEsteban Küber <esteban@kuber.com.ar>2019-01-11 19:31:45 -0800
commit5c67ba615c299d47aef592f62f1c7540e824e87f (patch)
treee57849a58dc8d74bee6aa2fc82b23a6a40a6ad22 /src/libsyntax
parentc2d381d39d282c0586d50ea7d7a431ffd5ddb3fb (diff)
downloadrust-5c67ba615c299d47aef592f62f1c7540e824e87f.tar.gz
rust-5c67ba615c299d47aef592f62f1c7540e824e87f.zip
Continue parser after trailing type argument attribute
Diffstat (limited to 'src/libsyntax')
-rw-r--r--src/libsyntax/parse/parser.rs8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/libsyntax/parse/parser.rs b/src/libsyntax/parse/parser.rs
index 1e4a26b3537..ae0296f839c 100644
--- a/src/libsyntax/parse/parser.rs
+++ b/src/libsyntax/parse/parser.rs
@@ -5255,8 +5255,12 @@ impl<'a> Parser<'a> {
                 // Check for trailing attributes and stop parsing.
                 if !attrs.is_empty() {
                     let param_kind = if seen_ty_param.is_some() { "type" } else { "lifetime" };
-                    self.span_err(attrs[0].span,
-                        &format!("trailing attribute after {} parameters", param_kind));
+                    self.struct_span_err(
+                        attrs[0].span,
+                        &format!("trailing attribute after {} parameters", param_kind),
+                    )
+                    .span_label(attrs[0].span, "attributes must go before parameters")
+                    .emit();
                 }
                 break
             }