about summary refs log tree commit diff
diff options
context:
space:
mode:
authorDavid Wood <david@davidtw.co>2018-08-08 18:01:04 +0200
committerDavid Wood <david@davidtw.co>2018-08-14 10:38:00 +0200
commit3e0a4079884eab5b54489c92f7428cda2797ea5c (patch)
treecc5ab83179293cf3f241b0823cbf3b985c155568
parentb16a30677f4e641329e768272cf9d3ecc2fa31c4 (diff)
downloadrust-3e0a4079884eab5b54489c92f7428cda2797ea5c.tar.gz
rust-3e0a4079884eab5b54489c92f7428cda2797ea5c.zip
Updated new UI tests to pass with NLL compare-mode
These tests need a review to ensure that those marked as
ignore-compare-mode-nll should be ignored and that this isn't a bug in NLL.
-rw-r--r--src/test/ui/compile-fail-migration/associated-types-subtyping-1.rs2
-rw-r--r--src/test/ui/compile-fail-migration/associated-types-subtyping-1.stderr4
-rw-r--r--src/test/ui/compile-fail-migration/borrow-tuple-fields.rs2
-rw-r--r--src/test/ui/compile-fail-migration/borrow-tuple-fields.stderr12
-rw-r--r--src/test/ui/compile-fail-migration/borrowck/borrowck-borrow-mut-object-twice.rs2
-rw-r--r--src/test/ui/compile-fail-migration/borrowck/borrowck-borrow-mut-object-twice.stderr2
-rw-r--r--src/test/ui/compile-fail-migration/borrowck/borrowck-closures-two-mut.rs2
-rw-r--r--src/test/ui/compile-fail-migration/borrowck/borrowck-closures-two-mut.stderr10
-rw-r--r--src/test/ui/compile-fail-migration/borrowck/borrowck-closures-unique-imm.rs2
-rw-r--r--src/test/ui/compile-fail-migration/borrowck/borrowck-closures-unique-imm.stderr2
-rw-r--r--src/test/ui/compile-fail-migration/borrowck/borrowck-closures-unique.rs2
-rw-r--r--src/test/ui/compile-fail-migration/borrowck/borrowck-closures-unique.stderr8
-rw-r--r--src/test/ui/compile-fail-migration/borrowck/borrowck-issue-2657-1.rs2
-rw-r--r--src/test/ui/compile-fail-migration/borrowck/borrowck-issue-2657-1.stderr2
-rw-r--r--src/test/ui/compile-fail-migration/borrowck/borrowck-lend-flow-if.rs2
-rw-r--r--src/test/ui/compile-fail-migration/borrowck/borrowck-lend-flow-if.stderr2
-rw-r--r--src/test/ui/compile-fail-migration/borrowck/borrowck-lend-flow.rs2
-rw-r--r--src/test/ui/compile-fail-migration/borrowck/borrowck-lend-flow.stderr2
-rw-r--r--src/test/ui/compile-fail-migration/borrowck/borrowck-loan-blocks-move-cc.rs2
-rw-r--r--src/test/ui/compile-fail-migration/borrowck/borrowck-loan-blocks-move-cc.stderr4
-rw-r--r--src/test/ui/compile-fail-migration/borrowck/borrowck-loan-blocks-move.rs2
-rw-r--r--src/test/ui/compile-fail-migration/borrowck/borrowck-loan-blocks-move.stderr2
-rw-r--r--src/test/ui/compile-fail-migration/borrowck/borrowck-move-from-subpath-of-borrowed-path.rs2
-rw-r--r--src/test/ui/compile-fail-migration/borrowck/borrowck-move-from-subpath-of-borrowed-path.stderr2
-rw-r--r--src/test/ui/compile-fail-migration/borrowck/borrowck-move-mut-base-ptr.rs2
-rw-r--r--src/test/ui/compile-fail-migration/borrowck/borrowck-move-mut-base-ptr.stderr2
-rw-r--r--src/test/ui/compile-fail-migration/borrowck/borrowck-mut-borrow-of-mut-base-ptr.rs2
-rw-r--r--src/test/ui/compile-fail-migration/borrowck/borrowck-mut-borrow-of-mut-base-ptr.stderr4
-rw-r--r--src/test/ui/compile-fail-migration/borrowck/borrowck-object-lifetime.rs2
-rw-r--r--src/test/ui/compile-fail-migration/borrowck/borrowck-object-lifetime.stderr4
-rw-r--r--src/test/ui/compile-fail-migration/borrowck/borrowck-overloaded-index-autoderef.rs2
-rw-r--r--src/test/ui/compile-fail-migration/borrowck/borrowck-overloaded-index-autoderef.stderr16
-rw-r--r--src/test/ui/compile-fail-migration/borrowck/borrowck-swap-mut-base-ptr.rs2
-rw-r--r--src/test/ui/compile-fail-migration/borrowck/borrowck-swap-mut-base-ptr.stderr2
-rw-r--r--src/test/ui/compile-fail-migration/borrowck/borrowck-union-borrow-nested.rs2
-rw-r--r--src/test/ui/compile-fail-migration/borrowck/borrowck-union-borrow-nested.stderr2
-rw-r--r--src/test/ui/compile-fail-migration/borrowck/borrowck-uniq-via-lend.rs2
-rw-r--r--src/test/ui/compile-fail-migration/borrowck/borrowck-uniq-via-lend.stderr4
-rw-r--r--src/test/ui/compile-fail-migration/cleanup-rvalue-scopes-cf.rs2
-rw-r--r--src/test/ui/compile-fail-migration/cleanup-rvalue-scopes-cf.stderr14
-rw-r--r--src/test/ui/compile-fail-migration/closure_promotion.rs2
-rw-r--r--src/test/ui/compile-fail-migration/closure_promotion.stderr2
-rw-r--r--src/test/ui/compile-fail-migration/hashmap-lifetimes.rs2
-rw-r--r--src/test/ui/compile-fail-migration/hashmap-lifetimes.stderr2
-rw-r--r--src/test/ui/compile-fail-migration/issue-28848.rs2
-rw-r--r--src/test/ui/compile-fail-migration/issue-28848.stderr10
-rw-r--r--src/test/ui/compile-fail-migration/meta-expected-error-wrong-rev.a.stderr2
-rw-r--r--src/test/ui/compile-fail-migration/meta-expected-error-wrong-rev.rs2
-rw-r--r--src/test/ui/compile-fail-migration/method-self-arg-2.rs2
-rw-r--r--src/test/ui/compile-fail-migration/method-self-arg-2.stderr4
-rw-r--r--src/test/ui/compile-fail-migration/mut-cant-alias.rs2
-rw-r--r--src/test/ui/compile-fail-migration/mut-cant-alias.stderr2
-rw-r--r--src/test/ui/compile-fail-migration/regions-assoc-type-in-supertrait-outlives-container.rs2
-rw-r--r--src/test/ui/compile-fail-migration/regions-assoc-type-in-supertrait-outlives-container.stderr10
-rw-r--r--src/test/ui/compile-fail-migration/regions-bounded-by-trait-requiring-static.rs2
-rw-r--r--src/test/ui/compile-fail-migration/regions-bounded-by-trait-requiring-static.stderr12
-rw-r--r--src/test/ui/compile-fail-migration/regions-bounded-method-type-parameters.rs2
-rw-r--r--src/test/ui/compile-fail-migration/regions-bounded-method-type-parameters.stderr2
-rw-r--r--src/test/ui/compile-fail-migration/regions-free-region-ordering-caller.rs2
-rw-r--r--src/test/ui/compile-fail-migration/regions-free-region-ordering-caller.stderr6
-rw-r--r--src/test/ui/compile-fail-migration/regions-implied-bounds-projection-gap-1.rs2
-rw-r--r--src/test/ui/compile-fail-migration/regions-implied-bounds-projection-gap-1.stderr4
-rw-r--r--src/test/ui/compile-fail-migration/regions-infer-contravariance-due-to-decl.rs2
-rw-r--r--src/test/ui/compile-fail-migration/regions-infer-contravariance-due-to-decl.stderr2
-rw-r--r--src/test/ui/compile-fail-migration/regions-infer-covariance-due-to-decl.rs2
-rw-r--r--src/test/ui/compile-fail-migration/regions-infer-covariance-due-to-decl.stderr2
-rw-r--r--src/test/ui/compile-fail-migration/regions-outlives-projection-container-wc.rs2
-rw-r--r--src/test/ui/compile-fail-migration/regions-outlives-projection-container-wc.stderr10
-rw-r--r--src/test/ui/compile-fail-migration/regions-outlives-projection-container.rs2
-rw-r--r--src/test/ui/compile-fail-migration/regions-outlives-projection-container.stderr40
-rw-r--r--src/test/ui/compile-fail-migration/regions-variance-contravariant-use-covariant-in-second-position.rs2
-rw-r--r--src/test/ui/compile-fail-migration/regions-variance-contravariant-use-covariant-in-second-position.stderr2
-rw-r--r--src/test/ui/compile-fail-migration/regions-variance-contravariant-use-covariant.rs2
-rw-r--r--src/test/ui/compile-fail-migration/regions-variance-contravariant-use-covariant.stderr2
-rw-r--r--src/test/ui/compile-fail-migration/regions-variance-covariant-use-contravariant.rs2
-rw-r--r--src/test/ui/compile-fail-migration/regions-variance-covariant-use-contravariant.stderr2
-rw-r--r--src/test/ui/compile-fail-migration/regions-variance-invariant-use-contravariant.rs2
-rw-r--r--src/test/ui/compile-fail-migration/regions-variance-invariant-use-contravariant.stderr2
-rw-r--r--src/test/ui/compile-fail-migration/regions-variance-invariant-use-covariant.rs2
-rw-r--r--src/test/ui/compile-fail-migration/regions-variance-invariant-use-covariant.stderr6
-rw-r--r--src/test/ui/compile-fail-migration/unboxed-closure-region.rs2
-rw-r--r--src/test/ui/compile-fail-migration/unboxed-closure-region.stderr2
-rw-r--r--src/test/ui/compile-fail-migration/unboxed-closures-borrow-conflict.rs2
-rw-r--r--src/test/ui/compile-fail-migration/unboxed-closures-borrow-conflict.stderr2
-rw-r--r--src/test/ui/compile-fail-migration/variance-cell-is-invariant.rs2
-rw-r--r--src/test/ui/compile-fail-migration/variance-cell-is-invariant.stderr2
-rw-r--r--src/test/ui/compile-fail-migration/variance-contravariant-arg-trait-match.rs2
-rw-r--r--src/test/ui/compile-fail-migration/variance-contravariant-arg-trait-match.stderr20
-rw-r--r--src/test/ui/compile-fail-migration/variance-contravariant-self-trait-match.rs2
-rw-r--r--src/test/ui/compile-fail-migration/variance-contravariant-self-trait-match.stderr20
-rw-r--r--src/test/ui/compile-fail-migration/variance-covariant-arg-trait-match.rs2
-rw-r--r--src/test/ui/compile-fail-migration/variance-covariant-arg-trait-match.stderr20
-rw-r--r--src/test/ui/compile-fail-migration/variance-covariant-self-trait-match.rs2
-rw-r--r--src/test/ui/compile-fail-migration/variance-covariant-self-trait-match.stderr20
-rw-r--r--src/test/ui/compile-fail-migration/variance-invariant-arg-trait-match.rs2
-rw-r--r--src/test/ui/compile-fail-migration/variance-invariant-arg-trait-match.stderr20
-rw-r--r--src/test/ui/compile-fail-migration/variance-invariant-self-trait-match.rs2
-rw-r--r--src/test/ui/compile-fail-migration/variance-invariant-self-trait-match.stderr20
98 files changed, 273 insertions, 175 deletions
diff --git a/src/test/ui/compile-fail-migration/associated-types-subtyping-1.rs b/src/test/ui/compile-fail-migration/associated-types-subtyping-1.rs
index 64dcdd39e7c..1c4b684265c 100644
--- a/src/test/ui/compile-fail-migration/associated-types-subtyping-1.rs
+++ b/src/test/ui/compile-fail-migration/associated-types-subtyping-1.rs
@@ -8,6 +8,8 @@
 // option. This file may not be copied, modified, or distributed
 // except according to those terms.
 
+// ignore-compare-mode-nll
+
 #![allow(unused_variables)]
 
 trait Trait<'a> {
diff --git a/src/test/ui/compile-fail-migration/associated-types-subtyping-1.stderr b/src/test/ui/compile-fail-migration/associated-types-subtyping-1.stderr
index d9e8d66e6a0..58925a0e63f 100644
--- a/src/test/ui/compile-fail-migration/associated-types-subtyping-1.stderr
+++ b/src/test/ui/compile-fail-migration/associated-types-subtyping-1.stderr
@@ -1,5 +1,5 @@
 error[E0623]: lifetime mismatch
-  --> $DIR/associated-types-subtyping-1.rs:34:37
+  --> $DIR/associated-types-subtyping-1.rs:36:37
    |
 LL | fn method2<'a,'b,T>(x: &'a T, y: &'b T)
    |                        -----     ----- these two types are declared with different lifetimes...
@@ -8,7 +8,7 @@ LL |     let _: <T as Trait<'b>>::Type = a; //~ ERROR E0623
    |                                     ^ ...but data from `y` flows into `x` here
 
 error[E0623]: lifetime mismatch
-  --> $DIR/associated-types-subtyping-1.rs:43:37
+  --> $DIR/associated-types-subtyping-1.rs:45:37
    |
 LL | fn method3<'a,'b,T>(x: &'a T, y: &'b T)
    |                        -----     ----- these two types are declared with different lifetimes...
diff --git a/src/test/ui/compile-fail-migration/borrow-tuple-fields.rs b/src/test/ui/compile-fail-migration/borrow-tuple-fields.rs
index f3417fafe90..4337f569fa4 100644
--- a/src/test/ui/compile-fail-migration/borrow-tuple-fields.rs
+++ b/src/test/ui/compile-fail-migration/borrow-tuple-fields.rs
@@ -8,6 +8,8 @@
 // option. This file may not be copied, modified, or distributed
 // except according to those terms.
 
+// ignore-compare-mode-nll
+
 #![feature(box_syntax)]
 
 struct Foo(Box<isize>, isize);
diff --git a/src/test/ui/compile-fail-migration/borrow-tuple-fields.stderr b/src/test/ui/compile-fail-migration/borrow-tuple-fields.stderr
index 71dc21123e9..d010d1d989c 100644
--- a/src/test/ui/compile-fail-migration/borrow-tuple-fields.stderr
+++ b/src/test/ui/compile-fail-migration/borrow-tuple-fields.stderr
@@ -1,5 +1,5 @@
 error[E0505]: cannot move out of `x` because it is borrowed
-  --> $DIR/borrow-tuple-fields.rs:20:9
+  --> $DIR/borrow-tuple-fields.rs:22:9
    |
 LL |     let r = &x.0;
    |              --- borrow of `x.0` occurs here
@@ -7,7 +7,7 @@ LL |     let y = x; //~ ERROR cannot move out of `x` because it is borrowed
    |         ^ move out of `x` occurs here
 
 error[E0502]: cannot borrow `x.0` as mutable because it is also borrowed as immutable
-  --> $DIR/borrow-tuple-fields.rs:24:18
+  --> $DIR/borrow-tuple-fields.rs:26:18
    |
 LL |     let a = &x.0;
    |              --- immutable borrow occurs here
@@ -18,7 +18,7 @@ LL | }
    | - immutable borrow ends here
 
 error[E0499]: cannot borrow `x.0` as mutable more than once at a time
