about summary refs log tree commit diff
path: root/src
diff options
context:
space:
mode:
authorDavid Wood <david@davidtw.co>2018-09-17 19:39:37 +0200
committerDavid Wood <david@davidtw.co>2018-09-23 14:18:34 +0200
commit3becbbc1299f6938ff13f09ee3b3f37f7600326f (patch)
tree5c118a9775eb1650114df7bfafed98a0fc0e33d0 /src
parent97bbcabef15309ba9ab9bc9d365d4524ce26fc09 (diff)
downloadrust-3becbbc1299f6938ff13f09ee3b3f37f7600326f.tar.gz
rust-3becbbc1299f6938ff13f09ee3b3f37f7600326f.zip
Fixed off-by-one span.
Fixes the off-by-one span issue where closure argument spans were
pointing to the token after the argument.
Diffstat (limited to 'src')
-rw-r--r--src/libsyntax/parse/parser.rs2
-rw-r--r--src/test/ui/nll/issue-52534.stderr12
-rw-r--r--src/test/ui/regions/regions-nested-fns-2.nll.stderr2
-rw-r--r--src/test/ui/regions/regions-nested-fns.nll.stderr2
4 files changed, 9 insertions, 9 deletions
diff --git a/src/libsyntax/parse/parser.rs b/src/libsyntax/parse/parser.rs
index 7a13beb7852..d6cbe47a66e 100644
--- a/src/libsyntax/parse/parser.rs
+++ b/src/libsyntax/parse/parser.rs
@@ -1848,7 +1848,7 @@ impl<'a> Parser<'a> {
             P(Ty {
                 id: ast::DUMMY_NODE_ID,
                 node: TyKind::Infer,
-                span: self.span,
+                span: self.prev_span,
             })
         };
         Ok(Arg {
diff --git a/src/test/ui/nll/issue-52534.stderr b/src/test/ui/nll/issue-52534.stderr
index 873f17d8deb..50b379755d3 100644
--- a/src/test/ui/nll/issue-52534.stderr
+++ b/src/test/ui/nll/issue-52534.stderr
@@ -2,9 +2,9 @@ error[E0597]: `x` does not live long enough
   --> $DIR/issue-52534.rs:22:14
    |
 LL |     foo(|a| &x)
-   |           -  ^ `x` would have to be valid for `'0`
-   |           |
-   |           has type `&'0 u32`
+   |          -   ^ `x` would have to be valid for `'0`
+   |          |
+   |          has type `&'0 u32`
 LL | }
    | - ...but `x` is only valid for the duration of the `bar` function, so it is dropped here while still borrowed
 
@@ -12,9 +12,9 @@ error[E0597]: `y` does not live long enough
   --> $DIR/issue-52534.rs:27:26
    |
 LL |     baz(|first, second| &y)
-   |               -          ^ `y` would have to be valid for `'0`
-   |               |
-   |               has type `&'0 u32`
+   |          -----           ^ `y` would have to be valid for `'0`
+   |          |
+   |          has type `&'0 u32`
 LL | }
    | - ...but `y` is only valid for the duration of the `foobar` function, so it is dropped here while still borrowed
 
diff --git a/src/test/ui/regions/regions-nested-fns-2.nll.stderr b/src/test/ui/regions/regions-nested-fns-2.nll.stderr
index 90e0f1b7e07..f6b7d8aa3b7 100644
--- a/src/test/ui/regions/regions-nested-fns-2.nll.stderr
+++ b/src/test/ui/regions/regions-nested-fns-2.nll.stderr
@@ -2,7 +2,7 @@ error[E0597]: `y` does not live long enough
   --> $DIR/regions-nested-fns-2.rs:18:25
    |
 LL |         |z| {
-   |           - has type `&'0 isize`
+   |          - has type `&'0 isize`
 LL |             //~^ ERROR E0373
 LL |             if false { &y } else { z }
    |                         ^ `y` would have to be valid for `'0`
diff --git a/src/test/ui/regions/regions-nested-fns.nll.stderr b/src/test/ui/regions/regions-nested-fns.nll.stderr
index e8309beb0ae..94e559b5238 100644
--- a/src/test/ui/regions/regions-nested-fns.nll.stderr
+++ b/src/test/ui/regions/regions-nested-fns.nll.stderr
@@ -25,7 +25,7 @@ error[E0597]: `y` does not live long enough
   --> $DIR/regions-nested-fns.rs:19:15
    |
 LL |     ignore::<Box<for<'z> FnMut(&'z isize)>>(Box::new(|z| {
-   |                                                        - has type `&'0 isize`
+   |                                                       - has type `&'0 isize`
 LL |         ay = x;
 LL |         ay = &y;
    |               ^ `y` would have to be valid for `'0`