about summary refs log tree commit diff
diff options
context:
space:
mode:
authorMatthias Krüger <matthias.krueger@famsik.de>2022-06-29 22:16:36 +0200
committerMatthias Krüger <matthias.krueger@famsik.de>2022-06-29 22:16:36 +0200
commitddb6313b61c80728856138f33b57cb100bbd96ed (patch)
tree7a352e7c6fedca8c92fd309b277bff526497bb8f
parent3fcf43bb0f3e86c16a88f239da18a1729a94d244 (diff)
downloadrust-ddb6313b61c80728856138f33b57cb100bbd96ed.tar.gz
rust-ddb6313b61c80728856138f33b57cb100bbd96ed.zip
add ice test for 46511
Fixes #46511
-rw-r--r--src/test/ui/const-generics/issue-46511.rs8
-rw-r--r--src/test/ui/const-generics/issue-46511.stderr21
2 files changed, 29 insertions, 0 deletions
diff --git a/src/test/ui/const-generics/issue-46511.rs b/src/test/ui/const-generics/issue-46511.rs
new file mode 100644
index 00000000000..71c50e2f3f7
--- /dev/null
+++ b/src/test/ui/const-generics/issue-46511.rs
@@ -0,0 +1,8 @@
+// check-fail
+
+struct Foo<'a> //~ ERROR parameter `'a` is never used [E0392]
+{
+    _a: [u8; std::mem::size_of::<&'a mut u8>()] //~ ERROR  a non-static lifetime is not allowed in a `const`
+}
+
+pub fn main() {}
diff --git a/src/test/ui/const-generics/issue-46511.stderr b/src/test/ui/const-generics/issue-46511.stderr
new file mode 100644
index 00000000000..b21afa56dcb
--- /dev/null
+++ b/src/test/ui/const-generics/issue-46511.stderr
@@ -0,0 +1,21 @@
+error[E0658]: a non-static lifetime is not allowed in a `const`
+  --> $DIR/issue-46511.rs:5:35
+   |
+LL |     _a: [u8; std::mem::size_of::<&'a mut u8>()]
+   |                                   ^^
+   |
+   = note: see issue #76560 <https://github.com/rust-lang/rust/issues/76560> for more information
+   = help: add `#![feature(generic_const_exprs)]` to the crate attributes to enable
+
+error[E0392]: parameter `'a` is never used
+  --> $DIR/issue-46511.rs:3:12
+   |
+LL | struct Foo<'a>
+   |            ^^ unused parameter
+   |
+   = help: consider removing `'a`, referring to it in a field, or using a marker such as `PhantomData`
+
+error: aborting due to 2 previous errors
+
+Some errors have detailed explanations: E0392, E0658.
+For more information about an error, try `rustc --explain E0392`.