-  --> $DIR/borrow-tuple-fields.rs:28:18
+  --> $DIR/borrow-tuple-fields.rs:30:18
    |
 LL |     let a = &mut x.0;
    |                  --- first mutable borrow occurs here
@@ -29,7 +29,7 @@ LL | }
    | - first borrow ends here
 
 error[E0505]: cannot move out of `x` because it is borrowed
-  --> $DIR/borrow-tuple-fields.rs:33:9
+  --> $DIR/borrow-tuple-fields.rs:35:9
    |
 LL |     let r = &x.0;
    |              --- borrow of `x.0` occurs here
@@ -37,7 +37,7 @@ LL |     let y = x; //~ ERROR cannot move out of `x` because it is borrowed
    |         ^ move out of `x` occurs here
 
 error[E0502]: cannot borrow `x.0` as mutable because it is also borrowed as immutable
-  --> $DIR/borrow-tuple-fields.rs:37:18
+  --> $DIR/borrow-tuple-fields.rs:39:18
    |
 LL |     let a = &x.0;
    |              --- immutable borrow occurs here
@@ -48,7 +48,7 @@ LL | }
    | - immutable borrow ends here
 
 error[E0499]: cannot borrow `x.0` as mutable more than once at a time
-  --> $DIR/borrow-tuple-fields.rs:41:18
+  --> $DIR/borrow-tuple-fields.rs:43:18
    |
 LL |     let a = &mut x.0;
    |                  --- first mutable borrow occurs here
diff --git a/src/test/ui/compile-fail-migration/borrowck/borrowck-borrow-mut-object-twice.rs b/src/test/ui/compile-fail-migration/borrowck/borrowck-borrow-mut-object-twice.rs
index 7175194355b..910851a1030 100644
--- a/src/test/ui/compile-fail-migration/borrowck/borrowck-borrow-mut-object-twice.rs
+++ b/src/test/ui/compile-fail-migration/borrowck/borrowck-borrow-mut-object-twice.rs
@@ -8,6 +8,8 @@
 // option. This file may not be copied, modified, or distributed
 // except according to those terms.
 
+// ignore-compare-mode-nll
+
 // Check that `&mut` objects cannot be borrowed twice, just like
 // other `&mut` pointers.
 
diff --git a/src/test/ui/compile-fail-migration/borrowck/borrowck-borrow-mut-object-twice.stderr b/src/test/ui/compile-fail-migration/borrowck/borrowck-borrow-mut-object-twice.stderr
index 1812420e444..e0ea39a2491 100644
--- a/src/test/ui/compile-fail-migration/borrowck/borrowck-borrow-mut-object-twice.stderr
+++ b/src/test/ui/compile-fail-migration/borrowck/borrowck-borrow-mut-object-twice.stderr
@@ -1,5 +1,5 @@
 error[E0499]: cannot borrow `*x` as mutable more than once at a time
-  --> $DIR/borrowck-borrow-mut-object-twice.rs:21:5
+  --> $DIR/borrowck-borrow-mut-object-twice.rs:23:5
    |
 LL |     let _y = x.f1();
    |              - first mutable borrow occurs here
diff --git a/src/test/ui/compile-fail-migration/borrowck/borrowck-closures-two-mut.rs b/src/test/ui/compile-fail-migration/borrowck/borrowck-closures-two-mut.rs
index 29546abe0bb..de8cac38dcf 100644
--- a/src/test/ui/compile-fail-migration/borrowck/borrowck-closures-two-mut.rs
+++ b/src/test/ui/compile-fail-migration/borrowck/borrowck-closures-two-mut.rs
@@ -12,6 +12,8 @@
 // access to the variable, whether that mutable access be used
 // for direct assignment or for taking mutable ref. Issue #6801.
 
+// ignore-compare-mode-nll
+
 #![feature(box_syntax)]
 
 fn to_fn_mut<F: FnMut()>(f: F) -> F { f }
diff --git a/src/test/ui/compile-fail-migration/borrowck/borrowck-closures-two-mut.stderr b/src/test/ui/compile-fail-migration/borrowck/borrowck-closures-two-mut.stderr
index 3b4e050ee25..f314bb95c31 100644
--- a/src/test/ui/compile-fail-migration/borrowck/borrowck-closures-two-mut.stderr
+++ b/src/test/ui/compile-fail-migration/borrowck/borrowck-closures-two-mut.stderr
@@ -1,5 +1,5 @@
 error[E0499]: cannot borrow `x` as mutable more than once at a time
-  --> $DIR/borrowck-closures-two-mut.rs:22:24
+  --> $DIR/borrowck-closures-two-mut.rs:24:24
    |
 LL |     let c1 = to_fn_mut(|| x = 4);
    |                        -- - previous borrow occurs due to use of `x` in closure
@@ -13,7 +13,7 @@ LL | }
    | - first borrow ends here
 
 error[E0499]: cannot borrow `x` as mutable more than once at a time
-  --> $DIR/borrowck-closures-two-mut.rs:32:24
+  --> $DIR/borrowck-closures-two-mut.rs:34:24
    |
 LL |     let c1 = to_fn_mut(|| set(&mut x));
    |                        --          - previous borrow occurs due to use of `x` in closure
@@ -27,7 +27,7 @@ LL | }
    | - first borrow ends here
 
 error[E0499]: cannot borrow `x` as mutable more than once at a time
-  --> $DIR/borrowck-closures-two-mut.rs:38:24
+  --> $DIR/borrowck-closures-two-mut.rs:40:24
    |
 LL |     let c1 = to_fn_mut(|| x = 5);
    |                        -- - previous borrow occurs due to use of `x` in closure
@@ -41,7 +41,7 @@ LL | }
    | - first borrow ends here
 
 error[E0499]: cannot borrow `x` as mutable more than once at a time
-  --> $DIR/borrowck-closures-two-mut.rs:44:24
+  --> $DIR/borrowck-closures-two-mut.rs:46:24
    |
 LL |     let c1 = to_fn_mut(|| x = 5);
    |                        -- - previous borrow occurs due to use of `x` in closure
@@ -56,7 +56,7 @@ LL | }
    | - first borrow ends here
 
 error[E0499]: cannot borrow `x` as mutable more than once at a time
-  --> $DIR/borrowck-closures-two-mut.rs:55:24
+  --> $DIR/borrowck-closures-two-mut.rs:57:24
    |
 LL |     let c1 = to_fn_mut(|| set(&mut *x.f));
    |                        --           - previous borrow occurs due to use of `x` in closure
diff --git a/src/test/ui/compile-fail-migration/borrowck/borrowck-closures-unique-imm.rs b/src/test/ui/compile-fail-migration/borrowck/borrowck-closures-unique-imm.rs
index 247a4fe89a5..9fefbe2bdc6 100644
--- a/src/test/ui/compile-fail-migration/borrowck/borrowck-closures-unique-imm.rs
+++ b/src/test/ui/compile-fail-migration/borrowck/borrowck-closures-unique-imm.rs
@@ -8,6 +8,8 @@
 // option. This file may not be copied, modified, or distributed
 // except according to those terms.
 
+// ignore-compare-mode-nll
+
 struct Foo {
     x: isize,
 }
diff --git a/src/test/ui/compile-fail-migration/borrowck/borrowck-closures-unique-imm.stderr b/src/test/ui/compile-fail-migration/borrowck/borrowck-closures-unique-imm.stderr
index 31b1a1bb0e8..a166b6292e6 100644
--- a/src/test/ui/compile-fail-migration/borrowck/borrowck-closures-unique-imm.stderr
+++ b/src/test/ui/compile-fail-migration/borrowck/borrowck-closures-unique-imm.stderr
@@ -1,5 +1,5 @@
 error[E0502]: cannot borrow `this.x` as mutable because it is also borrowed as immutable
-  --> $DIR/borrowck-closures-unique-imm.rs:21:14
+  --> $DIR/borrowck-closures-unique-imm.rs:23:14
    |
 LL |         let p = &this.x;
    |                  ------ immutable borrow occurs here
diff --git a/src/test/ui/compile-fail-migration/borrowck/borrowck-closures-unique.rs b/src/test/ui/compile-fail-migration/borrowck/borrowck-closures-unique.rs
index 1b22dc4d2c6..9a74f188a54 100644
--- a/src/test/ui/compile-fail-migration/borrowck/borrowck-closures-unique.rs
+++ b/src/test/ui/compile-fail-migration/borrowck/borrowck-closures-unique.rs
@@ -8,6 +8,8 @@
 // option. This file may not be copied, modified, or distributed
 // except according to those terms.
 
+// ignore-compare-mode-nll
+
 // Tests that a closure which requires mutable access to the referent
 // of an `&mut` requires a "unique" borrow -- that is, the variable to
 // be borrowed (here, `x`) will not be borrowed *mutably*, but
diff --git a/src/test/ui/compile-fail-migration/borrowck/borrowck-closures-unique.stderr b/src/test/ui/compile-fail-migration/borrowck/borrowck-closures-unique.stderr
index 8f213c16cff..27163bde34f 100644
--- a/src/test/ui/compile-fail-migration/borrowck/borrowck-closures-unique.stderr
+++ b/src/test/ui/compile-fail-migration/borrowck/borrowck-closures-unique.stderr
@@ -1,5 +1,5 @@
 error[E0500]: closure requires unique access to `x` but it is already borrowed
-  --> $DIR/borrowck-closures-unique.rs:32:14
+  --> $DIR/borrowck-closures-unique.rs:34:14
    |
 LL |     let c1 = || get(x);
    |              --     - previous borrow occurs due to use of `x` in closure
@@ -13,7 +13,7 @@ LL | }
    | - borrow ends here
 
 error[E0500]: closure requires unique access to `x` but it is already borrowed
-  --> $DIR/borrowck-closures-unique.rs:37:14
+  --> $DIR/borrowck-closures-unique.rs:39:14
    |
 LL |     let c1 = || get(x);
    |              --     - previous borrow occurs due to use of `x` in closure
@@ -27,7 +27,7 @@ LL | }
    | - borrow ends here
 
 error[E0524]: two closures require unique access to `x` at the same time
-  --> $DIR/borrowck-closures-unique.rs:42:14
+  --> $DIR/borrowck-closures-unique.rs:44:14
    |
 LL |     let c1 = || set(x);
    |              --     - previous borrow occurs due to use of `x` in closure
@@ -41,7 +41,7 @@ LL | }
    | - borrow from first closure ends here
 
 error[E0595]: closure cannot assign to immutable argument `x`
-  --> $DIR/borrowck-closures-unique.rs:46:14
+  --> $DIR/borrowck-closures-unique.rs:48:14
    |
 LL |     let c1 = || x = panic!(); //~ ERROR closure cannot assign to immutable argument
    |              ^^ cannot borrow mutably
diff --git a/src/test/ui/compile-fail-migration/borrowck/borrowck-issue-2657-1.rs b/src/test/ui/compile-fail-migration/borrowck/borrowck-issue-2657-1.rs
index 0e1712137d3..500de9865dc 100644
--- a/src/test/ui/compile-fail-migration/borrowck/borrowck-issue-2657-1.rs
+++ b/src/test/ui/compile-fail-migration/borrowck/borrowck-issue-2657-1.rs
@@ -8,6 +8,8 @@
 // option. This file may not be copied, modified, or distributed
 // except according to those terms.
 
+// ignore-compare-mode-nll
+
 #![feature(box_syntax)]
 
 fn main() {
diff --git a/src/test/ui/compile-fail-migration/borrowck/borrowck-issue-2657-1.stderr b/src/test/ui/compile-fail-migration/borrowck/borrowck-issue-2657-1.stderr
index 3f184f5f964..532f0e6fb00 100644
--- a/src/test/ui/compile-fail-migration/borrowck/borrowck-issue-2657-1.stderr
+++ b/src/test/ui/compile-fail-migration/borrowck/borrowck-issue-2657-1.stderr
@@ -1,5 +1,5 @@
 error[E0505]: cannot move out of `x` because it is borrowed
-  --> $DIR/borrowck-issue-2657-1.rs:17:13
+  --> $DIR/borrowck-issue-2657-1.rs:19:13
    |
 LL |       Some(ref _y) => {
    |            ------ borrow of `x.0` occurs here
diff --git a/src/test/ui/compile-fail-migration/borrowck/borrowck-lend-flow-if.rs b/src/test/ui/compile-fail-migration/borrowck/borrowck-lend-flow-if.rs
index a6ce36a5507..3df174b4fb8 100644
--- a/src/test/ui/compile-fail-migration/borrowck/borrowck-lend-flow-if.rs
+++ b/src/test/ui/compile-fail-migration/borrowck/borrowck-lend-flow-if.rs
@@ -8,6 +8,8 @@
 // option. This file may not be copied, modified, or distributed
 // except according to those terms.
 
+// ignore-compare-mode-nll
+
 // Note: the borrowck analysis is currently flow-insensitive.
 // Therefore, some of these errors are marked as spurious and could be
 // corrected by a simple change to the analysis.  The others are
diff --git a/src/test/ui/compile-fail-migration/borrowck/borrowck-lend-flow-if.stderr b/src/test/ui/compile-fail-migration/borrowck/borrowck-lend-flow-if.stderr
index 91fe19ab769..c53c4e46d4f 100644
--- a/src/test/ui/compile-fail-migration/borrowck/borrowck-lend-flow-if.stderr
+++ b/src/test/ui/compile-fail-migration/borrowck/borrowck-lend-flow-if.stderr
@@ -1,5 +1,5 @@
 error[E0502]: cannot borrow `*v` as mutable because `v` is also borrowed as immutable
-  --> $DIR/borrowck-lend-flow-if.rs:38:21
+  --> $DIR/borrowck-lend-flow-if.rs:40:21
    |
 LL |         _w = &v;
    |               - immutable borrow occurs here
diff --git a/src/test/ui/compile-fail-migration/borrowck/borrowck-lend-flow.rs b/src/test/ui/compile-fail-migration/borrowck/borrowck-lend-flow.rs
index 1ed779cfaac..27a21f0e40a 100644
--- a/src/test/ui/compile-fail-migration/borrowck/borrowck-lend-flow.rs
+++ b/src/test/ui/compile-fail-migration/borrowck/borrowck-lend-flow.rs
@@ -8,6 +8,8 @@
 // option. This file may not be copied, modified, or distributed
 // except according to those terms.
 
+// ignore-compare-mode-nll
+
 // Note: the borrowck analysis is currently flow-insensitive.
 // Therefore, some of these errors are marked as spurious and could be
 // corrected by a simple change to the analysis.  The others are
diff --git a/src/test/ui/compile-fail-migration/borrowck/borrowck-lend-flow.stderr b/src/test/ui/compile-fail-migration/borrowck/borrowck-lend-flow.stderr
index 1fedf0a0f62..abb83c8dfc8 100644
--- a/src/test/ui/compile-fail-migration/borrowck/borrowck-lend-flow.stderr
+++ b/src/test/ui/compile-fail-migration/borrowck/borrowck-lend-flow.stderr
@@ -1,5 +1,5 @@
 error[E0502]: cannot borrow `*v` as mutable because `v` is also borrowed as immutable
-  --> $DIR/borrowck-lend-flow.rs:34:21
+  --> $DIR/borrowck-lend-flow.rs:36:21
    |
 LL |     let _w = &v;
    |               - immutable borrow occurs here
diff --git a/src/test/ui/compile-fail-migration/borrowck/borrowck-loan-blocks-move-cc.rs b/src/test/ui/compile-fail-migration/borrowck/borrowck-loan-blocks-move-cc.rs
index 57b584a8959..e57575d8f03 100644
--- a/src/test/ui/compile-fail-migration/borrowck/borrowck-loan-blocks-move-cc.rs
+++ b/src/test/ui/compile-fail-migration/borrowck/borrowck-loan-blocks-move-cc.rs
@@ -8,6 +8,8 @@
 // option. This file may not be copied, modified, or distributed
 // except according to those terms.
 
+// ignore-compare-mode-nll
+
 #![feature(box_syntax)]
 
 use std::thread;
diff --git a/src/test/ui/compile-fail-migration/borrowck/borrowck-loan-blocks-move-cc.stderr b/src/test/ui/compile-fail-migration/borrowck/borrowck-loan-blocks-move-cc.stderr
index 20ab864a53b..a1d633e54f0 100644
--- a/src/test/ui/compile-fail-migration/borrowck/borrowck-loan-blocks-move-cc.stderr
+++ b/src/test/ui/compile-fail-migration/borrowck/borrowck-loan-blocks-move-cc.stderr
@@ -1,5 +1,5 @@
 error[E0504]: cannot move `v` into closure because it is borrowed
-  --> $DIR/borrowck-loan-blocks-move-cc.rs:23:27
+  --> $DIR/borrowck-loan-blocks-move-cc.rs:25:27
    |
 LL |     let _w = &v;
    |               - borrow of `v` occurs here
@@ -8,7 +8,7 @@ LL |         println!("v={}", *v);
    |                           ^ move into closure occurs here
 
 error[E0504]: cannot move `v` into closure because it is borrowed
-  --> $DIR/borrowck-loan-blocks-move-cc.rs:32:27
+  --> $DIR/borrowck-loan-blocks-move-cc.rs:34:27
    |
 LL |     let _w = &v;
    |               - borrow of `v` occurs here
diff --git a/src/test/ui/compile-fail-migration/borrowck/borrowck-loan-blocks-move.rs b/src/test/ui/compile-fail-migration/borrowck/borrowck-loan-blocks-move.rs
index f3f18807314..dc83dc731b3 100644
--- a/src/test/ui/compile-fail-migration/borrowck/borrowck-loan-blocks-move.rs
+++ b/src/test/ui/compile-fail-migration/borrowck/borrowck-loan-blocks-move.rs
@@ -8,6 +8,8 @@
 // option. This file may not be copied, modified, or distributed
 // except according to those terms.
 
+// ignore-compare-mode-nll
+
 #![feature(box_syntax)]
 
 fn take(_v: Box<isize>) {
diff --git a/src/test/ui/compile-fail-migration/borrowck/borrowck-loan-blocks-move.stderr b/src/test/ui/compile-fail-migration/borrowck/borrowck-loan-blocks-move.stderr
index 6bd6bb268af..fb5657f6928 100644
--- a/src/test/ui/compile-fail-migration/borrowck/borrowck-loan-blocks-move.stderr
+++ b/src/test/ui/compile-fail-migration/borrowck/borrowck-loan-blocks-move.stderr
@@ -1,5 +1,5 @@
 error[E0505]: cannot move out of `v` because it is borrowed
-  --> $DIR/borrowck-loan-blocks-move.rs:19:10
+  --> $DIR/borrowck-loan-blocks-move.rs:21:10
    |
 LL |     let _w = &v;
    |               - borrow of `v` occurs here
diff --git a/src/test/ui/compile-fail-migration/borrowck/borrowck-move-from-subpath-of-borrowed-path.rs b/src/test/ui/compile-fail-migration/borrowck/borrowck-move-from-subpath-of-borrowed-path.rs
index c02c6a71514..8423b4cc9b0 100644
--- a/src/test/ui/compile-fail-migration/borrowck/borrowck-move-from-subpath-of-borrowed-path.rs
+++ b/src/test/ui/compile-fail-migration/borrowck/borrowck-move-from-subpath-of-borrowed-path.rs
@@ -8,6 +8,8 @@
 // option. This file may not be copied, modified, or distributed
 // except according to those terms.
 
+// ignore-compare-mode-nll
+
 // verify that an error is raised when trying to move out of a
 // borrowed path.
 
diff --git a/src/test/ui/compile-fail-migration/borrowck/borrowck-move-from-subpath-of-borrowed-path.stderr b/src/test/ui/compile-fail-migration/borrowck/borrowck-move-from-subpath-of-borrowed-path.stderr
index 1bdc8a85232..e5557eca6de 100644
--- a/src/test/ui/compile-fail-migration/borrowck/borrowck-move-from-subpath-of-borrowed-path.stderr
+++ b/src/test/ui/compile-fail-migration/borrowck/borrowck-move-from-subpath-of-borrowed-path.stderr
@@ -1,5 +1,5 @@
 error[E0505]: cannot move out of `*a` because it is borrowed
-  --> $DIR/borrowck-move-from-subpath-of-borrowed-path.rs:20:9
+  --> $DIR/borrowck-move-from-subpath-of-borrowed-path.rs:22:9
    |
 LL |     let b = &a;
    |              - borrow of `a` occurs here
diff --git a/src/test/ui/compile-fail-migration/borrowck/borrowck-move-mut-base-ptr.rs b/src/test/ui/compile-fail-migration/borrowck/borrowck-move-mut-base-ptr.rs
index 2fb89e6364b..d18f9623974 100644
--- a/src/test/ui/compile-fail-migration/borrowck/borrowck-move-mut-base-ptr.rs
+++ b/src/test/ui/compile-fail-migration/borrowck/borrowck-move-mut-base-ptr.rs
@@ -8,6 +8,8 @@
 // option. This file may not be copied, modified, or distributed
 // except according to those terms.
 
+// ignore-compare-mode-nll
+
 // Test that attempt to move `&mut` pointer while pointee is borrowed
 // yields an error.
 //
diff --git a/src/test/ui/compile-fail-migration/borrowck/borrowck-move-mut-base-ptr.stderr b/src/test/ui/compile-fail-migration/borrowck/borrowck-move-mut-base-ptr.stderr
index 0cbcda4d2cd..33ccd148f5b 100644
--- a/src/test/ui/compile-fail-migration/borrowck/borrowck-move-mut-base-ptr.stderr
+++ b/src/test/ui/compile-fail-migration/borrowck/borrowck-move-mut-base-ptr.stderr
@@ -1,5 +1,5 @@
 error[E0505]: cannot move out of `t0` because it is borrowed
-  --> $DIR/borrowck-move-mut-base-ptr.rs:18:9
+  --> $DIR/borrowck-move-mut-base-ptr.rs:20:9
    |
 LL |     let p: &isize = &*t0; // Freezes `*t0`
    |                      --- borrow of `*t0` occurs here
diff --git a/src/test/ui/compile-fail-migration/borrowck/borrowck-mut-borrow-of-mut-base-ptr.rs b/src/test/ui/compile-fail-migration/borrowck/borrowck-mut-borrow-of-mut-base-ptr.rs
index bdeb7ea69bd..5b73ca8e49a 100644
--- a/src/test/ui/compile-fail-migration/borrowck/borrowck-mut-borrow-of-mut-base-ptr.rs
+++ b/src/test/ui/compile-fail-migration/borrowck/borrowck-mut-borrow-of-mut-base-ptr.rs
@@ -8,6 +8,8 @@
 // option. This file may not be copied, modified, or distributed
 // except according to those terms.
 
+// ignore-compare-mode-nll
+
 // Test that attempt to mutably borrow `&mut` pointer while pointee is
 // borrowed yields an error.
 //
diff --git a/src/test/ui/compile-fail-migration/borrowck/borrowck-mut-borrow-of-mut-base-ptr.stderr b/src/test/ui/compile-fail-migration/borrowck/borrowck-mut-borrow-of-mut-base-ptr.stderr
index 28b740b23f9..e7d41dd4602 100644
--- a/src/test/ui/compile-fail-migration/borrowck/borrowck-mut-borrow-of-mut-base-ptr.stderr
+++ b/src/test/ui/compile-fail-migration/borrowck/borrowck-mut-borrow-of-mut-base-ptr.stderr
@@ -1,5 +1,5 @@
 error[E0502]: cannot borrow `t0` as mutable because `*t0` is also borrowed as immutable
-  --> $DIR/borrowck-mut-borrow-of-mut-base-ptr.rs:19:23
+  --> $DIR/borrowck-mut-borrow-of-mut-base-ptr.rs:21:23
    |
 LL |     let p: &isize = &*t0;     // Freezes `*t0`
    |                      --- immutable borrow occurs here
@@ -10,7 +10,7 @@ LL | }
    | - immutable borrow ends here
 
 error[E0499]: cannot borrow `t0` as mutable more than once at a time
-  --> $DIR/borrowck-mut-borrow-of-mut-base-ptr.rs:26:23
+  --> $DIR/borrowck-mut-borrow-of-mut-base-ptr.rs:28:23
    |
 LL |     let p: &mut isize = &mut *t0; // Claims `*t0`
    |                              --- first mutable borrow occurs here
diff --git a/src/test/ui/compile-fail-migration/borrowck/borrowck-object-lifetime.rs b/src/test/ui/compile-fail-migration/borrowck/borrowck-object-lifetime.rs
index 021b3f38e00..23148304d6c 100644
--- a/src/test/ui/compile-fail-migration/borrowck/borrowck-object-lifetime.rs
+++ b/src/test/ui/compile-fail-migration/borrowck/borrowck-object-lifetime.rs
@@ -8,6 +8,8 @@
 // option. This file may not be copied, modified, or distributed
 // except according to those terms.
 
+// ignore-compare-mode-nll
+
 // Test that borrows that occur due to calls to object methods
 // properly "claim" the object path.
 
diff --git a/src/test/ui/compile-fail-migration/borrowck/borrowck-object-lifetime.stderr b/src/test/ui/compile-fail-migration/borrowck/borrowck-object-lifetime.stderr
index e7ae92d822e..56800075795 100644
--- a/src/test/ui/compile-fail-migration/borrowck/borrowck-object-lifetime.stderr
+++ b/src/test/ui/compile-fail-migration/borrowck/borrowck-object-lifetime.stderr
@@ -1,5 +1,5 @@
 error[E0502]: cannot borrow `*x` as mutable because it is also borrowed as immutable
-  --> $DIR/borrowck-object-lifetime.rs:26:14
+  --> $DIR/borrowck-object-lifetime.rs:28:14
    |
 LL |     let _y = x.borrowed();
    |              - immutable borrow occurs here
@@ -9,7 +9,7 @@ LL | }
    | - immutable borrow ends here
 
 error[E0502]: cannot borrow `x` as mutable because `*x` is also borrowed as immutable
-  --> $DIR/borrowck-object-lifetime.rs:31:19
+  --> $DIR/borrowck-object-lifetime.rs:33:19
    |
 LL |     let _y = x.borrowed();
    |              - immutable borrow occurs here
diff --git a/src/test/ui/compile-fail-migration/borrowck/borrowck-overloaded-index-autoderef.rs b/src/test/ui/compile-fail-migration/borrowck/borrowck-overloaded-index-autoderef.rs
index b726c46d5d5..51d154c0f3a 100644
--- a/src/test/ui/compile-fail-migration/borrowck/borrowck-overloaded-index-autoderef.rs
+++ b/src/test/ui/compile-fail-migration/borrowck/borrowck-overloaded-index-autoderef.rs
@@ -8,6 +8,8 @@
 // option. This file may not be copied, modified, or distributed
 // except according to those terms.
 
+// ignore-compare-mode-nll
+
 // Test that we still see borrowck errors of various kinds when using
 // indexing and autoderef in combination.
 
diff --git a/src/test/ui/compile-fail-migration/borrowck/borrowck-overloaded-index-autoderef.stderr b/src/test/ui/compile-fail-migration/borrowck/borrowck-overloaded-index-autoderef.stderr
index c17eed1322b..d269ce5ec34 100644
--- a/src/test/ui/compile-fail-migration/borrowck/borrowck-overloaded-index-autoderef.stderr
+++ b/src/test/ui/compile-fail-migration/borrowck/borrowck-overloaded-index-autoderef.stderr
@@ -1,5 +1,5 @@
 error[E0502]: cannot borrow `*f` as immutable because it is also borrowed as mutable
-  --> $DIR/borrowck-overloaded-index-autoderef.rs:45:15
+  --> $DIR/borrowck-overloaded-index-autoderef.rs:47:15
    |
 LL |     let _p = &mut f[&s];
    |                   - mutable borrow occurs here
@@ -9,7 +9,7 @@ LL | }
    | - mutable borrow ends here
 
 error[E0499]: cannot borrow `*f` as mutable more than once at a time
-  --> $DIR/borrowck-overloaded-index-autoderef.rs:50:19
+  --> $DIR/borrowck-overloaded-index-autoderef.rs:52:19
    |
 LL |     let _p = &mut f[&s];
    |                   - first mutable borrow occurs here
@@ -19,7 +19,7 @@ LL | }
    | - first borrow ends here
 
 error[E0499]: cannot borrow `f.foo` as mutable more than once at a time
-  --> $DIR/borrowck-overloaded-index-autoderef.rs:59:19
+  --> $DIR/borrowck-overloaded-index-autoderef.rs:61:19
    |
 LL |     let _p = &mut f.foo[&s];
    |                   ----- first mutable borrow occurs here
@@ -29,7 +29,7 @@ LL | }
    | - first borrow ends here
 
 error[E0502]: cannot borrow `f.foo` as mutable because it is also borrowed as immutable
-  --> $DIR/borrowck-overloaded-index-autoderef.rs:69:19
+  --> $DIR/borrowck-overloaded-index-autoderef.rs:71:19
    |
 LL |     let _p = &f.foo[&s];
    |               ----- immutable borrow occurs here
@@ -39,7 +39,7 @@ LL | }
    | - immutable borrow ends here
 
 error[E0506]: cannot assign to `f.foo` because it is borrowed
-  --> $DIR/borrowck-overloaded-index-autoderef.rs:74:5
+  --> $DIR/borrowck-overloaded-index-autoderef.rs:76:5
    |
 LL |     let _p = &f.foo[&s];
    |               ----- borrow of `f.foo` occurs here
@@ -47,7 +47,7 @@ LL |     f.foo = g; //~ ERROR cannot assign
    |     ^^^^^^^^^ assignment to borrowed `f.foo` occurs here
 
 error[E0506]: cannot assign to `*f` because it is borrowed
-  --> $DIR/borrowck-overloaded-index-autoderef.rs:79:5
+  --> $DIR/borrowck-overloaded-index-autoderef.rs:81:5
    |
 LL |     let _p = &f.foo[&s];
    |               ----- borrow of `*f` occurs here
@@ -55,7 +55,7 @@ LL |     *f = g; //~ ERROR cannot assign
    |     ^^^^^^ assignment to borrowed `*f` occurs here
 
 error[E0506]: cannot assign to `f.foo` because it is borrowed
-  --> $DIR/borrowck-overloaded-index-autoderef.rs:84:5
+  --> $DIR/borrowck-overloaded-index-autoderef.rs:86:5
    |
 LL |     let _p = &mut f.foo[&s];
    |                   ----- borrow of `f.foo` occurs here
@@ -63,7 +63,7 @@ LL |     f.foo = g; //~ ERROR cannot assign
    |     ^^^^^^^^^ assignment to borrowed `f.foo` occurs here
 
 error[E0506]: cannot assign to `*f` because it is borrowed
