Rollup merge of #91087 - rukai:fix_test_nll_revisions, r=jackh726
Remove all migrate.nll.stderr files There are a few ui tests that setup the revisions like: ```rust // revisions: migrate nll` // [nll]compile-flags: -Zborrowck=mir ``` However most of them fail to disable the nll compare mode like this: ```rust // ignore-compare-mode-nll ``` This ends up generating confusing files ending in `.migrate.nll.stderr` because the nll compare mode is run on top of the migrate revision. This PR fixes this by adding `ignore-compare-mode-nll` to these tests. I would have just made these tests use compare modes instead but I assume the reason these tests are messing around with revisions instead of just letting the nll compare mode do its thing is to enforce error annotations for both migrate and nll. Relying on just compare modes would only have the error annotations for migrate.
This commit is contained in:
commit
2695e85c09
31 changed files with 115 additions and 219 deletions
|
|
@ -1,5 +1,5 @@
|
|||
error[E0594]: cannot assign to `x`, as it is not declared as mutable
|
||||
--> $DIR/issue-55492-borrowck-migrate-scans-parents.rs:19:46
|
||||
--> $DIR/issue-55492-borrowck-migrate-scans-parents.rs:17:46
|
||||
|
|
||||
LL | pub fn e(x: &'static mut isize) {
|
||||
| - help: consider changing this to be mutable: `mut x`
|
||||
|
|
@ -8,7 +8,7 @@ LL | let mut c1 = |y: &'static mut isize| x = y;
|
|||
| ^^^^^ cannot assign
|
||||
|
||||
error[E0594]: cannot assign to `x`, as it is not declared as mutable
|
||||
--> $DIR/issue-55492-borrowck-migrate-scans-parents.rs:30:50
|
||||
--> $DIR/issue-55492-borrowck-migrate-scans-parents.rs:28:50
|
||||
|
|
||||
LL | pub fn ee(x: &'static mut isize) {
|
||||
| - help: consider changing this to be mutable: `mut x`
|
||||
|
|
@ -17,7 +17,7 @@ LL | let mut c2 = |y: &'static mut isize| x = y;
|
|||
| ^^^^^ cannot assign
|
||||
|
||||
error[E0594]: cannot assign to `x`, as it is not declared as mutable
|
||||
--> $DIR/issue-55492-borrowck-migrate-scans-parents.rs:42:14
|
||||
--> $DIR/issue-55492-borrowck-migrate-scans-parents.rs:40:14
|
||||
|
|
||||
LL | pub fn capture_assign_whole(x: (i32,)) {
|
||||
| - help: consider changing this to be mutable: `mut x`
|
||||
|
|
@ -25,7 +25,7 @@ LL | || { x = (1,); };
|
|||
| ^^^^^^^^ cannot assign
|
||||
|
||||
error[E0594]: cannot assign to `x.0`, as `x` is not declared as mutable
|
||||
--> $DIR/issue-55492-borrowck-migrate-scans-parents.rs:47:14
|
||||
--> $DIR/issue-55492-borrowck-migrate-scans-parents.rs:45:14
|
||||
|
|
||||
LL | pub fn capture_assign_part(x: (i32,)) {
|
||||
| - help: consider changing this to be mutable: `mut x`
|
||||
|
|
@ -33,7 +33,7 @@ LL | || { x.0 = 1; };
|
|||
| ^^^^^^^ cannot assign
|
||||
|
||||
error[E0596]: cannot borrow `x` as mutable, as it is not declared as mutable
|
||||
--> $DIR/issue-55492-borrowck-migrate-scans-parents.rs:52:14
|
||||
--> $DIR/issue-55492-borrowck-migrate-scans-parents.rs:50:14
|
||||
|
|
||||
LL | pub fn capture_reborrow_whole(x: (i32,)) {
|
||||
| - help: consider changing this to be mutable: `mut x`
|
||||
|
|
@ -41,7 +41,7 @@ LL | || { &mut x; };
|
|||
| ^^^^^^ cannot borrow as mutable
|
||||
|
||||
error[E0596]: cannot borrow `x.0` as mutable, as `x` is not declared as mutable
|
||||
--> $DIR/issue-55492-borrowck-migrate-scans-parents.rs:57:14
|
||||
--> $DIR/issue-55492-borrowck-migrate-scans-parents.rs:55:14
|
||||
|
|
||||
LL | pub fn capture_reborrow_part(x: (i32,)) {
|
||||
| - help: consider changing this to be mutable: `mut x`
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
error[E0594]: cannot assign to `x`, as it is not declared as mutable
|
||||
--> $DIR/issue-55492-borrowck-migrate-scans-parents.rs:19:46
|
||||
--> $DIR/issue-55492-borrowck-migrate-scans-parents.rs:17:46
|
||||
|
|
||||
LL | pub fn e(x: &'static mut isize) {
|
||||
| - help: consider changing this to be mutable: `mut x`
|
||||
|
|
@ -8,7 +8,7 @@ LL | let mut c1 = |y: &'static mut isize| x = y;
|
|||
| ^^^^^ cannot assign
|
||||
|
||||
error[E0594]: cannot assign to `x`, as it is not declared as mutable
|
||||
--> $DIR/issue-55492-borrowck-migrate-scans-parents.rs:30:50
|
||||
--> $DIR/issue-55492-borrowck-migrate-scans-parents.rs:28:50
|
||||
|
|
||||
LL | pub fn ee(x: &'static mut isize) {
|
||||
| - help: consider changing this to be mutable: `mut x`
|
||||
|
|
@ -17,7 +17,7 @@ LL | let mut c2 = |y: &'static mut isize| x = y;
|
|||
| ^^^^^ cannot assign
|
||||
|
||||
error[E0594]: cannot assign to `x`, as it is not declared as mutable
|
||||
--> $DIR/issue-55492-borrowck-migrate-scans-parents.rs:42:14
|
||||
--> $DIR/issue-55492-borrowck-migrate-scans-parents.rs:40:14
|
||||
|
|
||||
LL | pub fn capture_assign_whole(x: (i32,)) {
|
||||
| - help: consider changing this to be mutable: `mut x`
|
||||
|
|
@ -25,7 +25,7 @@ LL | || { x = (1,); };
|
|||
| ^^^^^^^^ cannot assign
|
||||
|
||||
error[E0594]: cannot assign to `x.0`, as `x` is not declared as mutable
|
||||
--> $DIR/issue-55492-borrowck-migrate-scans-parents.rs:47:14
|
||||
--> $DIR/issue-55492-borrowck-migrate-scans-parents.rs:45:14
|
||||
|
|
||||
LL | pub fn capture_assign_part(x: (i32,)) {
|
||||
| - help: consider changing this to be mutable: `mut x`
|
||||
|
|
@ -33,7 +33,7 @@ LL | || { x.0 = 1; };
|
|||
| ^^^^^^^ cannot assign
|
||||
|
||||
error[E0596]: cannot borrow `x` as mutable, as it is not declared as mutable
|
||||
--> $DIR/issue-55492-borrowck-migrate-scans-parents.rs:52:14
|
||||
--> $DIR/issue-55492-borrowck-migrate-scans-parents.rs:50:14
|
||||
|
|
||||
LL | pub fn capture_reborrow_whole(x: (i32,)) {
|
||||
| - help: consider changing this to be mutable: `mut x`
|
||||
|
|
@ -41,7 +41,7 @@ LL | || { &mut x; };
|
|||
| ^^^^^^ cannot borrow as mutable
|
||||
|
||||
error[E0596]: cannot borrow `x.0` as mutable, as `x` is not declared as mutable
|
||||
--> $DIR/issue-55492-borrowck-migrate-scans-parents.rs:57:14
|
||||
--> $DIR/issue-55492-borrowck-migrate-scans-parents.rs:55:14
|
||||
|
|
||||
LL | pub fn capture_reborrow_part(x: (i32,)) {
|
||||
| - help: consider changing this to be mutable: `mut x`
|
||||
|
|
|
|||
|
|
@ -3,15 +3,13 @@
|
|||
// looks at some parent.
|
||||
|
||||
// revisions: migrate nll
|
||||
//[nll]compile-flags: -Z borrowck=mir
|
||||
|
||||
// Since we are testing nll (and migration) explicitly as a separate
|
||||
// revisions, don't worry about the --compare-mode=nll on this test.
|
||||
|
||||
// ignore-compare-mode-nll
|
||||
|
||||
//[nll]compile-flags: -Z borrowck=mir
|
||||
|
||||
|
||||
// transcribed from borrowck-closures-unique.rs
|
||||
mod borrowck_closures_unique {
|
||||
pub fn e(x: &'static mut isize) {
|
||||
|
|
|
|||
|
|
@ -1,32 +0,0 @@
|
|||
error[E0506]: cannot assign to `greeting` because it is borrowed
|
||||
--> $DIR/issue-58776-borrowck-scans-children.rs:11:5
|
||||
|
|
||||
LL | let res = (|| (|| &greeting)())();
|
||||
| -- -------- borrow occurs due to use in closure
|
||||
| |
|
||||
| borrow of `greeting` occurs here
|
||||
LL |
|
||||
LL | greeting = "DEALLOCATED".to_string();
|
||||
| ^^^^^^^^ assignment to borrowed `greeting` occurs here
|
||||
...
|
||||
LL | println!("thread result: {:?}", res);
|
||||
| --- borrow later used here
|
||||
|
||||
error[E0505]: cannot move out of `greeting` because it is borrowed
|
||||
--> $DIR/issue-58776-borrowck-scans-children.rs:14:10
|
||||
|
|
||||
LL | let res = (|| (|| &greeting)())();
|
||||
| -- -------- borrow occurs due to use in closure
|
||||
| |
|
||||
| borrow of `greeting` occurs here
|
||||
...
|
||||
LL | drop(greeting);
|
||||
| ^^^^^^^^ move out of `greeting` occurs here
|
||||
...
|
||||
LL | println!("thread result: {:?}", res);
|
||||
| --- borrow later used here
|
||||
|
||||
error: aborting due to 2 previous errors
|
||||
|
||||
Some errors have detailed explanations: E0505, E0506.
|
||||
For more information about an error, try `rustc --explain E0505`.
|
||||
|
|
@ -1,5 +1,5 @@
|
|||
error[E0161]: cannot move a value of type dyn Bar: the size of dyn Bar cannot be statically determined
|
||||
--> $DIR/E0161.rs:29:5
|
||||
--> $DIR/E0161.rs:32:5
|
||||
|
|
||||
LL | x.f();
|
||||
| ^^^^^
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
error[E0161]: cannot move a value of type dyn Bar: the size of dyn Bar cannot be statically determined
|
||||
--> $DIR/E0161.rs:29:5
|
||||
--> $DIR/E0161.rs:32:5
|
||||
|
|
||||
LL | x.f();
|
||||
| ^^^^^
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
error[E0161]: cannot move a value of type dyn Bar: the size of dyn Bar cannot be statically determined
|
||||
--> $DIR/E0161.rs:29:5
|
||||
--> $DIR/E0161.rs:32:5
|
||||
|
|
||||
LL | x.f();
|
||||
| ^^^^^
|
||||
|
|
|
|||
|
|
@ -1,5 +1,3 @@
|
|||
// ignore-compare-mode-nll
|
||||
|
||||
// Check that E0161 is a hard error in all possible configurations that might
|
||||
// affect it.
|
||||
|
||||
|
|
@ -13,6 +11,11 @@
|
|||
//[zflagsul] check-pass
|
||||
//[editionul] check-pass
|
||||
|
||||
// Since we are testing nll (and migration) explicitly as a separate
|
||||
// revisions, don't worry about the --compare-mode=nll on this test.
|
||||
|
||||
// ignore-compare-mode-nll
|
||||
|
||||
#![allow(incomplete_features)]
|
||||
#![cfg_attr(nll, feature(nll))]
|
||||
#![cfg_attr(nllul, feature(nll))]
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
error[E0161]: cannot move a value of type dyn Bar: the size of dyn Bar cannot be statically determined
|
||||
--> $DIR/E0161.rs:29:5
|
||||
--> $DIR/E0161.rs:32:5
|
||||
|
|
||||
LL | x.f();
|
||||
| ^^^^^
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
error: implementation of `Parser` is not general enough
|
||||
--> $DIR/issue-71955.rs:52:5
|
||||
--> $DIR/issue-71955.rs:57:5
|
||||
|
|
||||
LL | foo(bar, "string", |s| s.len() == 5);
|
||||
| ^^^ implementation of `Parser` is not general enough
|
||||
|
|
@ -8,7 +8,7 @@ LL | foo(bar, "string", |s| s.len() == 5);
|
|||
= note: ...but it actually implements `Parser<'1>`, for some specific lifetime `'1`
|
||||
|
||||
error: implementation of `Parser` is not general enough
|
||||
--> $DIR/issue-71955.rs:52:5
|
||||
--> $DIR/issue-71955.rs:57:5
|
||||
|
|
||||
LL | foo(bar, "string", |s| s.len() == 5);
|
||||
| ^^^ implementation of `Parser` is not general enough
|
||||
|
|
@ -17,7 +17,7 @@ LL | foo(bar, "string", |s| s.len() == 5);
|
|||
= note: ...but it actually implements `Parser<'1>`, for some specific lifetime `'1`
|
||||
|
||||
error: implementation of `Parser` is not general enough
|
||||
--> $DIR/issue-71955.rs:52:5
|
||||
--> $DIR/issue-71955.rs:57:5
|
||||
|
|
||||
LL | foo(bar, "string", |s| s.len() == 5);
|
||||
| ^^^ implementation of `Parser` is not general enough
|
||||
|
|
@ -26,7 +26,7 @@ LL | foo(bar, "string", |s| s.len() == 5);
|
|||
= note: ...but it actually implements `Parser<'1>`, for some specific lifetime `'1`
|
||||
|
||||
error: implementation of `Parser` is not general enough
|
||||
--> $DIR/issue-71955.rs:52:5
|
||||
--> $DIR/issue-71955.rs:57:5
|
||||
|
|
||||
LL | foo(bar, "string", |s| s.len() == 5);
|
||||
| ^^^ implementation of `Parser` is not general enough
|
||||
|
|
@ -35,7 +35,7 @@ LL | foo(bar, "string", |s| s.len() == 5);
|
|||
= note: ...but it actually implements `Parser<'1>`, for some specific lifetime `'1`
|
||||
|
||||
error: implementation of `Parser` is not general enough
|
||||
--> $DIR/issue-71955.rs:52:5
|
||||
--> $DIR/issue-71955.rs:57:5
|
||||
|
|
||||
LL | foo(bar, "string", |s| s.len() == 5);
|
||||
| ^^^ implementation of `Parser` is not general enough
|
||||
|
|
@ -44,7 +44,7 @@ LL | foo(bar, "string", |s| s.len() == 5);
|
|||
= note: ...but it actually implements `Parser<'1>`, for some specific lifetime `'1`
|
||||
|
||||
error: implementation of `Parser` is not general enough
|
||||
--> $DIR/issue-71955.rs:58:5
|
||||
--> $DIR/issue-71955.rs:63:5
|
||||
|
|
||||
LL | foo(baz, "string", |s| s.0.len() == 5);
|
||||
| ^^^ implementation of `Parser` is not general enough
|
||||
|
|
@ -53,7 +53,7 @@ LL | foo(baz, "string", |s| s.0.len() == 5);
|
|||
= note: ...but it actually implements `Parser<'1>`, for some specific lifetime `'1`
|
||||
|
||||
error: implementation of `Parser` is not general enough
|
||||
--> $DIR/issue-71955.rs:58:5
|
||||
--> $DIR/issue-71955.rs:63:5
|
||||
|
|
||||
LL | foo(baz, "string", |s| s.0.len() == 5);
|
||||
| ^^^ implementation of `Parser` is not general enough
|
||||
|
|
@ -62,7 +62,7 @@ LL | foo(baz, "string", |s| s.0.len() == 5);
|
|||
= note: ...but it actually implements `Parser<'1>`, for some specific lifetime `'1`
|
||||
|
||||
error: implementation of `Parser` is not general enough
|
||||
--> $DIR/issue-71955.rs:58:5
|
||||
--> $DIR/issue-71955.rs:63:5
|
||||
|
|
||||
LL | foo(baz, "string", |s| s.0.len() == 5);
|
||||
| ^^^ implementation of `Parser` is not general enough
|
||||
|
|
@ -71,7 +71,7 @@ LL | foo(baz, "string", |s| s.0.len() == 5);
|
|||
= note: ...but it actually implements `Parser<'1>`, for some specific lifetime `'1`
|
||||
|
||||
error: implementation of `Parser` is not general enough
|
||||
--> $DIR/issue-71955.rs:58:5
|
||||
--> $DIR/issue-71955.rs:63:5
|
||||
|
|
||||
LL | foo(baz, "string", |s| s.0.len() == 5);
|
||||
| ^^^ implementation of `Parser` is not general enough
|
||||
|
|
@ -80,7 +80,7 @@ LL | foo(baz, "string", |s| s.0.len() == 5);
|
|||
= note: ...but it actually implements `Parser<'1>`, for some specific lifetime `'1`
|
||||
|
||||
error: implementation of `Parser` is not general enough
|
||||
--> $DIR/issue-71955.rs:58:5
|
||||
--> $DIR/issue-71955.rs:63:5
|
||||
|
|
||||
LL | foo(baz, "string", |s| s.0.len() == 5);
|
||||
| ^^^ implementation of `Parser` is not general enough
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
error: fatal error triggered by #[rustc_error]
|
||||
--> $DIR/issue-71955.rs:42:1
|
||||
--> $DIR/issue-71955.rs:47:1
|
||||
|
|
||||
LL | fn main() {
|
||||
| ^^^^^^^^^
|
||||
|
|
|
|||
|
|
@ -3,6 +3,11 @@
|
|||
// [nll]compile-flags: -Zborrowck=mir
|
||||
// check-fail
|
||||
|
||||
// Since we are testing nll (and migration) explicitly as a separate
|
||||
// revisions, don't worry about the --compare-mode=nll on this test.
|
||||
|
||||
// ignore-compare-mode-nll
|
||||
|
||||
#![feature(rustc_attrs)]
|
||||
|
||||
trait Parser<'s> {
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
error[E0599]: the method `filterx` exists for struct `Map<Repeat, [closure@$DIR/issue-30786.rs:127:27: 127:36]>`, but its trait bounds were not satisfied
|
||||
--> $DIR/issue-30786.rs:128:22
|
||||
error[E0599]: the method `filterx` exists for struct `Map<Repeat, [closure@$DIR/issue-30786.rs:126:27: 126:36]>`, but its trait bounds were not satisfied
|
||||
--> $DIR/issue-30786.rs:127:22
|
||||
|
|
||||
LL | pub struct Map<S, F> {
|
||||
| --------------------
|
||||
|
|
@ -8,19 +8,19 @@ LL | pub struct Map<S, F> {
|
|||
| doesn't satisfy `_: StreamExt`
|
||||
...
|
||||
LL | let filter = map.filterx(|x: &_| true);
|
||||
| ^^^^^^^ method cannot be called on `Map<Repeat, [closure@$DIR/issue-30786.rs:127:27: 127:36]>` due to unsatisfied trait bounds
|
||||
| ^^^^^^^ method cannot be called on `Map<Repeat, [closure@$DIR/issue-30786.rs:126:27: 126:36]>` due to unsatisfied trait bounds
|
||||
|
|
||||
note: the following trait bounds were not satisfied because of the requirements of the implementation of `StreamExt` for `_`:
|
||||
`&'a mut Map<Repeat, [closure@$DIR/issue-30786.rs:127:27: 127:36]>: Stream`
|
||||
`&'a mut &Map<Repeat, [closure@$DIR/issue-30786.rs:127:27: 127:36]>: Stream`
|
||||
`&'a mut &mut Map<Repeat, [closure@$DIR/issue-30786.rs:127:27: 127:36]>: Stream`
|
||||
--> $DIR/issue-30786.rs:106:9
|
||||
`&'a mut Map<Repeat, [closure@$DIR/issue-30786.rs:126:27: 126:36]>: Stream`
|
||||
`&'a mut &Map<Repeat, [closure@$DIR/issue-30786.rs:126:27: 126:36]>: Stream`
|
||||
`&'a mut &mut Map<Repeat, [closure@$DIR/issue-30786.rs:126:27: 126:36]>: Stream`
|
||||
--> $DIR/issue-30786.rs:105:9
|
||||
|
|
||||
LL | impl<T> StreamExt for T where for<'a> &'a mut T: Stream {}
|
||||
| ^^^^^^^^^ ^
|
||||
|
||||
error[E0599]: the method `countx` exists for struct `Filter<Map<Repeat, for<'r> fn(&'r u64) -> &'r u64 {identity::<u64>}>, [closure@$DIR/issue-30786.rs:140:30: 140:42]>`, but its trait bounds were not satisfied
|
||||
--> $DIR/issue-30786.rs:141:24
|
||||
error[E0599]: the method `countx` exists for struct `Filter<Map<Repeat, for<'r> fn(&'r u64) -> &'r u64 {identity::<u64>}>, [closure@$DIR/issue-30786.rs:139:30: 139:42]>`, but its trait bounds were not satisfied
|
||||
--> $DIR/issue-30786.rs:140:24
|
||||
|
|
||||
LL | pub struct Filter<S, F> {
|
||||
| -----------------------
|
||||
|
|
@ -29,13 +29,13 @@ LL | pub struct Filter<S, F> {
|
|||
| doesn't satisfy `_: StreamExt`
|
||||
...
|
||||
LL | let count = filter.countx();
|
||||
| ^^^^^^ method cannot be called on `Filter<Map<Repeat, for<'r> fn(&'r u64) -> &'r u64 {identity::<u64>}>, [closure@$DIR/issue-30786.rs:140:30: 140:42]>` due to unsatisfied trait bounds
|
||||
| ^^^^^^ method cannot be called on `Filter<Map<Repeat, for<'r> fn(&'r u64) -> &'r u64 {identity::<u64>}>, [closure@$DIR/issue-30786.rs:139:30: 139:42]>` due to unsatisfied trait bounds
|
||||
|
|
||||
note: the following trait bounds were not satisfied because of the requirements of the implementation of `StreamExt` for `_`:
|
||||
`&'a mut Filter<Map<Repeat, for<'r> fn(&'r u64) -> &'r u64 {identity::<u64>}>, [closure@$DIR/issue-30786.rs:140:30: 140:42]>: Stream`
|
||||
`&'a mut &Filter<Map<Repeat, for<'r> fn(&'r u64) -> &'r u64 {identity::<u64>}>, [closure@$DIR/issue-30786.rs:140:30: 140:42]>: Stream`
|
||||
`&'a mut &mut Filter<Map<Repeat, for<'r> fn(&'r u64) -> &'r u64 {identity::<u64>}>, [closure@$DIR/issue-30786.rs:140:30: 140:42]>: Stream`
|
||||
--> $DIR/issue-30786.rs:106:9
|
||||
`&'a mut Filter<Map<Repeat, for<'r> fn(&'r u64) -> &'r u64 {identity::<u64>}>, [closure@$DIR/issue-30786.rs:139:30: 139:42]>: Stream`
|
||||
`&'a mut &Filter<Map<Repeat, for<'r> fn(&'r u64) -> &'r u64 {identity::<u64>}>, [closure@$DIR/issue-30786.rs:139:30: 139:42]>: Stream`
|
||||
`&'a mut &mut Filter<Map<Repeat, for<'r> fn(&'r u64) -> &'r u64 {identity::<u64>}>, [closure@$DIR/issue-30786.rs:139:30: 139:42]>: Stream`
|
||||
--> $DIR/issue-30786.rs:105:9
|
||||
|
|
||||
LL | impl<T> StreamExt for T where for<'a> &'a mut T: Stream {}
|
||||
| ^^^^^^^^^ ^
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
error[E0599]: the method `filterx` exists for struct `Map<Repeat, [closure@$DIR/issue-30786.rs:127:27: 127:36]>`, but its trait bounds were not satisfied
|
||||
--> $DIR/issue-30786.rs:128:22
|
||||
error[E0599]: the method `filterx` exists for struct `Map<Repeat, [closure@$DIR/issue-30786.rs:126:27: 126:36]>`, but its trait bounds were not satisfied
|
||||
--> $DIR/issue-30786.rs:127:22
|
||||
|
|
||||
LL | pub struct Map<S, F> {
|
||||
| --------------------
|
||||
|
|
@ -8,19 +8,19 @@ LL | pub struct Map<S, F> {
|
|||
| doesn't satisfy `_: StreamExt`
|
||||
...
|
||||
LL | let filter = map.filterx(|x: &_| true);
|
||||
| ^^^^^^^ method cannot be called on `Map<Repeat, [closure@$DIR/issue-30786.rs:127:27: 127:36]>` due to unsatisfied trait bounds
|
||||
| ^^^^^^^ method cannot be called on `Map<Repeat, [closure@$DIR/issue-30786.rs:126:27: 126:36]>` due to unsatisfied trait bounds
|
||||
|
|
||||
note: the following trait bounds were not satisfied because of the requirements of the implementation of `StreamExt` for `_`:
|
||||
`&'a mut Map<Repeat, [closure@$DIR/issue-30786.rs:127:27: 127:36]>: Stream`
|
||||
`&'a mut &Map<Repeat, [closure@$DIR/issue-30786.rs:127:27: 127:36]>: Stream`
|
||||
`&'a mut &mut Map<Repeat, [closure@$DIR/issue-30786.rs:127:27: 127:36]>: Stream`
|
||||
--> $DIR/issue-30786.rs:106:9
|
||||
`&'a mut Map<Repeat, [closure@$DIR/issue-30786.rs:126:27: 126:36]>: Stream`
|
||||
`&'a mut &Map<Repeat, [closure@$DIR/issue-30786.rs:126:27: 126:36]>: Stream`
|
||||
`&'a mut &mut Map<Repeat, [closure@$DIR/issue-30786.rs:126:27: 126:36]>: Stream`
|
||||
--> $DIR/issue-30786.rs:105:9
|
||||
|
|
||||
LL | impl<T> StreamExt for T where for<'a> &'a mut T: Stream {}
|
||||
| ^^^^^^^^^ ^
|
||||
|
||||
error[E0599]: the method `countx` exists for struct `Filter<Map<Repeat, for<'r> fn(&'r u64) -> &'r u64 {identity::<u64>}>, [closure@$DIR/issue-30786.rs:140:30: 140:42]>`, but its trait bounds were not satisfied
|
||||
--> $DIR/issue-30786.rs:141:24
|
||||
error[E0599]: the method `countx` exists for struct `Filter<Map<Repeat, for<'r> fn(&'r u64) -> &'r u64 {identity::<u64>}>, [closure@$DIR/issue-30786.rs:139:30: 139:42]>`, but its trait bounds were not satisfied
|
||||
--> $DIR/issue-30786.rs:140:24
|
||||
|
|
||||
LL | pub struct Filter<S, F> {
|
||||
| -----------------------
|
||||
|
|
@ -29,13 +29,13 @@ LL | pub struct Filter<S, F> {
|
|||
| doesn't satisfy `_: StreamExt`
|
||||
...
|
||||
LL | let count = filter.countx();
|
||||
| ^^^^^^ method cannot be called on `Filter<Map<Repeat, for<'r> fn(&'r u64) -> &'r u64 {identity::<u64>}>, [closure@$DIR/issue-30786.rs:140:30: 140:42]>` due to unsatisfied trait bounds
|
||||
| ^^^^^^ method cannot be called on `Filter<Map<Repeat, for<'r> fn(&'r u64) -> &'r u64 {identity::<u64>}>, [closure@$DIR/issue-30786.rs:139:30: 139:42]>` due to unsatisfied trait bounds
|
||||
|
|
||||
note: the following trait bounds were not satisfied because of the requirements of the implementation of `StreamExt` for `_`:
|
||||
`&'a mut Filter<Map<Repeat, for<'r> fn(&'r u64) -> &'r u64 {identity::<u64>}>, [closure@$DIR/issue-30786.rs:140:30: 140:42]>: Stream`
|
||||
`&'a mut &Filter<Map<Repeat, for<'r> fn(&'r u64) -> &'r u64 {identity::<u64>}>, [closure@$DIR/issue-30786.rs:140:30: 140:42]>: Stream`
|
||||
`&'a mut &mut Filter<Map<Repeat, for<'r> fn(&'r u64) -> &'r u64 {identity::<u64>}>, [closure@$DIR/issue-30786.rs:140:30: 140:42]>: Stream`
|
||||
--> $DIR/issue-30786.rs:106:9
|
||||
`&'a mut Filter<Map<Repeat, for<'r> fn(&'r u64) -> &'r u64 {identity::<u64>}>, [closure@$DIR/issue-30786.rs:139:30: 139:42]>: Stream`
|
||||
`&'a mut &Filter<Map<Repeat, for<'r> fn(&'r u64) -> &'r u64 {identity::<u64>}>, [closure@$DIR/issue-30786.rs:139:30: 139:42]>: Stream`
|
||||
`&'a mut &mut Filter<Map<Repeat, for<'r> fn(&'r u64) -> &'r u64 {identity::<u64>}>, [closure@$DIR/issue-30786.rs:139:30: 139:42]>: Stream`
|
||||
--> $DIR/issue-30786.rs:105:9
|
||||
|
|
||||
LL | impl<T> StreamExt for T where for<'a> &'a mut T: Stream {}
|
||||
| ^^^^^^^^^ ^
|
||||
|
|
|
|||
|
|
@ -7,6 +7,7 @@
|
|||
// through again.
|
||||
|
||||
// revisions: migrate nll
|
||||
//[nll]compile-flags: -Z borrowck=mir
|
||||
|
||||
// Since we are testing nll (and migration) explicitly as a separate
|
||||
// revisions, don't worry about the --compare-mode=nll on this test.
|
||||
|
|
@ -14,8 +15,6 @@
|
|||
// ignore-compare-mode-nll
|
||||
// ignore-compare-mode-polonius
|
||||
|
||||
//[nll]compile-flags: -Z borrowck=mir
|
||||
|
||||
pub trait Stream {
|
||||
type Item;
|
||||
fn next(self) -> Option<Self::Item>;
|
||||
|
|
|
|||
|
|
@ -1,15 +0,0 @@
|
|||
error: lifetime may not live long enough
|
||||
--> $DIR/regions-assoc-type-in-supertrait-outlives-container.rs:39:12
|
||||
|
|
||||
LL | fn with_assoc<'a,'b>() {
|
||||
| -- -- lifetime `'b` defined here
|
||||
| |
|
||||
| lifetime `'a` defined here
|
||||
...
|
||||
LL | let _: &'a WithAssoc<TheType<'b>> = loop { };
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ type annotation requires that `'b` must outlive `'a`
|
||||
|
|
||||
= help: consider adding the following bound: `'b: 'a`
|
||||
|
||||
error: aborting due to previous error
|
||||
|
||||
|
|
@ -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:39:12
|
||||
--> $DIR/regions-assoc-type-in-supertrait-outlives-container.rs:44:12
|
||||
|
|
||||
LL | let _: &'a WithAssoc<TheType<'b>> = loop { };
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
note: the pointer is valid for the lifetime `'a` as defined here
|
||||
--> $DIR/regions-assoc-type-in-supertrait-outlives-container.rs:33:15
|
||||
--> $DIR/regions-assoc-type-in-supertrait-outlives-container.rs:38:15
|
||||
|
|
||||
LL | fn with_assoc<'a,'b>() {
|
||||
| ^^
|
||||
note: but the referenced data is only valid for the lifetime `'b` as defined here
|
||||
--> $DIR/regions-assoc-type-in-supertrait-outlives-container.rs:33:18
|
||||
--> $DIR/regions-assoc-type-in-supertrait-outlives-container.rs:38:18
|
||||
|
|
||||
LL | fn with_assoc<'a,'b>() {
|
||||
| ^^
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
error: lifetime may not live long enough
|
||||
--> $DIR/regions-assoc-type-in-supertrait-outlives-container.rs:39:12
|
||||
--> $DIR/regions-assoc-type-in-supertrait-outlives-container.rs:44:12
|
||||
|
|
||||
LL | fn with_assoc<'a,'b>() {
|
||||
| -- -- lifetime `'b` defined here
|
||||
|
|
|
|||
|
|
@ -6,6 +6,11 @@
|
|||
// revisions: migrate nll
|
||||
//[nll]compile-flags: -Z borrowck=mir
|
||||
|
||||
// Since we are testing nll (and migration) explicitly as a separate
|
||||
// revisions, don't worry about the --compare-mode=nll on this test.
|
||||
|
||||
// ignore-compare-mode-nll
|
||||
|
||||
#![allow(dead_code)]
|
||||
|
||||
pub trait TheTrait {
|
||||
|
|
|
|||
|
|
@ -1,39 +0,0 @@
|
|||
error: lifetime may not live long enough
|
||||
--> $DIR/regions-free-region-ordering-caller.rs:11:12
|
||||
|
|
||||
LL | fn call2<'a, 'b>(a: &'a usize, b: &'b usize) {
|
||||
| -- -- lifetime `'b` defined here
|
||||
| |
|
||||
| lifetime `'a` defined here
|
||||
LL | let z: Option<&'b &'a usize> = None;
|
||||
| ^^^^^^^^^^^^^^^^^^^^^ type annotation requires that `'a` must outlive `'b`
|
||||
|
|
||||
= help: consider adding the following bound: `'a: 'b`
|
||||
|
||||
error: lifetime may not live long enough
|
||||
--> $DIR/regions-free-region-ordering-caller.rs:17:12
|
||||
|
|
||||
LL | fn call3<'a, 'b>(a: &'a usize, b: &'b usize) {
|
||||
| -- -- lifetime `'b` defined here
|
||||
| |
|
||||
| lifetime `'a` defined here
|
||||
LL | let y: Paramd<'a> = Paramd { x: a };
|
||||
LL | let z: Option<&'b Paramd<'a>> = None;
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^ type annotation requires that `'a` must outlive `'b`
|
||||
|
|
||||
= help: consider adding the following bound: `'a: 'b`
|
||||
|
||||
error: lifetime may not live long enough
|
||||
--> $DIR/regions-free-region-ordering-caller.rs:22:12
|
||||
|
|
||||
LL | fn call4<'a, 'b>(a: &'a usize, b: &'b usize) {
|
||||
| -- -- lifetime `'b` defined here
|
||||
| |
|
||||
| lifetime `'a` defined here
|
||||
LL | let z: Option<&'a &'b usize> = None;
|
||||
| ^^^^^^^^^^^^^^^^^^^^^ type annotation requires that `'b` must outlive `'a`
|
||||
|
|
||||
= help: consider adding the following bound: `'b: 'a`
|
||||
|
||||
error: aborting due to 3 previous errors
|
||||
|
||||
|
|
@ -1,50 +1,50 @@
|
|||
error[E0491]: in type `&'b &'a usize`, reference has a longer lifetime than the data it references
|
||||
--> $DIR/regions-free-region-ordering-caller.rs:11:12
|
||||
--> $DIR/regions-free-region-ordering-caller.rs:16:12
|
||||
|
|
||||
LL | let z: Option<&'b &'a usize> = None;
|
||||
| ^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
note: the pointer is valid for the lifetime `'b` as defined here
|
||||
--> $DIR/regions-free-region-ordering-caller.rs:10:14
|
||||
--> $DIR/regions-free-region-ordering-caller.rs:15:14
|
||||
|
|
||||
LL | fn call2<'a, 'b>(a: &'a usize, b: &'b usize) {
|
||||
| ^^
|
||||
note: but the referenced data is only valid for the lifetime `'a` as defined here
|
||||
--> $DIR/regions-free-region-ordering-caller.rs:10:10
|
||||
--> $DIR/regions-free-region-ordering-caller.rs:15:10
|
||||
|
|
||||
LL | fn call2<'a, 'b>(a: &'a usize, b: &'b usize) {
|
||||
| ^^
|
||||
|
||||
error[E0491]: in type `&'b Paramd<'a>`, reference has a longer lifetime than the data it references
|
||||
--> $DIR/regions-free-region-ordering-caller.rs:17:12
|
||||
--> $DIR/regions-free-region-ordering-caller.rs:22:12
|
||||
|
|
||||
LL | let z: Option<&'b Paramd<'a>> = None;
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
note: the pointer is valid for the lifetime `'b` as defined here
|
||||
--> $DIR/regions-free-region-ordering-caller.rs:15:14
|
||||
--> $DIR/regions-free-region-ordering-caller.rs:20:14
|
||||
|
|
||||
LL | fn call3<'a, 'b>(a: &'a usize, b: &'b usize) {
|
||||
| ^^
|
||||
note: but the referenced data is only valid for the lifetime `'a` as defined here
|
||||
--> $DIR/regions-free-region-ordering-caller.rs:15:10
|
||||
--> $DIR/regions-free-region-ordering-caller.rs:20:10
|
||||
|
|
||||
LL | fn call3<'a, 'b>(a: &'a usize, b: &'b usize) {
|
||||
| ^^
|
||||
|
||||
error[E0491]: in type `&'a &'b usize`, reference has a longer lifetime than the data it references
|
||||
--> $DIR/regions-free-region-ordering-caller.rs:22:12
|
||||
--> $DIR/regions-free-region-ordering-caller.rs:27:12
|
||||
|
|
||||
LL | let z: Option<&'a &'b usize> = None;
|
||||
| ^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
note: the pointer is valid for the lifetime `'a` as defined here
|
||||
--> $DIR/regions-free-region-ordering-caller.rs:21:10
|
||||
--> $DIR/regions-free-region-ordering-caller.rs:26:10
|
||||
|
|
||||
LL | fn call4<'a, 'b>(a: &'a usize, b: &'b usize) {
|
||||
| ^^
|
||||
note: but the referenced data is only valid for the lifetime `'b` as defined here
|
||||
--> $DIR/regions-free-region-ordering-caller.rs:21:14
|
||||
--> $DIR/regions-free-region-ordering-caller.rs:26:14
|
||||
|
|
||||
LL | fn call4<'a, 'b>(a: &'a usize, b: &'b usize) {
|
||||
| ^^
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
error: lifetime may not live long enough
|
||||
--> $DIR/regions-free-region-ordering-caller.rs:11:12
|
||||
--> $DIR/regions-free-region-ordering-caller.rs:16:12
|
||||
|
|
||||
LL | fn call2<'a, 'b>(a: &'a usize, b: &'b usize) {
|
||||
| -- -- lifetime `'b` defined here
|
||||
|
|
@ -11,7 +11,7 @@ LL | let z: Option<&'b &'a usize> = None;
|
|||
= help: consider adding the following bound: `'a: 'b`
|
||||
|
||||
error: lifetime may not live long enough
|
||||
--> $DIR/regions-free-region-ordering-caller.rs:17:12
|
||||
--> $DIR/regions-free-region-ordering-caller.rs:22:12
|
||||
|
|
||||
LL | fn call3<'a, 'b>(a: &'a usize, b: &'b usize) {
|
||||
| -- -- lifetime `'b` defined here
|
||||
|
|
@ -24,7 +24,7 @@ LL | let z: Option<&'b Paramd<'a>> = None;
|
|||
= help: consider adding the following bound: `'a: 'b`
|
||||
|
||||
error: lifetime may not live long enough
|
||||
--> $DIR/regions-free-region-ordering-caller.rs:22:12
|
||||
--> $DIR/regions-free-region-ordering-caller.rs:27:12
|
||||
|
|
||||
LL | fn call4<'a, 'b>(a: &'a usize, b: &'b usize) {
|
||||
| -- -- lifetime `'b` defined here
|
||||
|
|
|
|||
|
|
@ -5,6 +5,11 @@
|
|||
// revisions: migrate nll
|
||||
//[nll]compile-flags: -Z borrowck=mir
|
||||
|
||||
// Since we are testing nll (and migration) explicitly as a separate
|
||||
// revisions, don't worry about the --compare-mode=nll on this test.
|
||||
|
||||
// ignore-compare-mode-nll
|
||||
|
||||
struct Paramd<'a> { x: &'a usize }
|
||||
|
||||
fn call2<'a, 'b>(a: &'a usize, b: &'b usize) {
|
||||
|
|
|
|||
|
|
@ -1,28 +0,0 @@
|
|||
error: lifetime may not live long enough
|
||||
--> $DIR/regions-outlives-projection-container-hrtb.rs:30:12
|
||||
|
|
||||
LL | fn with_assoc<'a,'b>() {
|
||||
| -- -- lifetime `'b` defined here
|
||||
| |
|
||||
| lifetime `'a` defined here
|
||||
...
|
||||
LL | let _: &'a WithHrAssoc<TheType<'b>> = loop { };
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ type annotation requires that `'b` must outlive `'a`
|
||||
|
|
||||
= help: consider adding the following bound: `'b: 'a`
|
||||
|
||||
error: lifetime may not live long enough
|
||||
--> $DIR/regions-outlives-projection-container-hrtb.rs:50:12
|
||||
|
|
||||
LL | fn with_assoc_sub<'a,'b>() {
|
||||
| -- -- lifetime `'b` defined here
|
||||
| |
|
||||
| lifetime `'a` defined here
|
||||
...
|
||||
LL | let _: &'a WithHrAssocSub<TheType<'b>> = loop { };
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ type annotation requires that `'b` must outlive `'a`
|
||||
|
|
||||
= help: consider adding the following bound: `'b: 'a`
|
||||
|
||||
error: aborting due to 2 previous errors
|
||||
|
||||
|
|
@ -1,33 +1,33 @@
|
|||
error[E0491]: in type `&'a WithHrAssoc<TheType<'b>>`, reference has a longer lifetime than the data it references
|
||||
--> $DIR/regions-outlives-projection-container-hrtb.rs:30:12
|
||||
--> $DIR/regions-outlives-projection-container-hrtb.rs:35:12
|
||||
|
|
||||
LL | let _: &'a WithHrAssoc<TheType<'b>> = loop { };
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
note: the pointer is valid for the lifetime `'a` as defined here
|
||||
--> $DIR/regions-outlives-projection-container-hrtb.rs:27:15
|
||||
--> $DIR/regions-outlives-projection-container-hrtb.rs:32:15
|
||||
|
|
||||
LL | fn with_assoc<'a,'b>() {
|
||||
| ^^
|
||||
note: but the referenced data is only valid for the lifetime `'b` as defined here
|
||||
--> $DIR/regions-outlives-projection-container-hrtb.rs:27:18
|
||||
--> $DIR/regions-outlives-projection-container-hrtb.rs:32:18
|
||||
|
|
||||
LL | fn with_assoc<'a,'b>() {
|
||||
| ^^
|
||||
|
||||
error[E0491]: in type `&'a WithHrAssocSub<TheType<'b>>`, reference has a longer lifetime than the data it references
|
||||
--> $DIR/regions-outlives-projection-container-hrtb.rs:50:12
|
||||
--> $DIR/regions-outlives-projection-container-hrtb.rs:55:12
|
||||
|
|
||||
LL | let _: &'a WithHrAssocSub<TheType<'b>> = loop { };
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
note: the pointer is valid for the lifetime `'a` as defined here
|
||||
--> $DIR/regions-outlives-projection-container-hrtb.rs:46:19
|
||||
--> $DIR/regions-outlives-projection-container-hrtb.rs:51:19
|
||||
|
|
||||
LL | fn with_assoc_sub<'a,'b>() {
|
||||
| ^^
|
||||
note: but the referenced data is only valid for the lifetime `'b` as defined here
|
||||
--> $DIR/regions-outlives-projection-container-hrtb.rs:46:22
|
||||
--> $DIR/regions-outlives-projection-container-hrtb.rs:51:22
|
||||
|
|
||||
LL | fn with_assoc_sub<'a,'b>() {
|
||||
| ^^
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
error: lifetime may not live long enough
|
||||
--> $DIR/regions-outlives-projection-container-hrtb.rs:30:12
|
||||
--> $DIR/regions-outlives-projection-container-hrtb.rs:35:12
|
||||
|
|
||||
LL | fn with_assoc<'a,'b>() {
|
||||
| -- -- lifetime `'b` defined here
|
||||
|
|
@ -12,7 +12,7 @@ LL | let _: &'a WithHrAssoc<TheType<'b>> = loop { };
|
|||
= help: consider adding the following bound: `'b: 'a`
|
||||
|
||||
error: lifetime may not live long enough
|
||||
--> $DIR/regions-outlives-projection-container-hrtb.rs:50:12
|
||||
--> $DIR/regions-outlives-projection-container-hrtb.rs:55:12
|
||||
|
|
||||
LL | fn with_assoc_sub<'a,'b>() {
|
||||
| -- -- lifetime `'b` defined here
|
||||
|
|
|
|||
|
|
@ -4,6 +4,11 @@
|
|||
// revisions: migrate nll
|
||||
//[nll]compile-flags: -Z borrowck=mir
|
||||
|
||||
// Since we are testing nll (and migration) explicitly as a separate
|
||||
// revisions, don't worry about the --compare-mode=nll on this test.
|
||||
|
||||
// ignore-compare-mode-nll
|
||||
|
||||
#![allow(dead_code)]
|
||||
|
||||
pub trait TheTrait<'b> {
|
||||
|
|
|
|||
|
|
@ -1,15 +0,0 @@
|
|||
error: lifetime may not live long enough
|
||||
--> $DIR/regions-outlives-projection-container-wc.rs:33:12
|
||||
|
|
||||
LL | fn with_assoc<'a,'b>() {
|
||||
| -- -- lifetime `'b` defined here
|
||||
| |
|
||||
| lifetime `'a` defined here
|
||||
...
|
||||
LL | let _: &'a WithAssoc<TheType<'b>> = loop { };
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ type annotation requires that `'b` must outlive `'a`
|
||||
|
|
||||
= help: consider adding the following bound: `'b: 'a`
|
||||
|
||||
error: aborting due to previous error
|
||||
|
||||
|
|
@ -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:33:12
|
||||
--> $DIR/regions-outlives-projection-container-wc.rs:38:12
|
||||
|
|
||||
LL | let _: &'a WithAssoc<TheType<'b>> = loop { };
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
note: the pointer is valid for the lifetime `'a` as defined here
|
||||
--> $DIR/regions-outlives-projection-container-wc.rs:27:15
|
||||
--> $DIR/regions-outlives-projection-container-wc.rs:32:15
|
||||
|
|
||||
LL | fn with_assoc<'a,'b>() {
|
||||
| ^^
|
||||
note: but the referenced data is only valid for the lifetime `'b` as defined here
|
||||
--> $DIR/regions-outlives-projection-container-wc.rs:27:18
|
||||
--> $DIR/regions-outlives-projection-container-wc.rs:32:18
|
||||
|
|
||||
LL | fn with_assoc<'a,'b>() {
|
||||
| ^^
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
error: lifetime may not live long enough
|
||||
--> $DIR/regions-outlives-projection-container-wc.rs:33:12
|
||||
--> $DIR/regions-outlives-projection-container-wc.rs:38:12
|
||||
|
|
||||
LL | fn with_assoc<'a,'b>() {
|
||||
| -- -- lifetime `'b` defined here
|
||||
|
|
|
|||
|
|
@ -6,6 +6,11 @@
|
|||
// revisions: migrate nll
|
||||
//[nll]compile-flags: -Z borrowck=mir
|
||||
|
||||
// Since we are testing nll (and migration) explicitly as a separate
|
||||
// revisions, don't worry about the --compare-mode=nll on this test.
|
||||
|
||||
// ignore-compare-mode-nll
|
||||
|
||||
#![allow(dead_code)]
|
||||
|
||||
pub trait TheTrait {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue