diff --git a/sbp/src/operators/algos.rs b/sbp/src/operators/algos.rs index 2b60090..659ce42 100644 --- a/sbp/src/operators/algos.rs +++ b/sbp/src/operators/algos.rs @@ -4,7 +4,7 @@ pub(crate) mod constmatrix { #![allow(unused)] /// A row-major matrix #[derive(Debug, Clone, PartialEq, Eq, Hash)] - #[repr(transparent)] + #[repr(C)] pub struct Matrix { data: [[T; N]; M], } @@ -318,7 +318,7 @@ pub(crate) fn diff_op_1d_slice_matrix::map_to_col(prev.array_windows::().nth(0).unwrap()); + let prev = ColVector::<_, N>::map_to_col(prev.array_windows::().next().unwrap()); let fut = ColVector::<_, M>::map_to_col_mut((&mut fut[0..M]).try_into().unwrap()); block.matmul_into(prev, fut); @@ -335,7 +335,6 @@ pub(crate) fn diff_op_1d_slice_matrix().skip(M)) .take(nx - 2 * M) { - // impl From here? let fut = ColVector::<_, 1>::map_to_col_mut(f); let prev = ColVector::<_, D>::map_to_col(window);