chore: optimize sparse matrix casting with python tuple (#4064)
* optimize casting of sparse Eigen arrays
* move array
* Revert for safety
diff --git a/include/pybind11/eigen.h b/include/pybind11/eigen.h
index 71df3eb..4d221b3 100644
--- a/include/pybind11/eigen.h
+++ b/include/pybind11/eigen.h
@@ -692,9 +692,9 @@
array outerIndices((rowMajor ? src.rows() : src.cols()) + 1, src.outerIndexPtr());
array innerIndices(src.nonZeros(), src.innerIndexPtr());
- return matrix_type(std::make_tuple(
+ return matrix_type(pybind11::make_tuple(
std::move(data), std::move(innerIndices), std::move(outerIndices)),
- std::make_pair(src.rows(), src.cols()))
+ pybind11::make_tuple(src.rows(), src.cols()))
.release();
}