-  --> $DIR/borrowck-overloaded-index-autoderef.rs:89:5
+  --> $DIR/borrowck-overloaded-index-autoderef.rs:91:5
    |
 LL |     let _p = &mut f.foo[&s];
    |                   ----- borrow of `*f` occurs here
diff --git a/src/test/ui/compile-fail-migration/borrowck/borrowck-swap-mut-base-ptr.rs b/src/test/ui/compile-fail-migration/borrowck/borrowck-swap-mut-base-ptr.rs
index 552fcec8e28..cf9fab9f0a1 100644
--- a/src/test/ui/compile-fail-migration/borrowck/borrowck-swap-mut-base-ptr.rs
+++ b/src/test/ui/compile-fail-migration/borrowck/borrowck-swap-mut-base-ptr.rs
@@ -8,6 +8,8 @@
 // option. This file may not be copied, modified, or distributed
 // except according to those terms.
 
+// ignore-compare-mode-nll
+
 // Test that attempt to swap `&mut` pointer while pointee is borrowed
 // yields an error.
 //
diff --git a/src/test/ui/compile-fail-migration/borrowck/borrowck-swap-mut-base-ptr.stderr b/src/test/ui/compile-fail-migration/borrowck/borrowck-swap-mut-base-ptr.stderr
index 1e42f9b63d7..f9e4a580ccc 100644
--- a/src/test/ui/compile-fail-migration/borrowck/borrowck-swap-mut-base-ptr.stderr
+++ b/src/test/ui/compile-fail-migration/borrowck/borrowck-swap-mut-base-ptr.stderr
@@ -1,5 +1,5 @@
 error[E0502]: cannot borrow `t0` as mutable because `*t0` is also borrowed as immutable
-  --> $DIR/borrowck-swap-mut-base-ptr.rs:21:15
+  --> $DIR/borrowck-swap-mut-base-ptr.rs:23:15
    |
 LL |     let p: &isize = &*t0;     // Freezes `*t0`
    |                      --- immutable borrow occurs here
diff --git a/src/test/ui/compile-fail-migration/borrowck/borrowck-union-borrow-nested.rs b/src/test/ui/compile-fail-migration/borrowck/borrowck-union-borrow-nested.rs
index 6298c87453c..f1c4e4c1869 100644
--- a/src/test/ui/compile-fail-migration/borrowck/borrowck-union-borrow-nested.rs
+++ b/src/test/ui/compile-fail-migration/borrowck/borrowck-union-borrow-nested.rs
@@ -8,6 +8,8 @@
 // option. This file may not be copied, modified, or distributed
 // except according to those terms.
 
+// ignore-compare-mode-nll
+
 #[derive(Clone, Copy)]
 struct S {
     a: u8,
diff --git a/src/test/ui/compile-fail-migration/borrowck/borrowck-union-borrow-nested.stderr b/src/test/ui/compile-fail-migration/borrowck/borrowck-union-borrow-nested.stderr
index 4f25a0f742a..4e7392a4228 100644
--- a/src/test/ui/compile-fail-migration/borrowck/borrowck-union-borrow-nested.stderr
+++ b/src/test/ui/compile-fail-migration/borrowck/borrowck-union-borrow-nested.stderr
@@ -1,5 +1,5 @@
 error[E0503]: cannot use `u.c` because it was mutably borrowed
-  --> $DIR/borrowck-union-borrow-nested.rs:33:17
+  --> $DIR/borrowck-union-borrow-nested.rs:35:17
    |
 LL |             let ra = &mut u.s.a;
    |                           ----- borrow of `u.s.a` occurs here
diff --git a/src/test/ui/compile-fail-migration/borrowck/borrowck-uniq-via-lend.rs b/src/test/ui/compile-fail-migration/borrowck/borrowck-uniq-via-lend.rs
index f36dc0ca43f..5a4e27768af 100644
--- a/src/test/ui/compile-fail-migration/borrowck/borrowck-uniq-via-lend.rs
+++ b/src/test/ui/compile-fail-migration/borrowck/borrowck-uniq-via-lend.rs
@@ -8,6 +8,8 @@
 // option. This file may not be copied, modified, or distributed
 // except according to those terms.
 
+// ignore-compare-mode-nll
+
 #![feature(box_syntax)]
 
 fn borrow(_v: &isize) {}
diff --git a/src/test/ui/compile-fail-migration/borrowck/borrowck-uniq-via-lend.stderr b/src/test/ui/compile-fail-migration/borrowck/borrowck-uniq-via-lend.stderr
index 9131cad1275..b731a6192d1 100644
--- a/src/test/ui/compile-fail-migration/borrowck/borrowck-uniq-via-lend.stderr
+++ b/src/test/ui/compile-fail-migration/borrowck/borrowck-uniq-via-lend.stderr
@@ -1,5 +1,5 @@
 error[E0502]: cannot borrow `*v` as immutable because `v` is also borrowed as mutable
-  --> $DIR/borrowck-uniq-via-lend.rs:43:13
+  --> $DIR/borrowck-uniq-via-lend.rs:45:13
    |
 LL |     let _w = &mut v;
    |                   - mutable borrow occurs here
@@ -9,7 +9,7 @@ LL | }
    | - mutable borrow ends here
 
 error[E0502]: cannot borrow `*v` as immutable because `v` is also borrowed as mutable
-  --> $DIR/borrowck-uniq-via-lend.rs:58:13
+  --> $DIR/borrowck-uniq-via-lend.rs:60:13
    |
 LL |     _x = &mut v;
    |               - mutable borrow occurs here
diff --git a/src/test/ui/compile-fail-migration/cleanup-rvalue-scopes-cf.rs b/src/test/ui/compile-fail-migration/cleanup-rvalue-scopes-cf.rs
index dcbb25ba5a9..0f83bf80d24 100644
--- a/src/test/ui/compile-fail-migration/cleanup-rvalue-scopes-cf.rs
+++ b/src/test/ui/compile-fail-migration/cleanup-rvalue-scopes-cf.rs
@@ -8,6 +8,8 @@
 // option. This file may not be copied, modified, or distributed
 // except according to those terms.
 
+// ignore-compare-mode-nll
+
 // Test that the borrow checker prevents pointers to temporaries
 // with statement lifetimes from escaping.
 
diff --git a/src/test/ui/compile-fail-migration/cleanup-rvalue-scopes-cf.stderr b/src/test/ui/compile-fail-migration/cleanup-rvalue-scopes-cf.stderr
index f30271db289..e1de4a2a8d4 100644
--- a/src/test/ui/compile-fail-migration/cleanup-rvalue-scopes-cf.stderr
+++ b/src/test/ui/compile-fail-migration/cleanup-rvalue-scopes-cf.stderr
@@ -1,5 +1,5 @@
 error[E0597]: borrowed value does not live long enough
-  --> $DIR/cleanup-rvalue-scopes-cf.rs:36:19
+  --> $DIR/cleanup-rvalue-scopes-cf.rs:38:19
    |
 LL |     let _x = arg(&AddFlags(1)); //~ ERROR value does not live long enough
    |                   ^^^^^^^^^^^ - temporary value dropped here while still borrowed
@@ -12,7 +12,7 @@ LL | }
    = note: consider using a `let` binding to increase its lifetime
 
 error[E0597]: borrowed value does not live long enough
-  --> $DIR/cleanup-rvalue-scopes-cf.rs:37:14
+  --> $DIR/cleanup-rvalue-scopes-cf.rs:39:14
    |
 LL |     let _x = AddFlags(1).get(); //~ ERROR value does not live long enough
    |              ^^^^^^^^^^^      - temporary value dropped here while still borrowed
@@ -25,7 +25,7 @@ LL | }
    = note: consider using a `let` binding to increase its lifetime
 
 error[E0597]: borrowed value does not live long enough
-  --> $DIR/cleanup-rvalue-scopes-cf.rs:38:21
+  --> $DIR/cleanup-rvalue-scopes-cf.rs:40:21
    |
 LL |     let _x = &*arg(&AddFlags(1)); //~ ERROR value does not live long enough
    |                     ^^^^^^^^^^^ - temporary value dropped here while still borrowed
@@ -38,7 +38,7 @@ LL | }
    = note: consider using a `let` binding to increase its lifetime
 
 error[E0597]: borrowed value does not live long enough
-  --> $DIR/cleanup-rvalue-scopes-cf.rs:39:24
+  --> $DIR/cleanup-rvalue-scopes-cf.rs:41:24
    |
 LL |     let ref _x = *arg(&AddFlags(1)); //~ ERROR value does not live long enough
    |                        ^^^^^^^^^^^ - temporary value dropped here while still borrowed
@@ -51,7 +51,7 @@ LL | }
    = note: consider using a `let` binding to increase its lifetime
 
 error[E0597]: borrowed value does not live long enough
-  --> $DIR/cleanup-rvalue-scopes-cf.rs:40:24
+  --> $DIR/cleanup-rvalue-scopes-cf.rs:42:24
    |
 LL |     let &ref _x = arg(&AddFlags(1)); //~ ERROR value does not live long enough
    |                        ^^^^^^^^^^^ - temporary value dropped here while still borrowed
@@ -64,7 +64,7 @@ LL | }
    = note: consider using a `let` binding to increase its lifetime
 
 error[E0597]: borrowed value does not live long enough
-  --> $DIR/cleanup-rvalue-scopes-cf.rs:41:14
+  --> $DIR/cleanup-rvalue-scopes-cf.rs:43:14
    |
 LL |     let _x = AddFlags(1).get(); //~ ERROR value does not live long enough
    |              ^^^^^^^^^^^      - temporary value dropped here while still borrowed
@@ -77,7 +77,7 @@ LL | }
    = note: consider using a `let` binding to increase its lifetime
 
 error[E0597]: borrowed value does not live long enough
-  --> $DIR/cleanup-rvalue-scopes-cf.rs:42:34
+  --> $DIR/cleanup-rvalue-scopes-cf.rs:44:34
    |
 LL |     let Box { f: _x } = Box { f: AddFlags(1).get() }; //~ ERROR value does not live long enough
    |                                  ^^^^^^^^^^^        - temporary value dropped here while still borrowed
diff --git a/src/test/ui/compile-fail-migration/closure_promotion.rs b/src/test/ui/compile-fail-migration/closure_promotion.rs
index ddc995a1a41..8826661f84a 100644
--- a/src/test/ui/compile-fail-migration/closure_promotion.rs
+++ b/src/test/ui/compile-fail-migration/closure_promotion.rs
@@ -8,6 +8,8 @@
 // option. This file may not be copied, modified, or distributed
 // except according to those terms.
 
+// ignore-compare-mode-nll
+
 #![allow(const_err)]
 
 // nll successfully compiles this. It is a bug.
diff --git a/src/test/ui/compile-fail-migration/closure_promotion.stderr b/src/test/ui/compile-fail-migration/closure_promotion.stderr
index cfb5d141a29..8f08796b5c6 100644
--- a/src/test/ui/compile-fail-migration/closure_promotion.stderr
+++ b/src/test/ui/compile-fail-migration/closure_promotion.stderr
@@ -1,5 +1,5 @@
 error[E0597]: borrowed value does not live long enough
-  --> $DIR/closure_promotion.rs:16:26
+  --> $DIR/closure_promotion.rs:18:26
    |
 LL |     let x: &'static _ = &|| { let z = 3; z }; //~ ERROR does not live long enough
    |                          ^^^^^^^^^^^^^^^^^^^ temporary value does not live long enough
diff --git a/src/test/ui/compile-fail-migration/hashmap-lifetimes.rs b/src/test/ui/compile-fail-migration/hashmap-lifetimes.rs
index 6858599f63a..9418c34cbfd 100644
--- a/src/test/ui/compile-fail-migration/hashmap-lifetimes.rs
+++ b/src/test/ui/compile-fail-migration/hashmap-lifetimes.rs
@@ -8,6 +8,8 @@
 // option. This file may not be copied, modified, or distributed
 // except according to those terms.
 
+// ignore-compare-mode-nll
+
 fn main() {
     let mut my_stuff = std::collections::HashMap::new();
     my_stuff.insert(0, 42);
diff --git a/src/test/ui/compile-fail-migration/hashmap-lifetimes.stderr b/src/test/ui/compile-fail-migration/hashmap-lifetimes.stderr
index fa3e6452325..eb129848ed2 100644
--- a/src/test/ui/compile-fail-migration/hashmap-lifetimes.stderr
+++ b/src/test/ui/compile-fail-migration/hashmap-lifetimes.stderr
@@ -1,5 +1,5 @@
 error[E0502]: cannot borrow `my_stuff` as mutable because it is also borrowed as immutable
-  --> $DIR/hashmap-lifetimes.rs:16:5
+  --> $DIR/hashmap-lifetimes.rs:18:5
    |
 LL |     let mut it = my_stuff.iter();
    |                  -------- immutable borrow occurs here
diff --git a/src/test/ui/compile-fail-migration/issue-28848.rs b/src/test/ui/compile-fail-migration/issue-28848.rs
index 1a06d59f0b1..c13fd5fa716 100644
--- a/src/test/ui/compile-fail-migration/issue-28848.rs
+++ b/src/test/ui/compile-fail-migration/issue-28848.rs
@@ -8,6 +8,8 @@
 // option. This file may not be copied, modified, or distributed
 // except according to those terms.
 
+// ignore-compare-mode-nll
+
 struct Foo<'a, 'b: 'a>(&'a &'b ());
 
 impl<'a, 'b> Foo<'a, 'b> {
diff --git a/src/test/ui/compile-fail-migration/issue-28848.stderr b/src/test/ui/compile-fail-migration/issue-28848.stderr
index 738a1c0c6f6..dadcff226f5 100644
--- a/src/test/ui/compile-fail-migration/issue-28848.stderr
+++ b/src/test/ui/compile-fail-migration/issue-28848.stderr
@@ -1,16 +1,16 @@
 error[E0478]: lifetime bound not satisfied
-  --> $DIR/issue-28848.rs:20:5
+  --> $DIR/issue-28848.rs:22:5
    |
 LL |     Foo::<'a, 'b>::xmute(u) //~ ERROR lifetime bound not satisfied
    |     ^^^^^^^^^^^^^^^^^^^^
    |
-note: lifetime parameter instantiated with the lifetime 'b as defined on the function body at 19:16
-  --> $DIR/issue-28848.rs:19:16
+note: lifetime parameter instantiated with the lifetime 'b as defined on the function body at 21:16
+  --> $DIR/issue-28848.rs:21:16
    |
 LL | pub fn foo<'a, 'b>(u: &'b ()) -> &'a () {
    |                ^^
-note: but lifetime parameter must outlive the lifetime 'a as defined on the function body at 19:12
-  --> $DIR/issue-28848.rs:19:12
+note: but lifetime parameter must outlive the lifetime 'a as defined on the function body at 21:12
+  --> $DIR/issue-28848.rs:21:12
    |
 LL | pub fn foo<'a, 'b>(u: &'b ()) -> &'a () {
    |            ^^
diff --git a/src/test/ui/compile-fail-migration/meta-expected-error-wrong-rev.a.stderr b/src/test/ui/compile-fail-migration/meta-expected-error-wrong-rev.a.stderr
index e78144be157..c3c39183c9a 100644
--- a/src/test/ui/compile-fail-migration/meta-expected-error-wrong-rev.a.stderr
+++ b/src/test/ui/compile-fail-migration/meta-expected-error-wrong-rev.a.stderr
@@ -1,5 +1,5 @@
 error[E0308]: mismatched types
-  --> $DIR/meta-expected-error-wrong-rev.rs:21:18
+  --> $DIR/meta-expected-error-wrong-rev.rs:23:18
    |
 LL |     let x: u32 = 22_usize; //[b]~ ERROR mismatched types
    |                  ^^^^^^^^ expected u32, found usize
diff --git a/src/test/ui/compile-fail-migration/meta-expected-error-wrong-rev.rs b/src/test/ui/compile-fail-migration/meta-expected-error-wrong-rev.rs
index 3c13050812c..8869e950b3a 100644
--- a/src/test/ui/compile-fail-migration/meta-expected-error-wrong-rev.rs
+++ b/src/test/ui/compile-fail-migration/meta-expected-error-wrong-rev.rs
@@ -8,6 +8,8 @@
 // option. This file may not be copied, modified, or distributed
 // except according to those terms.
 
+// ignore-compare-mode-nll
+
 // revisions: a
 // should-fail
 
diff --git a/src/test/ui/compile-fail-migration/method-self-arg-2.rs b/src/test/ui/compile-fail-migration/method-self-arg-2.rs
index dd5b2004145..397c6eab536 100644
--- a/src/test/ui/compile-fail-migration/method-self-arg-2.rs
+++ b/src/test/ui/compile-fail-migration/method-self-arg-2.rs
@@ -8,6 +8,8 @@
 // option. This file may not be copied, modified, or distributed
 // except according to those terms.
 
+// ignore-compare-mode-nll
+
 // Test method calls with self as an argument cannot subvert borrow checking.
 
 struct Foo;
diff --git a/src/test/ui/compile-fail-migration/method-self-arg-2.stderr b/src/test/ui/compile-fail-migration/method-self-arg-2.stderr
index d4e049d7f6e..4fe2da4164f 100644
--- a/src/test/ui/compile-fail-migration/method-self-arg-2.stderr
+++ b/src/test/ui/compile-fail-migration/method-self-arg-2.stderr
@@ -1,5 +1,5 @@
 error[E0502]: cannot borrow `x` as immutable because it is also borrowed as mutable
-  --> $DIR/method-self-arg-2.rs:23:15
+  --> $DIR/method-self-arg-2.rs:25:15
    |
 LL |     let y = &mut x;
    |                  - mutable borrow occurs here
@@ -10,7 +10,7 @@ LL | }
    | - mutable borrow ends here
 
 error[E0499]: cannot borrow `x` as mutable more than once at a time
-  --> $DIR/method-self-arg-2.rs:27:19
+  --> $DIR/method-self-arg-2.rs:29:19
    |
 LL |     let y = &mut x;
    |                  - first mutable borrow occurs here
diff --git a/src/test/ui/compile-fail-migration/mut-cant-alias.rs b/src/test/ui/compile-fail-migration/mut-cant-alias.rs
index 99d7258477a..15e1be66e78 100644
--- a/src/test/ui/compile-fail-migration/mut-cant-alias.rs
+++ b/src/test/ui/compile-fail-migration/mut-cant-alias.rs
@@ -8,6 +8,8 @@
 // option. This file may not be copied, modified, or distributed
 // except according to those terms.
 
+// ignore-compare-mode-nll
+
 use std::cell::RefCell;
 
 fn main() {
diff --git a/src/test/ui/compile-fail-migration/mut-cant-alias.stderr b/src/test/ui/compile-fail-migration/mut-cant-alias.stderr
index d8f23e64c31..b9497940301 100644
--- a/src/test/ui/compile-fail-migration/mut-cant-alias.stderr
+++ b/src/test/ui/compile-fail-migration/mut-cant-alias.stderr
@@ -1,5 +1,5 @@
 error[E0499]: cannot borrow `b` as mutable more than once at a time
-  --> $DIR/mut-cant-alias.rs:17:20
+  --> $DIR/mut-cant-alias.rs:19:20
    |
 LL |     let b1 = &mut *b;
    |                    - first mutable borrow occurs here
diff --git a/src/test/ui/compile-fail-migration/regions-assoc-type-in-supertrait-outlives-container.rs b/src/test/ui/compile-fail-migration/regions-assoc-type-in-supertrait-outlives-container.rs
index f2ff877cd82..96eb65daaff 100644
--- a/src/test/ui/compile-fail-migration/regions-assoc-type-in-supertrait-outlives-container.rs
+++ b/src/test/ui/compile-fail-migration/regions-assoc-type-in-supertrait-outlives-container.rs
@@ -8,6 +8,8 @@
 // option. This file may not be copied, modified, or distributed
 // except according to those terms.
 
+// ignore-compare-mode-nll
+
 // Test that we are imposing the requirement that every associated
 // type of a bound that appears in the where clause on a struct must
 // outlive the location in which the type appears, even when the
diff --git a/src/test/ui/compile-fail-migration/regions-assoc-type-in-supertrait-outlives-container.stderr b/src/test/ui/compile-fail-migration/regions-assoc-type-in-supertrait-outlives-container.stderr
index 3bfc6d3682c..7b7881d6ea7 100644
--- a/src/test/ui/compile-fail-migration/regions-assoc-type-in-supertrait-outlives-container.stderr
+++ b/src/test/ui/compile-fail-migration/regions-assoc-type-in-supertrait-outlives-container.stderr
@@ -1,16 +1,16 @@
 error[E0491]: in type `&'a WithAssoc<TheType<'b>>`, reference has a longer lifetime than the data it references
-  --> $DIR/regions-assoc-type-in-supertrait-outlives-container.rs:50:12
+  --> $DIR/regions-assoc-type-in-supertrait-outlives-container.rs:52:12
    |
 LL |     let _: &'a WithAssoc<TheType<'b>> = loop { }; //~ ERROR reference has a longer lifetime
    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^
    |
-note: the pointer is valid for the lifetime 'a as defined on the function body at 44:15
-  --> $DIR/regions-assoc-type-in-supertrait-outlives-container.rs:44:15
+note: the pointer is valid for the lifetime 'a as defined on the function body at 46:15
+  --> $DIR/regions-assoc-type-in-supertrait-outlives-container.rs:46:15
    |
 LL | fn with_assoc<'a,'b>() {
    |               ^^
-note: but the referenced data is only valid for the lifetime 'b as defined on the function body at 44:18
-  --> $DIR/regions-assoc-type-in-supertrait-outlives-container.rs:44:18
+note: but the referenced data is only valid for the lifetime 'b as defined on the function body at 46:18
+  --> $DIR/regions-assoc-type-in-supertrait-outlives-container.rs:46:18
    |
 LL | fn with_assoc<'a,'b>() {
    |                  ^^
diff --git a/src/test/ui/compile-fail-migration/regions-bounded-by-trait-requiring-static.rs b/src/test/ui/compile-fail-migration/regions-bounded-by-trait-requiring-static.rs
index 19c50d57e1b..8a15656f8a7 100644
--- a/src/test/ui/compile-fail-migration/regions-bounded-by-trait-requiring-static.rs
+++ b/src/test/ui/compile-fail-migration/regions-bounded-by-trait-requiring-static.rs
@@ -8,6 +8,8 @@
 // option. This file may not be copied, modified, or distributed
 // except according to those terms.
 
+// ignore-compare-mode-nll
+
 // Test which of the builtin types are considered sendable. The tests
 // in this file all test region bound and lifetime violations that are
 // detected during type check.
diff --git a/src/test/ui/compile-fail-migration/regions-bounded-by-trait-requiring-static.stderr b/src/test/ui/compile-fail-migration/regions-bounded-by-trait-requiring-static.stderr
index 82fa271ca4e..2cd82707a2a 100644
--- a/src/test/ui/compile-fail-migration/regions-bounded-by-trait-requiring-static.stderr
+++ b/src/test/ui/compile-fail-migration/regions-bounded-by-trait-requiring-static.stderr
@@ -1,5 +1,5 @@
 error[E0477]: the type `&'a isize` does not fulfill the required lifetime
-  --> $DIR/regions-bounded-by-trait-requiring-static.rs:32:5
+  --> $DIR/regions-bounded-by-trait-requiring-static.rs:34:5
    |
 LL |     assert_send::<&'a isize>(); //~ ERROR does not fulfill the required lifetime
    |     ^^^^^^^^^^^^^^^^^^^^^^^^
@@ -7,7 +7,7 @@ LL |     assert_send::<&'a isize>(); //~ ERROR does not fulfill the required lif
    = note: type must satisfy the static lifetime
 
 error[E0477]: the type `&'a str` does not fulfill the required lifetime
-  --> $DIR/regions-bounded-by-trait-requiring-static.rs:36:5
+  --> $DIR/regions-bounded-by-trait-requiring-static.rs:38:5
    |
 LL |     assert_send::<&'a str>(); //~ ERROR does not fulfill the required lifetime
    |     ^^^^^^^^^^^^^^^^^^^^^^
@@ -15,7 +15,7 @@ LL |     assert_send::<&'a str>(); //~ ERROR does not fulfill the required lifet
    = note: type must satisfy the static lifetime
 
 error[E0477]: the type `&'a [isize]` does not fulfill the required lifetime
-  --> $DIR/regions-bounded-by-trait-requiring-static.rs:40:5
+  --> $DIR/regions-bounded-by-trait-requiring-static.rs:42:5
    |
 LL |     assert_send::<&'a [isize]>(); //~ ERROR does not fulfill the required lifetime
    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
@@ -23,7 +23,7 @@ LL |     assert_send::<&'a [isize]>(); //~ ERROR does not fulfill the required l
    = note: type must satisfy the static lifetime
 
 error[E0477]: the type `std::boxed::Box<&'a isize>` does not fulfill the required lifetime
-  --> $DIR/regions-bounded-by-trait-requiring-static.rs:54:5
+  --> $DIR/regions-bounded-by-trait-requiring-static.rs:56:5
    |
 LL |     assert_send::<Box<&'a isize>>(); //~ ERROR does not fulfill the required lifetime
    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
@@ -31,7 +31,7 @@ LL |     assert_send::<Box<&'a isize>>(); //~ ERROR does not fulfill the require
    = note: type must satisfy the static lifetime
 
 error[E0477]: the type `*const &'a isize` does not fulfill the required lifetime
-  --> $DIR/regions-bounded-by-trait-requiring-static.rs:65:5
+  --> $DIR/regions-bounded-by-trait-requiring-static.rs:67:5
    |
 LL |     assert_send::<*const &'a isize>(); //~ ERROR does not fulfill the required lifetime
    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
@@ -39,7 +39,7 @@ LL |     assert_send::<*const &'a isize>(); //~ ERROR does not fulfill the requi
    = note: type must satisfy the static lifetime
 
 error[E0477]: the type `*mut &'a isize` does not fulfill the required lifetime
-  --> $DIR/regions-bounded-by-trait-requiring-static.rs:69:5
+  --> $DIR/regions-bounded-by-trait-requiring-static.rs:71:5
    |
 LL |     assert_send::<*mut &'a isize>(); //~ ERROR does not fulfill the required lifetime
    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
diff --git a/src/test/ui/compile-fail-migration/regions-bounded-method-type-parameters.rs b/src/test/ui/compile-fail-migration/regions-bounded-method-type-parameters.rs
index da4e8231a23..b53c80c3963 100644
--- a/src/test/ui/compile-fail-migration/regions-bounded-method-type-parameters.rs
+++ b/src/test/ui/compile-fail-migration/regions-bounded-method-type-parameters.rs
@@ -8,6 +8,8 @@
 // option. This file may not be copied, modified, or distributed
 // except according to those terms.
 
+// ignore-compare-mode-nll
+
 // Check that explicit region bounds are allowed on the various
 // nominal types (but not on other types) and that they are type
 // checked.
diff --git a/src/test/ui/compile-fail-migration/regions-bounded-method-type-parameters.stderr b/src/test/ui/compile-fail-migration/regions-bounded-method-type-parameters.stderr
index 8649ca9281f..b8953a1719c 100644
--- a/src/test/ui/compile-fail-migration/regions-bounded-method-type-parameters.stderr
+++ b/src/test/ui/compile-fail-migration/regions-bounded-method-type-parameters.stderr
@@ -1,5 +1,5 @@
 error[E0477]: the type `&'a isize` does not fulfill the required lifetime
-  --> $DIR/regions-bounded-method-type-parameters.rs:22:9
+  --> $DIR/regions-bounded-method-type-parameters.rs:24:9
    |
 LL |     Foo.some_method::<&'a isize>();
    |         ^^^^^^^^^^^
diff --git a/src/test/ui/compile-fail-migration/regions-free-region-ordering-caller.rs b/src/test/ui/compile-fail-migration/regions-free-region-ordering-caller.rs
index 66b16744cc7..ee6cd6c4b15 100644
--- a/src/test/ui/compile-fail-migration/regions-free-region-ordering-caller.rs
+++ b/src/test/ui/compile-fail-migration/regions-free-region-ordering-caller.rs
@@ -8,6 +8,8 @@
 // option. This file may not be copied, modified, or distributed
 // except according to those terms.
 
+// ignore-compare-mode-nll
+
 // Test various ways to construct a pointer with a longer lifetime
 // than the thing it points at and ensure that they result in
 // errors. See also regions-free-region-ordering-callee.rs
diff --git a/src/test/ui/compile-fail-migration/regions-free-region-ordering-caller.stderr b/src/test/ui/compile-fail-migration/regions-free-region-ordering-caller.stderr
index a3645995b5e..96502b69c08 100644
--- a/src/test/ui/compile-fail-migration/regions-free-region-ordering-caller.stderr
+++ b/src/test/ui/compile-fail-migration/regions-free-region-ordering-caller.stderr
@@ -1,5 +1,5 @@
 error[E0623]: lifetime mismatch
-  --> $DIR/regions-free-region-ordering-caller.rs:18:12
+  --> $DIR/regions-free-region-ordering-caller.rs:20:12
    |
 LL | fn call2<'a, 'b>(a: &'a usize, b: &'b usize) {
    |                     ---------     ---------
@@ -9,7 +9,7 @@ LL |     let z: Option<&'b &'a usize> = None;//~ ERROR E0623
    |            ^^^^^^^^^^^^^^^^^^^^^ ...but data from `a` flows into `b` here
 
 error[E0623]: lifetime mismatch
-  --> $DIR/regions-free-region-ordering-caller.rs:23:12
+  --> $DIR/regions-free-region-ordering-caller.rs:25:12
    |
 LL | fn call3<'a, 'b>(a: &'a usize, b: &'b usize) {
    |                     ---------     ---------
@@ -20,7 +20,7 @@ LL |     let z: Option<&'b Paramd<'a>> = None;//~ ERROR E0623
    |            ^^^^^^^^^^^^^^^^^^^^^^ ...but data from `a` flows into `b` here
 
 error[E0623]: lifetime mismatch
-  --> $DIR/regions-free-region-ordering-caller.rs:27:12
+  --> $DIR/regions-free-region-ordering-caller.rs:29:12
    |
 LL | fn call4<'a, 'b>(a: &'a usize, b: &'b usize) {
    |                     ---------     --------- these two types are declared with different lifetimes...
diff --git a/src/test/ui/compile-fail-migration/regions-implied-bounds-projection-gap-1.rs b/src/test/ui/compile-fail-migration/regions-implied-bounds-projection-gap-1.rs
index 65594ab8f2e..01de3ddcdf8 100644
--- a/src/test/ui/compile-fail-migration/regions-implied-bounds-projection-gap-1.rs
+++ b/src/test/ui/compile-fail-migration/regions-implied-bounds-projection-gap-1.rs
@@ -8,6 +8,8 @@
 // option. This file may not be copied, modified, or distributed
 // except according to those terms.
 
+// ignore-compare-mode-nll
+
 // Illustrates the "projection gap": in this test, even though we know
 // that `T::Foo: 'x`, that does not tell us that `T: 'x`, because
 // there might be other ways for the caller of `func` to show that
diff --git a/src/test/ui/compile-fail-migration/regions-implied-bounds-projection-gap-1.stderr b/src/test/ui/compile-fail-migration/regions-implied-bounds-projection-gap-1.stderr
index 41ae515bb9a..e6efb4d5c6b 100644
--- a/src/test/ui/compile-fail-migration/regions-implied-bounds-projection-gap-1.stderr
+++ b/src/test/ui/compile-fail-migration/regions-implied-bounds-projection-gap-1.stderr
@@ -1,5 +1,5 @@
 error[E0309]: the parameter type `T` may not live long enough
-  --> $DIR/regions-implied-bounds-projection-gap-1.rs:26:10
+  --> $DIR/regions-implied-bounds-projection-gap-1.rs:28:10
    |
 LL | fn func<'x, T:Trait1<'x>>(t: &'x T::Foo)
    |             -- help: consider adding an explicit lifetime bound `T: 'x`...
@@ -8,7 +8,7 @@ LL |     wf::<&'x T>();
    |          ^^^^^
    |
 note: ...so that the reference type `&'x T` does not outlive the data it points at
-  --> $DIR/regions-implied-bounds-projection-gap-1.rs:26:10
+  --> $DIR/regions-implied-bounds-projection-gap-1.rs:28:10
    |
 LL |     wf::<&'x T>();
    |          ^^^^^
diff --git a/src/test/ui/compile-fail-migration/regions-infer-contravariance-due-to-decl.rs b/src/test/ui/compile-fail-migration/regions-infer-contravariance-due-to-decl.rs
index 6e1c765724b..a16001b5788 100644
--- a/src/test/ui/compile-fail-migration/regions-infer-contravariance-due-to-decl.rs
+++ b/src/test/ui/compile-fail-migration/regions-infer-contravariance-due-to-decl.rs
@@ -8,6 +8,8 @@
 // option. This file may not be copied, modified, or distributed
 // except according to those terms.
 
+// ignore-compare-mode-nll
+
 // Test that a type which is contravariant with respect to its region
 // parameter yields an error when used in a covariant way.
 //
diff --git a/src/test/ui/compile-fail-migration/regions-infer-contravariance-due-to-decl.stderr b/src/test/ui/compile-fail-migration/regions-infer-contravariance-due-to-decl.stderr
index 10cc253397f..675cbc58583 100644
--- a/src/test/ui/compile-fail-migration/regions-infer-contravariance-due-to-decl.stderr
+++ b/src/test/ui/compile-fail-migration/regions-infer-contravariance-due-to-decl.stderr
@@ -1,5 +1,5 @@
 error[E0623]: lifetime mismatch
-  --> $DIR/regions-infer-contravariance-due-to-decl.rs:35:35
+  --> $DIR/regions-infer-contravariance-due-to-decl.rs:37:35
    |
 LL | fn use_<'short,'long>(c: Contravariant<'short>,
    |                          --------------------- these two types are declared with different lifetimes...
diff --git a/src/test/ui/compile-fail-migration/regions-infer-covariance-due-to-decl.rs b/src/test/ui/compile-fail-migration/regions-infer-covariance-due-to-decl.rs
index 1ab8ba4439b..f794063610a 100644
--- a/src/test/ui/compile-fail-migration/regions-infer-covariance-due-to-decl.rs
+++ b/src/test/ui/compile-fail-migration/regions-infer-covariance-due-to-decl.rs
@@ -8,6 +8,8 @@
 // option. This file may not be copied, modified, or distributed
 // except according to those terms.
 
+// ignore-compare-mode-nll
+
 // Test that a type which is covariant with respect to its region
 // parameter yields an error when used in a contravariant way.
 //
diff --git a/src/test/ui/compile-fail-migration/regions-infer-covariance-due-to-decl.stderr b/src/test/ui/compile-fail-migration/regions-infer-covariance-due-to-decl.stderr
index fd853629f37..6b3673a8002 100644
--- a/src/test/ui/compile-fail-migration/regions-infer-covariance-due-to-decl.stderr
+++ b/src/test/ui/compile-fail-migration/regions-infer-covariance-due-to-decl.stderr
@@ -1,5 +1,5 @@
 error[E0623]: lifetime mismatch
-  --> $DIR/regions-infer-covariance-due-to-decl.rs:32:32
+  --> $DIR/regions-infer-covariance-due-to-decl.rs:34:32
    |
 LL | fn use_<'short,'long>(c: Covariant<'long>,
    |                          ----------------
diff --git a/src/test/ui/compile-fail-migration/regions-outlives-projection-container-wc.rs b/src/test/ui/compile-fail-migration/regions-outlives-projection-container-wc.rs
index 71606ba812f..79300d5176e 100644
--- a/src/test/ui/compile-fail-migration/regions-outlives-projection-container-wc.rs
+++ b/src/test/ui/compile-fail-migration/regions-outlives-projection-container-wc.rs
@@ -8,6 +8,8 @@
 // option. This file may not be copied, modified, or distributed
 // except according to those terms.
 
+// ignore-compare-mode-nll
+
 // Test that we are imposing the requirement that every associated
 // type of a bound that appears in the where clause on a struct must
 // outlive the location in which the type appears, even when the
diff --git a/src/test/ui/compile-fail-migration/regions-outlives-projection-container-wc.stderr b/src/test/ui/compile-fail-migration/regions-outlives-projection-container-wc.stderr
index f0c1c0b3fc2..d0680ecbb99 100644
--- a/src/test/ui/compile-fail-migration/regions-outlives-projection-container-wc.stderr
+++ b/src/test/ui/compile-fail-migration/regions-outlives-projection-container-wc.stderr
@@ -1,16 +1,16 @@
 error[E0491]: in type `&'a WithAssoc<TheType<'b>>`, reference has a longer lifetime than the data it references
-  --> $DIR/regions-outlives-projection-container-wc.rs:44:12
+  --> $DIR/regions-outlives-projection-container-wc.rs:46:12
    |
 LL |     let _: &'a WithAssoc<TheType<'b>> = loop { };
    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^
    |
-note: the pointer is valid for the lifetime 'a as defined on the function body at 38:15
-  --> $DIR/regions-outlives-projection-container-wc.rs:38:15
+note: the pointer is valid for the lifetime 'a as defined on the function body at 40:15
+  --> $DIR/regions-outlives-projection-container-wc.rs:40:15
    |
 LL | fn with_assoc<'a,'b>() {
    |               ^^
-note: but the referenced data is only valid for the lifetime 'b as defined on the function body at 38:18
-  --> $DIR/regions-outlives-projection-container-wc.rs:38:18
+note: but the referenced data is only valid for the lifetime 'b as defined on the function body at 40:18
+  --> $DIR/regions-outlives-projection-container-wc.rs:40:18
    |
 LL | fn with_assoc<'a,'b>() {
    |                  ^^
diff --git a/src/test/ui/compile-fail-migration/regions-outlives-projection-container.rs b/src/test/ui/compile-fail-migration/regions-outlives-projection-container.rs
index 957e56fe510..e4b7a0f82db 100644
--- a/src/test/ui/compile-fail-migration/regions-outlives-projection-container.rs
+++ b/src/test/ui/compile-fail-migration/regions-outlives-projection-container.rs
@@ -8,6 +8,8 @@
 // option. This file may not be copied, modified, or distributed
 // except according to those terms.
 
+// ignore-compare-mode-nll
+
 // Test that we are imposing the requirement that every associated
 // type of a bound that appears in the where clause on a struct must
 // outlive the location in which the type appears. Issue #22246.
diff --git a/src/test/ui/compile-fail-migration/regions-outlives-projection-container.stderr b/src/test/ui/compile-fail-migration/regions-outlives-projection-container.stderr
index ac8d84aa8fe..2a698f9bff5 100644
--- a/src/test/ui/compile-fail-migration/regions-outlives-projection-container.stderr
+++ b/src/test/ui/compile-fail-migration/regions-outlives-projection-container.stderr
@@ -1,67 +1,67 @@
 error[E0491]: in type `&'a WithAssoc<TheType<'b>>`, reference has a longer lifetime than the data it references
-  --> $DIR/regions-outlives-projection-container.rs:48:12
+  --> $DIR/regions-outlives-projection-container.rs:50:12
    |
 LL |     let _: &'a WithAssoc<TheType<'b>> = loop { }; //~ ERROR reference has a longer lifetime
    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^
    |
-note: the pointer is valid for the lifetime 'a as defined on the function body at 42:15
-  --> $DIR/regions-outlives-projection-container.rs:42:15
+note: the pointer is valid for the lifetime 'a as defined on the function body at 44:15
+  --> $DIR/regions-outlives-projection-container.rs:44:15
    |
 LL | fn with_assoc<'a,'b>() {
    |               ^^
-note: but the referenced data is only valid for the lifetime 'b as defined on the function body at 42:18
-  --> $DIR/regions-outlives-projection-container.rs:42:18
+note: but the referenced data is only valid for the lifetime 'b as defined on the function body at 44:18
+  --> $DIR/regions-outlives-projection-container.rs:44:18
    |
 LL | fn with_assoc<'a,'b>() {
    |                  ^^
 
 error[E0491]: in type `&'a WithoutAssoc<TheType<'b>>`, reference has a longer lifetime than the data it references
-  --> $DIR/regions-outlives-projection-container.rs:65:12
+  --> $DIR/regions-outlives-projection-container.rs:67:12
    |
 LL |     let _: &'a WithoutAssoc<TheType<'b>> = loop { }; //~ ERROR reference has a longer lifetime
    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    |
-note: the pointer is valid for the lifetime 'a as defined on the function body at 61:18
-  --> $DIR/regions-outlives-projection-container.rs:61:18
+note: the pointer is valid for the lifetime 'a as defined on the function body at 63:18
+  --> $DIR/regions-outlives-projection-container.rs:63:18
    |
 LL | fn without_assoc<'a,'b>() {
    |                  ^^
-note: but the referenced data is only valid for the lifetime 'b as defined on the function body at 61:21
-  --> $DIR/regions-outlives-projection-container.rs:61:21
+note: but the referenced data is only valid for the lifetime 'b as defined on the function body at 63:21
+  --> $DIR/regions-outlives-projection-container.rs:63:21
    |
 LL | fn without_assoc<'a,'b>() {
    |                     ^^
 
 error[E0491]: in type `&'a WithAssoc<TheType<'b>>`, reference has a longer lifetime than the data it references
-  --> $DIR/regions-outlives-projection-container.rs:73:12
+  --> $DIR/regions-outlives-projection-container.rs:75:12
    |
 LL |     call::<&'a WithAssoc<TheType<'b>>>();
    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^
    |
-note: the pointer is valid for the lifetime 'a as defined on the function body at 68:20
-  --> $DIR/regions-outlives-projection-container.rs:68:20
+note: the pointer is valid for the lifetime 'a as defined on the function body at 70:20
+  --> $DIR/regions-outlives-projection-container.rs:70:20
    |
 LL | fn call_with_assoc<'a,'b>() {
    |                    ^^
-note: but the referenced data is only valid for the lifetime 'b as defined on the function body at 68:23
-  --> $DIR/regions-outlives-projection-container.rs:68:23
+note: but the referenced data is only valid for the lifetime 'b as defined on the function body at 70:23
+  --> $DIR/regions-outlives-projection-container.rs:70:23
    |
 LL | fn call_with_assoc<'a,'b>() {
    |                       ^^
 
 error[E0491]: in type `&'a WithoutAssoc<TheType<'b>>`, reference has a longer lifetime than the data it references
-  --> $DIR/regions-outlives-projection-container.rs:80:12
+  --> $DIR/regions-outlives-projection-container.rs:82:12
    |
 LL |     call::<&'a WithoutAssoc<TheType<'b>>>(); //~ ERROR reference has a longer lifetime
    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    |
-note: the pointer is valid for the lifetime 'a as defined on the function body at 77:23
-  --> $DIR/regions-outlives-projection-container.rs:77:23
+note: the pointer is valid for the lifetime 'a as defined on the function body at 79:23
+  --> $DIR/regions-outlives-projection-container.rs:79:23
    |
 LL | fn call_without_assoc<'a,'b>() {
    |                       ^^
-note: but the referenced data is only valid for the lifetime 'b as defined on the function body at 77:26
-  --> $DIR/regions-outlives-projection-container.rs:77:26
+note: but the referenced data is only valid for the lifetime 'b as defined on the function body at 79:26
+  --> $DIR/regions-outlives-projection-container.rs:79:26
    |
 LL | fn call_without_assoc<'a,'b>() {
    |                          ^^
diff --git a/src/test/ui/compile-fail-migration/regions-variance-contravariant-use-covariant-in-second-position.rs b/src/test/ui/compile-fail-migration/regions-variance-contravariant-use-covariant-in-second-position.rs
index 1dfebd54ec3..a028bae4001 100644
--- a/src/test/ui/compile-fail-migration/regions-variance-contravariant-use-covariant-in-second-position.rs
+++ b/src/test/ui/compile-fail-migration/regions-variance-contravariant-use-covariant-in-second-position.rs
@@ -8,6 +8,8 @@
 // option. This file may not be copied, modified, or distributed
 // except according to those terms.
 
+// ignore-compare-mode-nll
+
 // Test that a type which is covariant with respect to its region
 // parameter yields an error when used in a contravariant way.
 //
diff --git a/src/test/ui/compile-fail-migration/regions-variance-contravariant-use-covariant-in-second-position.stderr b/src/test/ui/compile-fail-migration/regions-variance-contravariant-use-covariant-in-second-position.stderr
index 45105e8714c..fd1d3ab99f3 100644
--- a/src/test/ui/compile-fail-migration/regions-variance-contravariant-use-covariant-in-second-position.stderr
+++ b/src/test/ui/compile-fail-migration/regions-variance-contravariant-use-covariant-in-second-position.stderr
@@ -1,5 +1,5 @@
 error[E0623]: lifetime mismatch
-  --> $DIR/regions-variance-contravariant-use-covariant-in-second-position.rs:35:30
+  --> $DIR/regions-variance-contravariant-use-covariant-in-second-position.rs:37:30
    |
 LL | fn use_<'short,'long>(c: S<'long, 'short>,
    |                          ----------------
diff --git a/src/test/ui/compile-fail-migration/regions-variance-contravariant-use-covariant.rs b/src/test/ui/compile-fail-migration/regions-variance-contravariant-use-covariant.rs
index caf6a86fc0b..84c4e52a9c0 100644
--- a/src/test/ui/compile-fail-migration/regions-variance-contravariant-use-covariant.rs
+++ b/src/test/ui/compile-fail-migration/regions-variance-contravariant-use-covariant.rs
@@ -8,6 +8,8 @@
 // option. This file may not be copied, modified, or distributed
 // except according to those terms.
 
+// ignore-compare-mode-nll
+
 // Test that a type which is covariant with respect to its region
 // parameter yields an error when used in a contravariant way.
 //
diff --git a/src/test/ui/compile-fail-migration/regions-variance-contravariant-use-covariant.stderr b/src/test/ui/compile-fail-migration/regions-variance-contravariant-use-covariant.stderr
index c883691c348..a1e4913aa3a 100644
--- a/src/test/ui/compile-fail-migration/regions-variance-contravariant-use-covariant.stderr
+++ b/src/test/ui/compile-fail-migration/regions-variance-contravariant-use-covariant.stderr
@@ -1,5 +1,5 @@
 error[E0623]: lifetime mismatch
-  --> $DIR/regions-variance-contravariant-use-covariant.rs:33:35
+  --> $DIR/regions-variance-contravariant-use-covariant.rs:35:35
    |
 LL | fn use_<'short,'long>(c: Contravariant<'short>,
    |                          --------------------- these two types are declared with different lifetimes...
diff --git a/src/test/ui/compile-fail-migration/regions-variance-covariant-use-contravariant.rs b/src/test/ui/compile-fail-migration/regions-variance-covariant-use-contravariant.rs
index 60dc3d94a2e..824a442c87d 100644
--- a/src/test/ui/compile-fail-migration/regions-variance-covariant-use-contravariant.rs
+++ b/src/test/ui/compile-fail-migration/regions-variance-covariant-use-contravariant.rs
@@ -8,6 +8,8 @@
 // option. This file may not be copied, modified, or distributed
 // except according to those terms.
 
+// ignore-compare-mode-nll
+
 // Test that a type which is covariant with respect to its region
 // parameter yields an error when used in a contravariant way.
 //
diff --git a/src/test/ui/compile-fail-migration/regions-variance-covariant-use-contravariant.stderr b/src/test/ui/compile-fail-migration/regions-variance-covariant-use-contravariant.stderr
index a448d26f81b..fc1c6c304f8 100644
--- a/src/test/ui/compile-fail-migration/regions-variance-covariant-use-contravariant.stderr
+++ b/src/test/ui/compile-fail-migration/regions-variance-covariant-use-contravariant.stderr
@@ -1,5 +1,5 @@
 error[E0623]: lifetime mismatch
-  --> $DIR/regions-variance-covariant-use-contravariant.rs:33:32
+  --> $DIR/regions-variance-covariant-use-contravariant.rs:35:32
    |
 LL | fn use_<'short,'long>(c: Covariant<'long>,
    |                          ----------------
diff --git a/src/test/ui/compile-fail-migration/regions-variance-invariant-use-contravariant.rs b/src/test/ui/compile-fail-migration/regions-variance-invariant-use-contravariant.rs
index 96478fa5909..9c6db331c01 100644
--- a/src/test/ui/compile-fail-migration/regions-variance-invariant-use-contravariant.rs
+++ b/src/test/ui/compile-fail-migration/regions-variance-invariant-use-contravariant.rs
@@ -8,6 +8,8 @@
 // option. This file may not be copied, modified, or distributed
 // except according to those terms.
 
+// ignore-compare-mode-nll
+
 // Test that an invariant region parameter used in a contravariant way
 // yields an error.
 //
diff --git a/src/test/ui/compile-fail-migration/regions-variance-invariant-use-contravariant.stderr b/src/test/ui/compile-fail-migration/regions-variance-invariant-use-contravariant.stderr
index 1b0cd8e646a..6b67e6b192e 100644
--- a/src/test/ui/compile-fail-migration/regions-variance-invariant-use-contravariant.stderr
+++ b/src/test/ui/compile-fail-migration/regions-variance-invariant-use-contravariant.stderr
@@ -1,5 +1,5 @@
 error[E0623]: lifetime mismatch
-  --> $DIR/regions-variance-invariant-use-contravariant.rs:30:32
+  --> $DIR/regions-variance-invariant-use-contravariant.rs:32:32
    |
 LL | fn use_<'short,'long>(c: Invariant<'long>,
    |                          ----------------
diff --git a/src/test/ui/compile-fail-migration/regions-variance-invariant-use-covariant.rs b/src/test/ui/compile-fail-migration/regions-variance-invariant-use-covariant.rs
index bd944a8b52c..ed393de357a 100644
--- a/src/test/ui/compile-fail-migration/regions-variance-invariant-use-covariant.rs
+++ b/src/test/ui/compile-fail-migration/regions-variance-invariant-use-covariant.rs
@@ -8,6 +8,8 @@
 // option. This file may not be copied, modified, or distributed
 // except according to those terms.
 
+// ignore-compare-mode-nll
+
 // Test that a type which is invariant with respect to its region
 // parameter used in a covariant way yields an error.
 //
diff --git a/src/test/ui/compile-fail-migration/regions-variance-invariant-use-covariant.stderr b/src/test/ui/compile-fail-migration/regions-variance-invariant-use-covariant.stderr
index 34111120a08..5b50f4bd513 100644
--- a/src/test/ui/compile-fail-migration/regions-variance-invariant-use-covariant.stderr
+++ b/src/test/ui/compile-fail-migration/regions-variance-invariant-use-covariant.stderr
@@ -1,13 +1,13 @@
 error[E0308]: mismatched types
-  --> $DIR/regions-variance-invariant-use-covariant.rs:27:33
+  --> $DIR/regions-variance-invariant-use-covariant.rs:29:33
    |
 LL |     let _: Invariant<'static> = c; //~ ERROR mismatched types
    |                                 ^ lifetime mismatch
    |
    = note: expected type `Invariant<'static>`
               found type `Invariant<'b>`
-note: the lifetime 'b as defined on the function body at 21:9...
-  --> $DIR/regions-variance-invariant-use-covariant.rs:21:9
+note: the lifetime 'b as defined on the function body at 23:9...
+  --> $DIR/regions-variance-invariant-use-covariant.rs:23:9
    |
 LL | fn use_<'b>(c: Invariant<'b>) {
    |         ^^
diff --git a/src/test/ui/compile-fail-migration/unboxed-closure-region.rs b/src/test/ui/compile-fail-migration/unboxed-closure-region.rs
index 1c86dda3378..cc635296210 100644
--- a/src/test/ui/compile-fail-migration/unboxed-closure-region.rs
+++ b/src/test/ui/compile-fail-migration/unboxed-closure-region.rs
@@ -8,6 +8,8 @@
 // option. This file may not be copied, modified, or distributed
 // except according to those terms.
 
+// ignore-compare-mode-nll
+
 // Test that an unboxed closure that captures a free variable by
 // reference cannot escape the region of that variable.
 fn main() {
diff --git a/src/test/ui/compile-fail-migration/unboxed-closure-region.stderr b/src/test/ui/compile-fail-migration/unboxed-closure-region.stderr
index 946a52c4673..a838c3608b9 100644
--- a/src/test/ui/compile-fail-migration/unboxed-closure-region.stderr
+++ b/src/test/ui/compile-fail-migration/unboxed-closure-region.stderr
@@ -1,5 +1,5 @@
 error[E0597]: `x` does not live long enough
-  --> $DIR/unboxed-closure-region.rs:16:12
+  --> $DIR/unboxed-closure-region.rs:18:12
    |
 LL |         || x //~ ERROR `x` does not live long enough
    |         -- ^ borrowed value does not live long enough
diff --git a/src/test/ui/compile-fail-migration/unboxed-closures-borrow-conflict.rs b/src/test/ui/compile-fail-migration/unboxed-closures-borrow-conflict.rs
index ad7e6784a0a..734f89e5e0b 100644
--- a/src/test/ui/compile-fail-migration/unboxed-closures-borrow-conflict.rs
+++ b/src/test/ui/compile-fail-migration/unboxed-closures-borrow-conflict.rs
@@ -8,6 +8,8 @@
 // option. This file may not be copied, modified, or distributed
 // except according to those terms.
 
+// ignore-compare-mode-nll
+
 // Test that an unboxed closure that mutates a free variable will
 // cause borrow conflicts.
 
diff --git a/src/test/ui/compile-fail-migration/unboxed-closures-borrow-conflict.stderr b/src/test/ui/compile-fail-migration/unboxed-closures-borrow-conflict.stderr
index cd62d77caed..9bdd1022fd1 100644
--- a/src/test/ui/compile-fail-migration/unboxed-closures-borrow-conflict.stderr
+++ b/src/test/ui/compile-fail-migration/unboxed-closures-borrow-conflict.stderr
@@ -1,5 +1,5 @@
 error[E0503]: cannot use `x` because it was mutably borrowed
-  --> $DIR/unboxed-closures-borrow-conflict.rs:17:9
+  --> $DIR/unboxed-closures-borrow-conflict.rs:19:9
    |
 LL |     let f = || x += 1;
    |             -- borrow of `x` occurs here
diff --git a/src/test/ui/compile-fail-migration/variance-cell-is-invariant.rs b/src/test/ui/compile-fail-migration/variance-cell-is-invariant.rs
index 1ddbcf4ab84..39d87a563e5 100644
--- a/src/test/ui/compile-fail-migration/variance-cell-is-invariant.rs
+++ b/src/test/ui/compile-fail-migration/variance-cell-is-invariant.rs
@@ -8,6 +8,8 @@
 // option. This file may not be copied, modified, or distributed
 // except according to those terms.
 
+// ignore-compare-mode-nll
+
 // Test that Cell is considered invariant with respect to its
 // type.
 
diff --git a/src/test/ui/compile-fail-migration/variance-cell-is-invariant.stderr b/src/test/ui/compile-fail-migration/variance-cell-is-invariant.stderr
index 86f5c1176d9..8fb5d9bf38b 100644
--- a/src/test/ui/compile-fail-migration/variance-cell-is-invariant.stderr
+++ b/src/test/ui/compile-fail-migration/variance-cell-is-invariant.stderr
@@ -1,5 +1,5 @@
 error[E0623]: lifetime mismatch
-  --> $DIR/variance-cell-is-invariant.rs:24:25
+  --> $DIR/variance-cell-is-invariant.rs:26:25
    |
 LL | fn use_<'short,'long>(c: Foo<'short>,
    |                          ----------- these two types are declared with different lifetimes...
diff --git a/src/test/ui/compile-fail-migration/variance-contravariant-arg-trait-match.rs b/src/test/ui/compile-fail-migration/variance-contravariant-arg-trait-match.rs
index 9b6e3c9de3b..96791304d93 100644
--- a/src/test/ui/compile-fail-migration/variance-contravariant-arg-trait-match.rs
+++ b/src/test/ui/compile-fail-migration/variance-contravariant-arg-trait-match.rs
@@ -8,6 +8,8 @@
 // option. This file may not be copied, modified, or distributed
 // except according to those terms.
 
+// ignore-compare-mode-nll
+
 #![allow(dead_code)]
 
 // Test that even when `T` is only used in contravariant position, it
diff --git a/src/test/ui/compile-fail-migration/variance-contravariant-arg-trait-match.stderr b/src/test/ui/compile-fail-migration/variance-contravariant-arg-trait-match.stderr
index 2895a9511ea..282220d1037 100644
--- a/src/test/ui/compile-fail-migration/variance-contravariant-arg-trait-match.stderr
+++ b/src/test/ui/compile-fail-migration/variance-contravariant-arg-trait-match.stderr
@@ -1,37 +1,37 @@
 error[E0308]: mismatched types
-  --> $DIR/variance-contravariant-arg-trait-match.rs:23:5
+  --> $DIR/variance-contravariant-arg-trait-match.rs:25:5
    |
 LL |     impls_get::<G,&'min i32>() //~ ERROR mismatched types
    |     ^^^^^^^^^^^^^^^^^^^^^^^^ lifetime mismatch
    |
    = note: expected type `Get<&'min i32>`
               found type `Get<&'max i32>`
-note: the lifetime 'min as defined on the function body at 20:21...
-  --> $DIR/variance-contravariant-arg-trait-match.rs:20:21
+note: the lifetime 'min as defined on the function body at 22:21...
+  --> $DIR/variance-contravariant-arg-trait-match.rs:22:21
    |
 LL | fn get_min_from_max<'min, 'max, G>()
    |                     ^^^^
-note: ...does not necessarily outlive the lifetime 'max as defined on the function body at 20:27
-  --> $DIR/variance-contravariant-arg-trait-match.rs:20:27
+note: ...does not necessarily outlive the lifetime 'max as defined on the function body at 22:27
+  --> $DIR/variance-contravariant-arg-trait-match.rs:22:27
    |
 LL | fn get_min_from_max<'min, 'max, G>()
    |                           ^^^^
 
 error[E0308]: mismatched types
-  --> $DIR/variance-contravariant-arg-trait-match.rs:31:5
+  --> $DIR/variance-contravariant-arg-trait-match.rs:33:5
    |
 LL |     impls_get::<G,&'max i32>() //~ ERROR mismatched types
    |     ^^^^^^^^^^^^^^^^^^^^^^^^ lifetime mismatch
    |
    = note: expected type `Get<&'max i32>`
               found type `Get<&'min i32>`
-note: the lifetime 'min as defined on the function body at 26:21...
-  --> $DIR/variance-contravariant-arg-trait-match.rs:26:21
+note: the lifetime 'min as defined on the function body at 28:21...
+  --> $DIR/variance-contravariant-arg-trait-match.rs:28:21
    |
 LL | fn get_max_from_min<'min, 'max, G>()
    |                     ^^^^
-note: ...does not necessarily outlive the lifetime 'max as defined on the function body at 26:27
-  --> $DIR/variance-contravariant-arg-trait-match.rs:26:27
+note: ...does not necessarily outlive the lifetime 'max as defined on the function body at 28:27
+  --> $DIR/variance-contravariant-arg-trait-match.rs:28:27
    |
 LL | fn get_max_from_min<'min, 'max, G>()
    |                           ^^^^
diff --git a/src/test/ui/compile-fail-migration/variance-contravariant-self-trait-match.rs b/src/test/ui/compile-fail-migration/variance-contravariant-self-trait-match.rs
index 6d9d1e61fed..c04ba8862c3 100644
--- a/src/test/ui/compile-fail-migration/variance-contravariant-self-trait-match.rs
+++ b/src/test/ui/compile-fail-migration/variance-contravariant-self-trait-match.rs
@@ -8,6 +8,8 @@
 // option. This file may not be copied, modified, or distributed
 // except according to those terms.
 
+// ignore-compare-mode-nll
+
 #![allow(dead_code)]
 
 // Test that even when `Self` is only used in contravariant position, it
diff --git a/src/test/ui/compile-fail-migration/variance-contravariant-self-trait-match.stderr b/src/test/ui/compile-fail-migration/variance-contravariant-self-trait-match.stderr
index bc3f274a861..9e60a70bc16 100644
--- a/src/test/ui/compile-fail-migration/variance-contravariant-self-trait-match.stderr
+++ b/src/test/ui/compile-fail-migration/variance-contravariant-self-trait-match.stderr
@@ -1,37 +1,37 @@
 error[E0308]: mismatched types
-  --> $DIR/variance-contravariant-self-trait-match.rs:23:5
+  --> $DIR/variance-contravariant-self-trait-match.rs:25:5
    |
 LL |     impls_get::<&'min G>(); //~ ERROR mismatched types
    |     ^^^^^^^^^^^^^^^^^^^^ lifetime mismatch
    |
    = note: expected type `Get`
               found type `Get`
-note: the lifetime 'min as defined on the function body at 20:21...
-  --> $DIR/variance-contravariant-self-trait-match.rs:20:21
+note: the lifetime 'min as defined on the function body at 22:21...
+  --> $DIR/variance-contravariant-self-trait-match.rs:22:21
    |
 LL | fn get_min_from_max<'min, 'max, G>()
    |                     ^^^^
-note: ...does not necessarily outlive the lifetime 'max as defined on the function body at 20:27
-  --> $DIR/variance-contravariant-self-trait-match.rs:20:27
+note: ...does not necessarily outlive the lifetime 'max as defined on the function body at 22:27
+  --> $DIR/variance-contravariant-self-trait-match.rs:22:27
    |
 LL | fn get_min_from_max<'min, 'max, G>()
    |                           ^^^^
 
 error[E0308]: mismatched types
-  --> $DIR/variance-contravariant-self-trait-match.rs:32:5
+  --> $DIR/variance-contravariant-self-trait-match.rs:34:5
    |
 LL |     impls_get::<&'max G>(); //~ ERROR mismatched types
    |     ^^^^^^^^^^^^^^^^^^^^ lifetime mismatch
    |
    = note: expected type `Get`
               found type `Get`
-note: the lifetime 'min as defined on the function body at 26:21...
-  --> $DIR/variance-contravariant-self-trait-match.rs:26:21
+note: the lifetime 'min as defined on the function body at 28:21...
+  --> $DIR/variance-contravariant-self-trait-match.rs:28:21
    |
 LL | fn get_max_from_min<'min, 'max, G>()
    |                     ^^^^
-note: ...does not necessarily outlive the lifetime 'max as defined on the function body at 26:27
-  --> $DIR/variance-contravariant-self-trait-match.rs:26:27
+note: ...does not necessarily outlive the lifetime 'max as defined on the function body at 28:27
+  --> $DIR/variance-contravariant-self-trait-match.rs:28:27
    |
 LL | fn get_max_from_min<'min, 'max, G>()
    |                           ^^^^
diff --git a/src/test/ui/compile-fail-migration/variance-covariant-arg-trait-match.rs b/src/test/ui/compile-fail-migration/variance-covariant-arg-trait-match.rs
index c42a845b3b5..fbda62f34fa 100644
--- a/src/test/ui/compile-fail-migration/variance-covariant-arg-trait-match.rs
+++ b/src/test/ui/compile-fail-migration/variance-covariant-arg-trait-match.rs
@@ -8,6 +8,8 @@
 // option. This file may not be copied, modified, or distributed
 // except according to those terms.
 
+// ignore-compare-mode-nll
+
 #![allow(dead_code)]
 
 // Test that even when `T` is only used in covariant position, it
diff --git a/src/test/ui/compile-fail-migration/variance-covariant-arg-trait-match.stderr b/src/test/ui/compile-fail-migration/variance-covariant-arg-trait-match.stderr
index 7692a6646f2..648acc2119f 100644
--- a/src/test/ui/compile-fail-migration/variance-covariant-arg-trait-match.stderr
+++ b/src/test/ui/compile-fail-migration/variance-covariant-arg-trait-match.stderr
@@ -1,37 +1,37 @@
 error[E0308]: mismatched types
-  --> $DIR/variance-covariant-arg-trait-match.rs:24:5
+  --> $DIR/variance-covariant-arg-trait-match.rs:26:5
    |
 LL |     impls_get::<G,&'min i32>() //~ ERROR mismatched types
    |     ^^^^^^^^^^^^^^^^^^^^^^^^ lifetime mismatch
    |
    = note: expected type `Get<&'min i32>`
               found type `Get<&'max i32>`
-note: the lifetime 'min as defined on the function body at 20:21...
-  --> $DIR/variance-covariant-arg-trait-match.rs:20:21
+note: the lifetime 'min as defined on the function body at 22:21...
+  --> $DIR/variance-covariant-arg-trait-match.rs:22:21
    |
 LL | fn get_min_from_max<'min, 'max, G>()
    |                     ^^^^
-note: ...does not necessarily outlive the lifetime 'max as defined on the function body at 20:27
-  --> $DIR/variance-covariant-arg-trait-match.rs:20:27
+note: ...does not necessarily outlive the lifetime 'max as defined on the function body at 22:27
+  --> $DIR/variance-covariant-arg-trait-match.rs:22:27
    |
 LL | fn get_min_from_max<'min, 'max, G>()
    |                           ^^^^
 
 error[E0308]: mismatched types
-  --> $DIR/variance-covariant-arg-trait-match.rs:30:5
+  --> $DIR/variance-covariant-arg-trait-match.rs:32:5
    |
 LL |     impls_get::<G,&'max i32>() //~ ERROR mismatched types
    |     ^^^^^^^^^^^^^^^^^^^^^^^^ lifetime mismatch
    |
    = note: expected type `Get<&'max i32>`
               found type `Get<&'min i32>`
-note: the lifetime 'min as defined on the function body at 27:21...
-  --> $DIR/variance-covariant-arg-trait-match.rs:27:21
+note: the lifetime 'min as defined on the function body at 29:21...
+  --> $DIR/variance-covariant-arg-trait-match.rs:29:21
    |
 LL | fn get_max_from_min<'min, 'max, G>()
    |                     ^^^^
-note: ...does not necessarily outlive the lifetime 'max as defined on the function body at 27:27
-  --> $DIR/variance-covariant-arg-trait-match.rs:27:27
+note: ...does not necessarily outlive the lifetime 'max as defined on the function body at 29:27
+  --> $DIR/variance-covariant-arg-trait-match.rs:29:27
    |
 LL | fn get_max_from_min<'min, 'max, G>()
    |                           ^^^^
diff --git a/src/test/ui/compile-fail-migration/variance-covariant-self-trait-match.rs b/src/test/ui/compile-fail-migration/variance-covariant-self-trait-match.rs
index 25148dfc020..3e0c1da3bca 100644
--- a/src/test/ui/compile-fail-migration/variance-covariant-self-trait-match.rs
+++ b/src/test/ui/compile-fail-migration/variance-covariant-self-trait-match.rs
@@ -8,6 +8,8 @@
 // option. This file may not be copied, modified, or distributed
 // except according to those terms.
 
+// ignore-compare-mode-nll
+
 #![allow(dead_code)]
 
 // Test that even when `Self` is only used in covariant position, it
diff --git a/src/test/ui/compile-fail-migration/variance-covariant-self-trait-match.stderr b/src/test/ui/compile-fail-migration/variance-covariant-self-trait-match.stderr
index aa82b69bbbc..cb8fe0b7890 100644
--- a/src/test/ui/compile-fail-migration/variance-covariant-self-trait-match.stderr
+++ b/src/test/ui/compile-fail-migration/variance-covariant-self-trait-match.stderr
@@ -1,37 +1,37 @@
 error[E0308]: mismatched types
-  --> $DIR/variance-covariant-self-trait-match.rs:24:5
+  --> $DIR/variance-covariant-self-trait-match.rs:26:5
    |
 LL |     impls_get::<&'min G>(); //~ ERROR mismatched types
    |     ^^^^^^^^^^^^^^^^^^^^ lifetime mismatch
    |
    = note: expected type `Get`
               found type `Get`
-note: the lifetime 'min as defined on the function body at 20:21...
-  --> $DIR/variance-covariant-self-trait-match.rs:20:21
+note: the lifetime 'min as defined on the function body at 22:21...
+  --> $DIR/variance-covariant-self-trait-match.rs:22:21
    |
 LL | fn get_min_from_max<'min, 'max, G>()
    |                     ^^^^
-note: ...does not necessarily outlive the lifetime 'max as defined on the function body at 20:27
-  --> $DIR/variance-covariant-self-trait-match.rs:20:27
+note: ...does not necessarily outlive the lifetime 'max as defined on the function body at 22:27
+  --> $DIR/variance-covariant-self-trait-match.rs:22:27
    |
 LL | fn get_min_from_max<'min, 'max, G>()
    |                           ^^^^
 
 error[E0308]: mismatched types
-  --> $DIR/variance-covariant-self-trait-match.rs:30:5
+  --> $DIR/variance-covariant-self-trait-match.rs:32:5
    |
 LL |     impls_get::<&'max G>(); //~ ERROR mismatched types
    |     ^^^^^^^^^^^^^^^^^^^^ lifetime mismatch
    |
    = note: expected type `Get`
               found type `Get`
-note: the lifetime 'min as defined on the function body at 27:21...
-  --> $DIR/variance-covariant-self-trait-match.rs:27:21
+note: the lifetime 'min as defined on the function body at 29:21...
+  --> $DIR/variance-covariant-self-trait-match.rs:29:21
    |
 LL | fn get_max_from_min<'min, 'max, G>()
    |                     ^^^^
-note: ...does not necessarily outlive the lifetime 'max as defined on the function body at 27:27
-  --> $DIR/variance-covariant-self-trait-match.rs:27:27
+note: ...does not necessarily outlive the lifetime 'max as defined on the function body at 29:27
+  --> $DIR/variance-covariant-self-trait-match.rs:29:27
    |
 LL | fn get_max_from_min<'min, 'max, G>()
    |                           ^^^^
diff --git a/src/test/ui/compile-fail-migration/variance-invariant-arg-trait-match.rs b/src/test/ui/compile-fail-migration/variance-invariant-arg-trait-match.rs
index 45fed0b083d..771fcdeb62f 100644
--- a/src/test/ui/compile-fail-migration/variance-invariant-arg-trait-match.rs
+++ b/src/test/ui/compile-fail-migration/variance-invariant-arg-trait-match.rs
@@ -8,6 +8,8 @@
 // option. This file may not be copied, modified, or distributed
 // except according to those terms.
 
+// ignore-compare-mode-nll
+
 #![allow(dead_code)]
 
 trait Get<T> {
diff --git a/src/test/ui/compile-fail-migration/variance-invariant-arg-trait-match.stderr b/src/test/ui/compile-fail-migration/variance-invariant-arg-trait-match.stderr
index fc0d5e486de..3f635495069 100644
--- a/src/test/ui/compile-fail-migration/variance-invariant-arg-trait-match.stderr
+++ b/src/test/ui/compile-fail-migration/variance-invariant-arg-trait-match.stderr
@@ -1,37 +1,37 @@
 error[E0308]: mismatched types
-  --> $DIR/variance-invariant-arg-trait-match.rs:20:5
+  --> $DIR/variance-invariant-arg-trait-match.rs:22:5
    |
 LL |     impls_get::<G,&'min i32>() //~ ERROR mismatched types
    |     ^^^^^^^^^^^^^^^^^^^^^^^^ lifetime mismatch
    |
    = note: expected type `Get<&'min i32>`
               found type `Get<&'max i32>`
-note: the lifetime 'min as defined on the function body at 17:21...
-  --> $DIR/variance-invariant-arg-trait-match.rs:17:21
+note: the lifetime 'min as defined on the function body at 19:21...
+  --> $DIR/variance-invariant-arg-trait-match.rs:19:21
    |
 LL | fn get_min_from_max<'min, 'max, G>()
    |                     ^^^^
-note: ...does not necessarily outlive the lifetime 'max as defined on the function body at 17:27
-  --> $DIR/variance-invariant-arg-trait-match.rs:17:27
+note: ...does not necessarily outlive the lifetime 'max as defined on the function body at 19:27
+  --> $DIR/variance-invariant-arg-trait-match.rs:19:27
    |
 LL | fn get_min_from_max<'min, 'max, G>()
    |                           ^^^^
 
 error[E0308]: mismatched types
-  --> $DIR/variance-invariant-arg-trait-match.rs:26:5
+  --> $DIR/variance-invariant-arg-trait-match.rs:28:5
    |
 LL |     impls_get::<G,&'max i32>() //~ ERROR mismatched types
    |     ^^^^^^^^^^^^^^^^^^^^^^^^ lifetime mismatch
    |
    = note: expected type `Get<&'max i32>`
               found type `Get<&'min i32>`
-note: the lifetime 'min as defined on the function body at 23:21...
-  --> $DIR/variance-invariant-arg-trait-match.rs:23:21
+note: the lifetime 'min as defined on the function body at 25:21...
+  --> $DIR/variance-invariant-arg-trait-match.rs:25:21
    |
 LL | fn get_max_from_min<'min, 'max, G>()
    |                     ^^^^
-note: ...does not necessarily outlive the lifetime 'max as defined on the function body at 23:27
-  --> $DIR/variance-invariant-arg-trait-match.rs:23:27
+note: ...does not necessarily outlive the lifetime 'max as defined on the function body at 25:27
+  --> $DIR/variance-invariant-arg-trait-match.rs:25:27
    |
 LL | fn get_max_from_min<'min, 'max, G>()
    |                           ^^^^
diff --git a/src/test/ui/compile-fail-migration/variance-invariant-self-trait-match.rs b/src/test/ui/compile-fail-migration/variance-invariant-self-trait-match.rs
index fe61dee23bc..57abf6f8979 100644
--- a/src/test/ui/compile-fail-migration/variance-invariant-self-trait-match.rs
+++ b/src/test/ui/compile-fail-migration/variance-invariant-self-trait-match.rs
@@ -8,6 +8,8 @@
 // option. This file may not be copied, modified, or distributed
 // except according to those terms.
 
+// ignore-compare-mode-nll
+
 #![allow(dead_code)]
 
 trait Get {
diff --git a/src/test/ui/compile-fail-migration/variance-invariant-self-trait-match.stderr b/src/test/ui/compile-fail-migration/variance-invariant-self-trait-match.stderr
index b34f027e895..1b864abc4f0 100644
--- a/src/test/ui/compile-fail-migration/variance-invariant-self-trait-match.stderr
+++ b/src/test/ui/compile-fail-migration/variance-invariant-self-trait-match.stderr
@@ -1,37 +1,37 @@
 error[E0308]: mismatched types
-  --> $DIR/variance-invariant-self-trait-match.rs:20:5
+  --> $DIR/variance-invariant-self-trait-match.rs:22:5
    |
 LL |     impls_get::<&'min G>(); //~ ERROR mismatched types
    |     ^^^^^^^^^^^^^^^^^^^^ lifetime mismatch
    |
    = note: expected type `Get`
               found type `Get`
-note: the lifetime 'min as defined on the function body at 17:21...
-  --> $DIR/variance-invariant-self-trait-match.rs:17:21
+note: the lifetime 'min as defined on the function body at 19:21...
+  --> $DIR/variance-invariant-self-trait-match.rs:19:21
    |
 LL | fn get_min_from_max<'min, 'max, G>()
    |                     ^^^^
-note: ...does not necessarily outlive the lifetime 'max as defined on the function body at 17:27
-  --> $DIR/variance-invariant-self-trait-match.rs:17:27
+note: ...does not necessarily outlive the lifetime 'max as defined on the function body at 19:27
+  --> $DIR/variance-invariant-self-trait-match.rs:19:27
    |
 LL | fn get_min_from_max<'min, 'max, G>()
    |                           ^^^^
 
 error[E0308]: mismatched types
-  --> $DIR/variance-invariant-self-trait-match.rs:26:5
+  --> $DIR/variance-invariant-self-trait-match.rs:28:5
    |
 LL |     impls_get::<&'max G>(); //~ ERROR mismatched types
    |     ^^^^^^^^^^^^^^^^^^^^ lifetime mismatch
    |
    = note: expected type `Get`
               found type `Get`
-note: the lifetime 'min as defined on the function body at 23:21...
-  --> $DIR/variance-invariant-self-trait-match.rs:23:21
+note: the lifetime 'min as defined on the function body at 25:21...
+  --> $DIR/variance-invariant-self-trait-match.rs:25:21
    |
 LL | fn get_max_from_min<'min, 'max, G>()
    |                     ^^^^
-note: ...does not necessarily outlive the lifetime 'max as defined on the function body at 23:27
-  --> $DIR/variance-invariant-self-trait-match.rs:23:27
+note: ...does not necessarily outlive the lifetime 'max as defined on the function body at 25:27
+  --> $DIR/variance-invariant-self-trait-match.rs:25:27
    |
 LL | fn get_max_from_min<'min, 'max, G>()
    |                           ^^^^