@@ -2,12 +2,12 @@ diff '--exclude=CMakeLists.txt' -ruw ../eigen/Eigen/CholmodSupport inst/include/
22--- ../eigen/Eigen/CholmodSupport 2026-06-04 19:21:16.915228190 -0500
33+++ inst/include/Eigen/CholmodSupport 2026-06-04 19:34:11.433660905 -0500
44@@ -12,7 +12,7 @@
5-
5+
66 #include "src/Core/util/DisableStupidWarnings.h"
7-
7+
88- #include <cholmod.h>
99+ #include <RcppEigenCholmod.h>
10-
10+
1111 /** \ingroup Support_modules
1212 * \defgroup CholmodSupport_Module CholmodSupport module
1313diff '--exclude=CMakeLists.txt' -ruw ../eigen/Eigen/src/CholmodSupport/CholmodSupport.h inst/include/Eigen/src/CholmodSupport/CholmodSupport.h
@@ -16,16 +16,16 @@ diff '--exclude=CMakeLists.txt' -ruw ../eigen/Eigen/src/CholmodSupport/CholmodSu
1616@@ -13,6 +13,10 @@
1717 // IWYU pragma: private
1818 #include "./InternalHeaderCheck.h"
19-
19+
2020+ #ifndef R_MATRIX_CHOLMOD
2121+ # define R_MATRIX_CHOLMOD(_NAME_) cholmod_ ## _NAME_
2222+ #endif
2323+
2424 namespace Eigen {
25-
25+
2626 namespace internal {
2727@@ -84,8 +88,8 @@
28-
28+
2929 if (internal::is_same<StorageIndex_, int>::value) {
3030 res.itype = CHOLMOD_INT;
3131- } else if (internal::is_same<StorageIndex_, SuiteSparse_long>::value) {
@@ -46,7 +46,7 @@ diff '--exclude=CMakeLists.txt' -ruw ../eigen/Eigen/src/CholmodSupport/CholmodSu
4646- return cholmod_l_##name(&Common); \
4747+ return R_MATRIX_CHOLMOD(name)(&Common); \
4848 }
49-
49+
5050 #define EIGEN_CHOLMOD_SPECIALIZE1(ret, name, t1, a1) \
5151 template <typename StorageIndex_> \
5252 inline ret cm_##name(t1& a1, cholmod_common& Common) { \
@@ -57,10 +57,10 @@ diff '--exclude=CMakeLists.txt' -ruw ../eigen/Eigen/src/CholmodSupport/CholmodSu
5757- return cholmod_l_##name(&a1, &Common); \
5858+ return R_MATRIX_CHOLMOD(name) (&a1, &Common); \
5959 }
60-
60+
6161 EIGEN_CHOLMOD_SPECIALIZE0(int, start)
6262@@ -201,33 +197,33 @@
63-
63+
6464 template <typename StorageIndex_>
6565 inline cholmod_dense* cm_solve(int sys, cholmod_factor& L, cholmod_dense& B, cholmod_common& Common) {
6666- return cholmod_solve(sys, &L, &B, &Common);
@@ -74,7 +74,7 @@ diff '--exclude=CMakeLists.txt' -ruw ../eigen/Eigen/src/CholmodSupport/CholmodSu
7474+ // inline cholmod_dense* cm_solve<SuiteSparse_long>(int sys, cholmod_factor& L, cholmod_dense& B, cholmod_common& Common) {
7575+ // return cholmod_l_solve(sys, &L, &B, &Common);
7676+ // }
77-
77+
7878 template <typename StorageIndex_>
7979 inline cholmod_sparse* cm_spsolve(int sys, cholmod_factor& L, cholmod_sparse& B, cholmod_common& Common) {
8080- return cholmod_spsolve(sys, &L, &B, &Common);
@@ -90,7 +90,7 @@ diff '--exclude=CMakeLists.txt' -ruw ../eigen/Eigen/src/CholmodSupport/CholmodSu
9090+ // cholmod_common& Common) {
9191+ // return cholmod_l_spsolve(sys, &L, &B, &Common);
9292+ // }
93-
93+
9494 template <typename StorageIndex_>
9595 inline int cm_factorize_p(cholmod_sparse* A, double beta[2], StorageIndex_* fset, std::size_t fsize, cholmod_factor* L,
9696 cholmod_common& Common) {
@@ -107,15 +107,27 @@ diff '--exclude=CMakeLists.txt' -ruw ../eigen/Eigen/src/CholmodSupport/CholmodSu
107107+ // std::size_t fsize, cholmod_factor* L, cholmod_common& Common) {
108108+ // return cholmod_l_factorize_p(A, beta, fset, fsize, L, &Common);
109109+ // }
110-
110+
111111 #undef EIGEN_CHOLMOD_SPECIALIZE0
112112 #undef EIGEN_CHOLMOD_SPECIALIZE1
113+ diff '--exclude=CMakeLists.txt' -ruw ../eigen/Eigen/src/Core/arch/AltiVec/PacketMath.h inst/include/Eigen/src/Core/arch/AltiVec/PacketMath.h
114+ --- ../eigen/Eigen/src/Core/arch/AltiVec/PacketMath.h 2026-06-04 19:21:16.924228445 -0500
115+ +++ inst/include/Eigen/src/Core/arch/AltiVec/PacketMath.h 2026-06-04 19:48:47.058195837 -0500
116+ @@ -486,7 +486,7 @@
117+ // Ignore partial input memory initialized
118+ #if !EIGEN_COMP_LLVM
119+ #pragma GCC diagnostic push
120+ - #pragma GCC diagnostic ignored "-Wmaybe-uninitialized"
121+ + //#pragma GCC diagnostic ignored "-Wmaybe-uninitialized"
122+ #endif
123+ #ifdef EIGEN_VECTORIZE_VSX
124+ return vec_xl(0, const_cast<__UNPACK_TYPE__(Packet)*>(from));
113125diff '--exclude=CMakeLists.txt' -ruw ../eigen/Eigen/src/Core/util/DisableStupidWarnings.h inst/include/Eigen/src/Core/util/DisableStupidWarnings.h
114126--- ../eigen/Eigen/src/Core/util/DisableStupidWarnings.h 2026-06-04 19:21:16.930228615 -0500
115127+++ inst/include/Eigen/src/Core/util/DisableStupidWarnings.h 2026-06-04 19:34:11.433784882 -0500
116128@@ -42,45 +42,45 @@
117129 #pragma warning disable 2196 279 1684 2259
118-
130+
119131 #elif defined __clang__
120132- #ifndef EIGEN_PERMANENTLY_DISABLE_STUPID_WARNINGS
121133- #pragma clang diagnostic push
@@ -157,9 +169,9 @@ diff '--exclude=CMakeLists.txt' -ruw ../eigen/Eigen/src/Core/util/DisableStupidW
157169+ // #endif
158170+ // #endif
159171+ // #endif
160-
172+
161173 #elif defined __GNUC__ && !defined(__FUJITSU)
162-
174+
163175- #if (!defined(EIGEN_PERMANENTLY_DISABLE_STUPID_WARNINGS)) && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 6))
164176- #pragma GCC diagnostic push
165177- #endif
@@ -193,7 +205,7 @@ diff '--exclude=CMakeLists.txt' -ruw ../eigen/Eigen/src/Core/util/DisableStupidW
193205+ // #pragma GCC diagnostic ignored "-Wattributes"
194206+ // #endif
195207 #endif
196-
208+
197209 #if defined __NVCC__ && defined __CUDACC__
198210diff '--exclude=CMakeLists.txt' -ruw ../eigen/unsupported/Eigen/src/SparseExtra/MatrixMarketIterator.h inst/include/unsupported/Eigen/src/SparseExtra/MatrixMarketIterator.h
199211--- ../eigen/unsupported/Eigen/src/SparseExtra/MatrixMarketIterator.h 2026-06-04 19:21:16.986230202 -0500
0 commit comments