about summary refs log tree commit diff
diff options
context:
space:
mode:
authorPietro Albini <pietro@pietroalbini.org>2018-11-15 11:04:47 +0100
committerGitHub <noreply@github.com>2018-11-15 11:04:47 +0100
commitd0e08ce88e0926e8e2bc393d3d7982fd767f37b8 (patch)
tree272f0c5ec3eb68ffc6d3c167933c38cd609c56b6
parentf40f04bcc145afd1a3a96d3b5a8dd5c5575cf207 (diff)
parente2ef0f742cd6ff1cabea0cef8999d6615a815eeb (diff)
downloadrust-d0e08ce88e0926e8e2bc393d3d7982fd767f37b8.tar.gz
rust-d0e08ce88e0926e8e2bc393d3d7982fd767f37b8.zip
Rollup merge of #55956 - euclio:issue-55587, r=estebank
add tests for some fixed ICEs

Fixes #55587.
Fixes #54348.

Looks like these ICEs are already fixed in nightly, so this PR just adds tests.

r? @estebank
-rw-r--r--src/test/ui/issues/issue-54348.rs5
-rw-r--r--src/test/ui/issues/issue-54348.stderr16
-rw-r--r--src/test/ui/issues/issue-55587.rs5
-rw-r--r--src/test/ui/issues/issue-55587.stderr9
4 files changed, 35 insertions, 0 deletions
diff --git a/src/test/ui/issues/issue-54348.rs b/src/test/ui/issues/issue-54348.rs
new file mode 100644
index 00000000000..b980290391d
--- /dev/null
+++ b/src/test/ui/issues/issue-54348.rs
@@ -0,0 +1,5 @@
+fn main() {
+    [1][0u64 as usize];
+    [1][1.5 as usize]; // ERROR index out of bounds
+    [1][1u64 as usize]; // ERROR index out of bounds
+}
diff --git a/src/test/ui/issues/issue-54348.stderr b/src/test/ui/issues/issue-54348.stderr
new file mode 100644
index 00000000000..a9f1b494258
--- /dev/null
+++ b/src/test/ui/issues/issue-54348.stderr
@@ -0,0 +1,16 @@
+error: index out of bounds: the len is 1 but the index is 1
+  --> $DIR/issue-54348.rs:3:5
+   |
+LL |     [1][1.5 as usize]; // ERROR index out of bounds
+   |     ^^^^^^^^^^^^^^^^^
+   |
+   = note: #[deny(const_err)] on by default
+
+error: index out of bounds: the len is 1 but the index is 1
+  --> $DIR/issue-54348.rs:4:5
+   |
+LL |     [1][1u64 as usize]; // ERROR index out of bounds
+   |     ^^^^^^^^^^^^^^^^^^
+
+error: aborting due to 2 previous errors
+
diff --git a/src/test/ui/issues/issue-55587.rs b/src/test/ui/issues/issue-55587.rs
new file mode 100644
index 00000000000..8b78749f652
--- /dev/null
+++ b/src/test/ui/issues/issue-55587.rs
@@ -0,0 +1,5 @@
+use std::path::Path;
+
+fn main() {
+    let Path::new(); //~ ERROR expected tuple struct/variant
+}
diff --git a/src/test/ui/issues/issue-55587.stderr b/src/test/ui/issues/issue-55587.stderr
new file mode 100644
index 00000000000..876fb4391b1
--- /dev/null
+++ b/src/test/ui/issues/issue-55587.stderr
@@ -0,0 +1,9 @@
+error[E0164]: expected tuple struct/variant, found method `<Path>::new`
+  --> $DIR/issue-55587.rs:4:9
+   |
+LL |     let Path::new(); //~ ERROR expected tuple struct/variant
+   |         ^^^^^^^^^^^ not a tuple variant or struct
+
+error: aborting due to previous error
+
+For more information about this error, try `rustc --explain E0164`.