BDCSVD fix -Wmaybe-uninitialized

This commit is contained in:
Charles Schlosser 2024-07-30 22:53:06 +00:00
parent 6331da95eb
commit 3f06651fd6
2 changed files with 5 additions and 5 deletions

View File

@ -52,9 +52,8 @@ struct traits<BDCSVD<MatrixType_, Options> > : svd_traits<MatrixType_, Options>
template <typename MatrixType, int Options>
struct allocate_small_svd {
static void run(JacobiSVD<MatrixType, Options>& smallSvd, Index rows, Index cols, unsigned int computationOptions) {
(void)computationOptions;
smallSvd = JacobiSVD<MatrixType, Options>(rows, cols);
static void run(JacobiSVD<MatrixType, Options>& smallSvd, Index rows, Index cols, unsigned int) {
internal::construct_at(&smallSvd, rows, cols);
}
};
@ -64,7 +63,7 @@ EIGEN_DISABLE_DEPRECATED_WARNING
template <typename MatrixType>
struct allocate_small_svd<MatrixType, 0> {
static void run(JacobiSVD<MatrixType>& smallSvd, Index rows, Index cols, unsigned int computationOptions) {
smallSvd = JacobiSVD<MatrixType>(rows, cols, computationOptions);
internal::construct_at(&smallSvd, rows, cols, computationOptions);
}
};

View File

@ -553,7 +553,8 @@ class JacobiSVD : public SVDBase<JacobiSVD<MatrixType_, Options_> > {
* \deprecated Will be removed in the next major Eigen version. Options should
* be specified in the \a Options template parameter.
*/
EIGEN_DEPRECATED JacobiSVD(Index rows, Index cols, unsigned int computationOptions) {
// EIGEN_DEPRECATED // this constructor is used to allocate memory in BDCSVD
JacobiSVD(Index rows, Index cols, unsigned int computationOptions) {
internal::check_svd_options_assertions<MatrixType, Options>(computationOptions, rows, cols);
allocate(rows, cols, computationOptions);
}