Skip to content

Commit

Permalink
Update E0161 test to cover more cases
Browse files Browse the repository at this point in the history
Update another test that broke due to E0161 no longer being buffered
  • Loading branch information
matthewjasper committed Aug 22, 2018
1 parent b83fe42 commit cd92da8
Show file tree
Hide file tree
Showing 11 changed files with 106 additions and 15 deletions.
12 changes: 6 additions & 6 deletions src/test/ui/dst/dst-index.nll.stderr
Original file line number Diff line number Diff line change
Expand Up @@ -4,18 +4,18 @@ error[E0161]: cannot move a value of type str: the size of str cannot be statica
LL | S[0];
| ^^^^

error[E0507]: cannot move out of borrowed content
--> $DIR/dst-index.rs:41:5
|
LL | S[0];
| ^^^^ cannot move out of borrowed content

error[E0161]: cannot move a value of type dyn std::fmt::Debug: the size of dyn std::fmt::Debug cannot be statically determined
--> $DIR/dst-index.rs:44:5
|
LL | T[0];
| ^^^^

error[E0507]: cannot move out of borrowed content
--> $DIR/dst-index.rs:41:5
|
LL | S[0];
| ^^^^ cannot move out of borrowed content

error[E0507]: cannot move out of borrowed content
--> $DIR/dst-index.rs:44:5
|
Expand Down
12 changes: 6 additions & 6 deletions src/test/ui/dst/dst-rvalue.nll.stderr
Original file line number Diff line number Diff line change
Expand Up @@ -4,18 +4,18 @@ error[E0161]: cannot move a value of type str: the size of str cannot be statica
LL | let _x: Box<str> = box *"hello world";
| ^^^^^^^^^^^^^^

error[E0507]: cannot move out of borrowed content
--> $DIR/dst-rvalue.rs:16:28
|
LL | let _x: Box<str> = box *"hello world";
| ^^^^^^^^^^^^^^ cannot move out of borrowed content

error[E0161]: cannot move a value of type [isize]: the size of [isize] cannot be statically determined
--> $DIR/dst-rvalue.rs:21:32
|
LL | let _x: Box<[isize]> = box *array;
| ^^^^^^

error[E0507]: cannot move out of borrowed content
--> $DIR/dst-rvalue.rs:16:28
|
LL | let _x: Box<str> = box *"hello world";
| ^^^^^^^^^^^^^^ cannot move out of borrowed content

error[E0508]: cannot move out of type `[isize]`, a non-copy slice
--> $DIR/dst-rvalue.rs:21:32
|
Expand Down
9 changes: 9 additions & 0 deletions src/test/ui/error-codes/E0161.ast.stderr
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
error[E0161]: cannot move a value of type [i32]: the size of [i32] cannot be statically determined
--> $DIR/E0161.rs:32:9
|
LL | box *x; //~ ERROR E0161
| ^^

error: aborting due to previous error

For more information about this error, try `rustc --explain E0161`.
9 changes: 9 additions & 0 deletions src/test/ui/error-codes/E0161.astul.stderr
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
error[E0161]: cannot move a value of type [i32]: the size of [i32] cannot be statically determined
--> $DIR/E0161.rs:32:5
|
LL | box *x; //~ ERROR E0161
| ^^^^^^

error: aborting due to previous error

For more information about this error, try `rustc --explain E0161`.
9 changes: 9 additions & 0 deletions src/test/ui/error-codes/E0161.edition.stderr
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
error[E0161]: cannot move a value of type [i32]: the size of [i32] cannot be statically determined
--> $DIR/E0161.rs:32:9
|
LL | box *x; //~ ERROR E0161
| ^^

error: aborting due to previous error

For more information about this error, try `rustc --explain E0161`.
9 changes: 9 additions & 0 deletions src/test/ui/error-codes/E0161.editionul.stderr
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
error[E0161]: cannot move a value of type [i32]: the size of [i32] cannot be statically determined
--> $DIR/E0161.rs:32:5
|
LL | box *x; //~ ERROR E0161
| ^^^^^^

error: aborting due to previous error

For more information about this error, try `rustc --explain E0161`.
9 changes: 9 additions & 0 deletions src/test/ui/error-codes/E0161.nll.stderr
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
error[E0161]: cannot move a value of type [i32]: the size of [i32] cannot be statically determined
--> $DIR/E0161.rs:32:9
|
LL | box *x; //~ ERROR E0161
| ^^

error: aborting due to previous error

For more information about this error, try `rustc --explain E0161`.
9 changes: 9 additions & 0 deletions src/test/ui/error-codes/E0161.nllul.stderr
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
error[E0161]: cannot move a value of type [i32]: the size of [i32] cannot be statically determined
--> $DIR/E0161.rs:32:5
|
LL | box *x; //~ ERROR E0161
| ^^^^^^

error: aborting due to previous error

For more information about this error, try `rustc --explain E0161`.
25 changes: 22 additions & 3 deletions src/test/ui/error-codes/E0161.rs
Original file line number Diff line number Diff line change
Expand Up @@ -8,9 +8,28 @@
// option. This file may not be copied, modified, or distributed
// except according to those terms.

// ignore-compare-mode-nll

// Check that E0161 is a hard error in all possible configurations that might
// affect it.

// revisions: ast nll zflags edition astul nllul zflagsul editionul
//[zflags]compile-flags: -Z borrowck=migrate -Z two-phase-borrows
//[edition]edition:2018
//[zflagsul]compile-flags: -Z borrowck=migrate -Z two-phase-borrows
//[editionul]edition:2018

#![cfg_attr(nll, feature(nll))]
#![cfg_attr(nllul, feature(nll))]
#![cfg_attr(astul, feature(unsized_locals))]
#![cfg_attr(zflagsul, feature(unsized_locals))]
#![cfg_attr(nllul, feature(unsized_locals))]
#![cfg_attr(editionul, feature(unsized_locals))]

#![feature(box_syntax)]

fn main() {
let _x: Box<str> = box *"hello"; //~ ERROR E0161
//~^ ERROR E0507
fn foo(x: Box<[i32]>) {
box *x; //~ ERROR E0161
}

fn main() {}
9 changes: 9 additions & 0 deletions src/test/ui/error-codes/E0161.zflags.stderr
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
error[E0161]: cannot move a value of type [i32]: the size of [i32] cannot be statically determined
--> $DIR/E0161.rs:32:9
|
LL | box *x; //~ ERROR E0161
| ^^

error: aborting due to previous error

For more information about this error, try `rustc --explain E0161`.
9 changes: 9 additions & 0 deletions src/test/ui/error-codes/E0161.zflagsul.stderr
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
error[E0161]: cannot move a value of type [i32]: the size of [i32] cannot be statically determined
--> $DIR/E0161.rs:32:5
|
LL | box *x; //~ ERROR E0161
| ^^^^^^

error: aborting due to previous error

For more information about this error, try `rustc --explain E0161`.

0 comments on commit cd92da8

Please sign in to comment.