about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--src/test/ui/unsized-locals/unsized-local-pat.rs13
-rw-r--r--src/test/ui/unsized-locals/unsized-local-pat.stderr23
-rw-r--r--src/test/ui/unsized-locals/unsized-locals-using-unsized-fn-params.rs8
-rw-r--r--src/test/ui/unsized-locals/unsized-locals-using-unsized-fn-params.stderr24
4 files changed, 29 insertions, 39 deletions
diff --git a/src/test/ui/unsized-locals/unsized-local-pat.rs b/src/test/ui/unsized-locals/unsized-local-pat.rs
deleted file mode 100644
index 5793d3fb499..00000000000
--- a/src/test/ui/unsized-locals/unsized-local-pat.rs
+++ /dev/null
@@ -1,13 +0,0 @@
-#![feature(box_patterns)]
-#![feature(unsized_fn_params)]
-
-// Ensure that even with unsized_fn_params, unsized types in parameter patterns are not accepted.
-
-#[allow(dead_code)]
-fn f1(box box _b: Box<Box<[u8]>>) {}
-//~^ ERROR: the size for values of type `[u8]` cannot be known at compilation time [E0277]
-
-fn f2((_x, _y): (i32, [i32])) {}
-//~^ ERROR: the size for values of type `[i32]` cannot be known at compilation time [E0277]
-
-fn main() {}
diff --git a/src/test/ui/unsized-locals/unsized-local-pat.stderr b/src/test/ui/unsized-locals/unsized-local-pat.stderr
deleted file mode 100644
index 01449b45b89..00000000000
--- a/src/test/ui/unsized-locals/unsized-local-pat.stderr
+++ /dev/null
@@ -1,23 +0,0 @@
-error[E0277]: the size for values of type `[u8]` cannot be known at compilation time
-  --> $DIR/unsized-local-pat.rs:7:15
-   |
-LL | fn f1(box box _b: Box<Box<[u8]>>) {}
-   |               ^^ doesn't have a size known at compile-time
-   |
-   = help: the trait `Sized` is not implemented for `[u8]`
-   = note: all local variables must have a statically known size
-   = help: unsized locals are gated as an unstable feature
-
-error[E0277]: the size for values of type `[i32]` cannot be known at compilation time
-  --> $DIR/unsized-local-pat.rs:10:12
-   |
-LL | fn f2((_x, _y): (i32, [i32])) {}
-   |            ^^ doesn't have a size known at compile-time
-   |
-   = help: the trait `Sized` is not implemented for `[i32]`
-   = note: all local variables must have a statically known size
-   = help: unsized locals are gated as an unstable feature
-
-error: aborting due to 2 previous errors
-
-For more information about this error, try `rustc --explain E0277`.
diff --git a/src/test/ui/unsized-locals/unsized-locals-using-unsized-fn-params.rs b/src/test/ui/unsized-locals/unsized-locals-using-unsized-fn-params.rs
index 6d39c8c8172..15263954ced 100644
--- a/src/test/ui/unsized-locals/unsized-locals-using-unsized-fn-params.rs
+++ b/src/test/ui/unsized-locals/unsized-locals-using-unsized-fn-params.rs
@@ -1,6 +1,12 @@
+#![feature(box_patterns)]
 #![feature(unsized_fn_params)]
 
-// Ensure that even with unsized_fn_params, unsized locals are not accepted.
+#[allow(dead_code)]
+fn f1(box box _b: Box<Box<[u8]>>) {}
+//~^ ERROR: the size for values of type `[u8]` cannot be known at compilation time [E0277]
+
+fn f2((_x, _y): (i32, [i32])) {}
+//~^ ERROR: the size for values of type `[i32]` cannot be known at compilation time [E0277]
 
 fn main() {
     let foo: Box<[u8]> = Box::new(*b"foo");
diff --git a/src/test/ui/unsized-locals/unsized-locals-using-unsized-fn-params.stderr b/src/test/ui/unsized-locals/unsized-locals-using-unsized-fn-params.stderr
index 1f5ce5bc2df..da77026673d 100644
--- a/src/test/ui/unsized-locals/unsized-locals-using-unsized-fn-params.stderr
+++ b/src/test/ui/unsized-locals/unsized-locals-using-unsized-fn-params.stderr
@@ -1,5 +1,25 @@
 error[E0277]: the size for values of type `[u8]` cannot be known at compilation time
-  --> $DIR/unsized-locals-using-unsized-fn-params.rs:7:9
+  --> $DIR/unsized-locals-using-unsized-fn-params.rs:5:15
+   |
+LL | fn f1(box box _b: Box<Box<[u8]>>) {}
+   |               ^^ doesn't have a size known at compile-time
+   |
+   = help: the trait `Sized` is not implemented for `[u8]`
+   = note: all local variables must have a statically known size
+   = help: unsized locals are gated as an unstable feature
+
+error[E0277]: the size for values of type `[i32]` cannot be known at compilation time
+  --> $DIR/unsized-locals-using-unsized-fn-params.rs:8:12
+   |
+LL | fn f2((_x, _y): (i32, [i32])) {}
+   |            ^^ doesn't have a size known at compile-time
+   |
+   = help: the trait `Sized` is not implemented for `[i32]`
+   = note: all local variables must have a statically known size
+   = help: unsized locals are gated as an unstable feature
+
+error[E0277]: the size for values of type `[u8]` cannot be known at compilation time
+  --> $DIR/unsized-locals-using-unsized-fn-params.rs:13:9
    |
 LL |     let _foo: [u8] = *foo;
    |         ^^^^ doesn't have a size known at compile-time
@@ -8,6 +28,6 @@ LL |     let _foo: [u8] = *foo;
    = note: all local variables must have a statically known size
    = help: unsized locals are gated as an unstable feature
 
-error: aborting due to previous error
+error: aborting due to 3 previous errors
 
 For more information about this error, try `rustc --explain E0277`.