rust/tests/rustdoc-ui/synthetic-auto-trait-impls/const-in-super-trait-and-it...

24 lines
422 B
Rust

// We used to ICE here while trying to synthesize auto trait impls.
// issue: 107715
//@ check-pass
pub const N: usize = 1;
pub struct MapType<K: Supertrait<V>, V> {
_array: K::Array,
}
pub trait Subtrait: Supertrait<[u8; N]> {}
pub trait Supertrait<V> {
type Array: AnotherTrait<V>;
}
pub trait AnotherTrait<V> {
const LENGTH: usize;
}
pub struct Container<S: Subtrait> {
_x: MapType<S, [u8; N]>,
}