about summary refs log tree commit diff
path: root/tests
diff options
context:
space:
mode:
Diffstat (limited to 'tests')
-rw-r--r--tests/ui/sized/unsized-binding.rs5
-rw-r--r--tests/ui/sized/unsized-binding.stderr13
2 files changed, 18 insertions, 0 deletions
diff --git a/tests/ui/sized/unsized-binding.rs b/tests/ui/sized/unsized-binding.rs
new file mode 100644
index 00000000000..3b99b0f6e96
--- /dev/null
+++ b/tests/ui/sized/unsized-binding.rs
@@ -0,0 +1,5 @@
+fn main() {
+    let x = *""; //~ ERROR E0277
+    println!("{}", x);
+    println!("{}", x);
+}
diff --git a/tests/ui/sized/unsized-binding.stderr b/tests/ui/sized/unsized-binding.stderr
new file mode 100644
index 00000000000..af306685021
--- /dev/null
+++ b/tests/ui/sized/unsized-binding.stderr
@@ -0,0 +1,13 @@
+error[E0277]: the size for values of type `str` cannot be known at compilation time
+  --> $DIR/unsized-binding.rs:2:9
+   |
+LL |     let x = *"";
+   |         ^ doesn't have a size known at compile-time
+   |
+   = help: the trait `Sized` is not implemented for `str`
+   = 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
+
+For more information about this error, try `rustc --explain E0277`.