3 // regression test for #68295
5 struct Matrix<R, C, S>(R, C, S);
7 impl<R, C, S> Matrix<R, C, S> {
8 fn into_owned(self) -> Matrix<R, C, Owned<R, C, ()>>
16 impl<D, S> Matrix<D, D, S> {
17 fn hermitian_part(&self) -> Matrix<D, D, Owned<D, D, ()>>
25 trait Allocator<R, C> {
29 trait Trait<R, C, A> {
33 impl<R, C, A: Allocator<R, C>> Trait<R, C, A> for () {
34 type Power = A::Buffer;
37 type Owned<R, C, G> = <G as Trait<R, C, ()>>::Power;
39 fn crash<R, C>(input: Matrix<R, C, ()>) -> Matrix<R, C, u32>
44 //~^ ERROR mismatched types [E0308]