Fix compilation of the sparse module.

This commit is contained in:
Crozet Sébastien 2021-02-25 13:52:58 +01:00
parent ee32f7d4cf
commit 234e103e4b
4 changed files with 10 additions and 6 deletions

View File

@ -460,7 +460,7 @@ where
{ {
// Size = R // Size = R
let nrows = self.data.shape().0; let nrows = self.data.shape().0;
let mut workspace = unsafe { VectorN::new_uninitialized_generic(nrows, U1) }; let mut workspace = unsafe { crate::unimplemented_or_uninitialized_generic!(nrows, U1) };
self.sort_with_workspace(workspace.as_mut_slice()); self.sort_with_workspace(workspace.as_mut_slice());
} }

View File

@ -48,8 +48,10 @@ where
let (l, u) = Self::nonzero_pattern(m); let (l, u) = Self::nonzero_pattern(m);
// Workspaces. // Workspaces.
let work_x = unsafe { VectorN::new_uninitialized_generic(m.data.shape().0, U1) }; let work_x =
let work_c = unsafe { VectorN::new_uninitialized_generic(m.data.shape().1, U1) }; unsafe { crate::unimplemented_or_uninitialized_generic!(m.data.shape().0, U1) };
let work_c =
unsafe { crate::unimplemented_or_uninitialized_generic!(m.data.shape().1, U1) };
let mut original_p = m.data.p.as_slice().to_vec(); let mut original_p = m.data.p.as_slice().to_vec();
original_p.push(m.data.i.len()); original_p.push(m.data.i.len());
@ -291,7 +293,8 @@ where
let etree = Self::elimination_tree(m); let etree = Self::elimination_tree(m);
let (nrows, ncols) = m.data.shape(); let (nrows, ncols) = m.data.shape();
let mut rows = Vec::with_capacity(m.len()); let mut rows = Vec::with_capacity(m.len());
let mut cols = unsafe { VectorN::new_uninitialized_generic(m.data.shape().0, U1) }; let mut cols =
unsafe { crate::unimplemented_or_uninitialized_generic!(m.data.shape().0, U1) };
let mut marks = Vec::new(); let mut marks = Vec::new();
// NOTE: the following will actually compute the non-zero pattern of // NOTE: the following will actually compute the non-zero pattern of

View File

@ -242,7 +242,7 @@ where
let mut res = CsMatrix::new_uninitialized_generic(nrows1, ncols2, self.len() + rhs.len()); let mut res = CsMatrix::new_uninitialized_generic(nrows1, ncols2, self.len() + rhs.len());
let mut timestamps = VectorN::zeros_generic(nrows1, U1); let mut timestamps = VectorN::zeros_generic(nrows1, U1);
let mut workspace = unsafe { VectorN::new_uninitialized_generic(nrows1, U1) }; let mut workspace = unsafe { crate::unimplemented_or_uninitialized_generic!(nrows1, U1) };
let mut nz = 0; let mut nz = 0;
for j in 0..ncols2.value() { for j in 0..ncols2.value() {

View File

@ -149,7 +149,8 @@ impl<N: RealField, D: Dim, S: CsStorage<N, D, D>> CsMatrix<N, D, D, S> {
self.lower_triangular_reach(b, &mut reach); self.lower_triangular_reach(b, &mut reach);
// We sort the reach so the result matrix has sorted indices. // We sort the reach so the result matrix has sorted indices.
reach.sort(); reach.sort();
let mut workspace = unsafe { VectorN::new_uninitialized_generic(b.data.shape().0, U1) }; let mut workspace =
unsafe { crate::unimplemented_or_uninitialized_generic!(b.data.shape().0, U1) };
for i in reach.iter().cloned() { for i in reach.iter().cloned() {
workspace[i] = N::zero(); workspace[i] = N::zero();