Skip to content

Commit

Permalink
Fix issues with Rcpp and Matrix on the R package
Browse files Browse the repository at this point in the history
  • Loading branch information
eromero-vlc committed Jan 9, 2024
1 parent 8ec9f61 commit 19a1ede
Show file tree
Hide file tree
Showing 4 changed files with 21 additions and 19 deletions.
7 changes: 4 additions & 3 deletions R/DESCRIPTION
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
Package: PRIMME
Type: Package
Title: Eigenvalues and Singular Values and Vectors from Large Matrices
Version: 3.2-5
Date: 2023-09-30
Version: 3.2-6
Date: 2024-01-10
Authors@R: c(person("Eloy", "Romero", role=c("aut", "cre"), email="eloy@cs.wm.edu"),
person("Andreas", "Stathopoulos", role="aut", email="andreas@cs.wm.edu"),
person("Lingfei", "Wu", role="aut", email="wuli@us.ibm.com"),
Expand All @@ -22,7 +22,8 @@ URL:
https://github.com/primme/primme
BugReports: https://github.com/primme/primme/issues
Imports:
Rcpp (>= 0.11.4)
Rcpp (>= 0.11.4),
Matrix (>= 1.6.2)
LinkingTo: Rcpp, Matrix
Suggests: Matrix
SystemRequirements:
Expand Down
2 changes: 1 addition & 1 deletion R/R/RcppExports.R
Original file line number Diff line number Diff line change
Expand Up @@ -59,5 +59,5 @@

# Register entry points for exported C++ functions
methods::setLoadAction(function(ns) {
.Call('_PRIMME_RcppExport_registerCCallable', PACKAGE = 'PRIMME')
.Call(`_PRIMME_RcppExport_registerCCallable`)
})
3 changes: 2 additions & 1 deletion R/cran-comments.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
## Changes

* Accommodate following changes in Matrix's API
* Force Matrix dependency to be 1.6-2 at least to avoid ABI issues
* Fix string issues with Rcpp

## Test environments
* Ubuntu 20.04, R 4.3 and devel
Expand Down
28 changes: 14 additions & 14 deletions R/src/RcppExports.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ RcppExport SEXP _PRIMME_primme_initialize_rcpp() {
if (rcpp_isError_gen) {
SEXP rcpp_msgSEXP_gen = Rf_asChar(rcpp_result_gen);
UNPROTECT(1);
Rf_error(CHAR(rcpp_msgSEXP_gen));
Rf_error("%s", CHAR(rcpp_msgSEXP_gen));
}
UNPROTECT(1);
return rcpp_result_gen;
Expand Down Expand Up @@ -76,7 +76,7 @@ RcppExport SEXP _PRIMME_primme_free_rcpp(SEXP primmeSEXP) {
if (rcpp_isError_gen) {
SEXP rcpp_msgSEXP_gen = Rf_asChar(rcpp_result_gen);
UNPROTECT(1);
Rf_error(CHAR(rcpp_msgSEXP_gen));
Rf_error("%s", CHAR(rcpp_msgSEXP_gen));
}
UNPROTECT(1);
return rcpp_result_gen;
Expand Down Expand Up @@ -110,7 +110,7 @@ RcppExport SEXP _PRIMME_primme_set_method_rcpp(SEXP methodstrSEXP, SEXP primmeSE
if (rcpp_isError_gen) {
SEXP rcpp_msgSEXP_gen = Rf_asChar(rcpp_result_gen);
UNPROTECT(1);
Rf_error(CHAR(rcpp_msgSEXP_gen));
Rf_error("%s", CHAR(rcpp_msgSEXP_gen));
}
UNPROTECT(1);
return rcpp_result_gen;
Expand Down Expand Up @@ -145,7 +145,7 @@ RcppExport SEXP _PRIMME_primme_get_member_rcpp(SEXP labelstrSEXP, SEXP primmeSEX
if (rcpp_isError_gen) {
SEXP rcpp_msgSEXP_gen = Rf_asChar(rcpp_result_gen);
UNPROTECT(1);
Rf_error(CHAR(rcpp_msgSEXP_gen));
Rf_error("%s", CHAR(rcpp_msgSEXP_gen));
}
UNPROTECT(1);
return rcpp_result_gen;
Expand Down Expand Up @@ -180,7 +180,7 @@ RcppExport SEXP _PRIMME_primme_set_member_rcpp(SEXP labelstrSEXP, SEXP valueSEXP
if (rcpp_isError_gen) {
SEXP rcpp_msgSEXP_gen = Rf_asChar(rcpp_result_gen);
UNPROTECT(1);
Rf_error(CHAR(rcpp_msgSEXP_gen));
Rf_error("%s", CHAR(rcpp_msgSEXP_gen));
}
UNPROTECT(1);
return rcpp_result_gen;
Expand Down Expand Up @@ -220,7 +220,7 @@ RcppExport SEXP _PRIMME_dprimme_rcpp(SEXP orthoSEXP, SEXP initSEXP, SEXP ASEXP,
if (rcpp_isError_gen) {
SEXP rcpp_msgSEXP_gen = Rf_asChar(rcpp_result_gen);
UNPROTECT(1);
Rf_error(CHAR(rcpp_msgSEXP_gen));
Rf_error("%s", CHAR(rcpp_msgSEXP_gen));
}
UNPROTECT(1);
return rcpp_result_gen;
Expand Down Expand Up @@ -260,7 +260,7 @@ RcppExport SEXP _PRIMME_zprimme_rcpp(SEXP orthoSEXP, SEXP initSEXP, SEXP ASEXP,
if (rcpp_isError_gen) {
SEXP rcpp_msgSEXP_gen = Rf_asChar(rcpp_result_gen);
UNPROTECT(1);
Rf_error(CHAR(rcpp_msgSEXP_gen));
Rf_error("%s", CHAR(rcpp_msgSEXP_gen));
}
UNPROTECT(1);
return rcpp_result_gen;
Expand Down Expand Up @@ -293,7 +293,7 @@ RcppExport SEXP _PRIMME_primme_svds_initialize_rcpp() {
if (rcpp_isError_gen) {
SEXP rcpp_msgSEXP_gen = Rf_asChar(rcpp_result_gen);
UNPROTECT(1);
Rf_error(CHAR(rcpp_msgSEXP_gen));
Rf_error("%s", CHAR(rcpp_msgSEXP_gen));
}
UNPROTECT(1);
return rcpp_result_gen;
Expand Down Expand Up @@ -326,7 +326,7 @@ RcppExport SEXP _PRIMME_primme_svds_free_rcpp(SEXP primme_svdsSEXP) {
if (rcpp_isError_gen) {
SEXP rcpp_msgSEXP_gen = Rf_asChar(rcpp_result_gen);
UNPROTECT(1);
Rf_error(CHAR(rcpp_msgSEXP_gen));
Rf_error("%s", CHAR(rcpp_msgSEXP_gen));
}
UNPROTECT(1);
return rcpp_result_gen;
Expand Down Expand Up @@ -362,7 +362,7 @@ RcppExport SEXP _PRIMME_primme_svds_set_method_rcpp(SEXP methodstrSEXP, SEXP met
if (rcpp_isError_gen) {
SEXP rcpp_msgSEXP_gen = Rf_asChar(rcpp_result_gen);
UNPROTECT(1);
Rf_error(CHAR(rcpp_msgSEXP_gen));
Rf_error("%s", CHAR(rcpp_msgSEXP_gen));
}
UNPROTECT(1);
return rcpp_result_gen;
Expand Down Expand Up @@ -397,7 +397,7 @@ RcppExport SEXP _PRIMME_primme_svds_get_member_rcpp(SEXP labelstrSEXP, SEXP prim
if (rcpp_isError_gen) {
SEXP rcpp_msgSEXP_gen = Rf_asChar(rcpp_result_gen);
UNPROTECT(1);
Rf_error(CHAR(rcpp_msgSEXP_gen));
Rf_error("%s", CHAR(rcpp_msgSEXP_gen));
}
UNPROTECT(1);
return rcpp_result_gen;
Expand Down Expand Up @@ -432,7 +432,7 @@ RcppExport SEXP _PRIMME_primme_svds_set_member_rcpp(SEXP labelstrSEXP, SEXP valu
if (rcpp_isError_gen) {
SEXP rcpp_msgSEXP_gen = Rf_asChar(rcpp_result_gen);
UNPROTECT(1);
Rf_error(CHAR(rcpp_msgSEXP_gen));
Rf_error("%s", CHAR(rcpp_msgSEXP_gen));
}
UNPROTECT(1);
return rcpp_result_gen;
Expand Down Expand Up @@ -472,7 +472,7 @@ RcppExport SEXP _PRIMME_dprimme_svds_rcpp(SEXP ortholSEXP, SEXP orthorSEXP, SEXP
if (rcpp_isError_gen) {
SEXP rcpp_msgSEXP_gen = Rf_asChar(rcpp_result_gen);
UNPROTECT(1);
Rf_error(CHAR(rcpp_msgSEXP_gen));
Rf_error("%s", CHAR(rcpp_msgSEXP_gen));
}
UNPROTECT(1);
return rcpp_result_gen;
Expand Down Expand Up @@ -512,7 +512,7 @@ RcppExport SEXP _PRIMME_zprimme_svds_rcpp(SEXP ortholSEXP, SEXP orthorSEXP, SEXP
if (rcpp_isError_gen) {
SEXP rcpp_msgSEXP_gen = Rf_asChar(rcpp_result_gen);
UNPROTECT(1);
Rf_error(CHAR(rcpp_msgSEXP_gen));
Rf_error("%s", CHAR(rcpp_msgSEXP_gen));
}
UNPROTECT(1);
return rcpp_result_gen;
Expand Down

0 comments on commit 19a1ede

Please sign in to comment.