summaryrefslogtreecommitdiffstats
path: root/src/test/ui/const-generics/issues/issue-89146.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/ui/const-generics/issues/issue-89146.rs')
-rw-r--r--src/test/ui/const-generics/issues/issue-89146.rs26
1 files changed, 26 insertions, 0 deletions
diff --git a/src/test/ui/const-generics/issues/issue-89146.rs b/src/test/ui/const-generics/issues/issue-89146.rs
new file mode 100644
index 000000000..e3540f46f
--- /dev/null
+++ b/src/test/ui/const-generics/issues/issue-89146.rs
@@ -0,0 +1,26 @@
+// build-pass
+
+#![allow(incomplete_features)]
+#![feature(generic_const_exprs)]
+
+pub trait Foo {
+ const SIZE: usize;
+
+ fn to_bytes(&self) -> [u8; Self::SIZE];
+}
+
+pub fn bar<G: Foo>(a: &G) -> u8
+where
+ [(); G::SIZE]: Sized,
+{
+ deeper_bar(a)
+}
+
+fn deeper_bar<G: Foo>(a: &G) -> u8
+where
+ [(); G::SIZE]: Sized,
+{
+ a.to_bytes()[0]
+}
+
+fn main() {}