| 50 // If the "nightly" feature is enabled, we will use an uninitialised array for a |
50 // If the "nightly" feature is enabled, we will use an uninitialised array for a |
| 51 // little bit of efficiency. |
51 // little bit of efficiency. |
| 52 // This use of MaybeUninit assumes F : Copy. Otherwise undefined behaviour may occur. |
52 // This use of MaybeUninit assumes F : Copy. Otherwise undefined behaviour may occur. |
| 53 #[cfg(feature = "nightly")] |
53 #[cfg(feature = "nightly")] |
| 54 { |
54 { |
| 55 let mut x : [[MaybeUninit<F>; K]; M] = core::array::from_fn(|_| MaybeUninit::uninit_array::<K>() ); |
55 let mut x: [[MaybeUninit<F>; K]; M] = [[const { MaybeUninit::uninit() }; K]; M]; |
| 56 //unsafe { std::mem::MaybeUninit::uninit().assume_init() }; |
56 //unsafe { std::mem::MaybeUninit::uninit().assume_init() }; |
| 57 for i in (0..M).rev() { |
57 for i in (0..M).rev() { |
| 58 for 𝓁 in 0..K { |
58 for 𝓁 in 0..K { |
| 59 let mut tmp = ab[i][M+𝓁]; |
59 let mut tmp = ab[i][M+𝓁]; |
| 60 for j in (i+1)..M { |
60 for j in (i+1)..M { |