rust/tests/ui/const-generics/generic_const_exprs/issue-84669.rs

31 lines
408 B
Rust
Raw Normal View History

// build-pass
#![feature(generic_const_exprs)]
#![allow(incomplete_features)]
trait Foo {
type Output;
fn foo() -> Self::Output;
}
impl Foo for [u8; 3] {
type Output = [u8; 1 + 2];
fn foo() -> [u8; 3] {
[1u8; 3]
}
}
fn bug<const N: usize>()
where
[u8; N]: Foo,
<[u8; N] as Foo>::Output: AsRef<[u8]>,
{
<[u8; N]>::foo().as_ref();
}
fn main() {
bug::<3>();
}