diff --git a/DESCRIPTION b/DESCRIPTION index bd3017c..9af0d6c 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -1,6 +1,6 @@ Package: spatialreg Version: 1.3-7 -Date: 2024-12-02 +Date: 2024-12-24 Title: Spatial Regression Analysis Encoding: UTF-8 Authors@R: c(person("Roger", "Bivand", role = c("cre", "aut"), email = "Roger.Bivand@nhh.no", comment=c(ORCID="0000-0003-2392-6140")), diff --git a/NEWS.md b/NEWS.md index d3a4e1f..7fa5f21 100644 --- a/NEWS.md +++ b/NEWS.md @@ -1,5 +1,6 @@ # Version 1.3-7 (development) +* convert `error` to `Rf_error` in `src/ml_sse.c` to accommodate R_NO_REMAP # Version 1.3-6 (2024-12-02) diff --git a/src/eminmaxC.c b/src/eminmaxC.c index 32b27ea..f25042c 100644 --- a/src/eminmaxC.c +++ b/src/eminmaxC.c @@ -1,10 +1,10 @@ -/* Copyright 2015 by Roger S. Bivand. */ +/* Copyright 2015-24 by Roger S. Bivand. */ #include "spatialreg.h" SEXP lmin21(SEXP nb, SEXP y, SEXP cy, SEXP card) { - int i, j, k, nswitch=0, n=length(card), pc=0; + int i, j, k, nswitch=0, n=Rf_length(card), pc=0; SEXP ans; double t1, t2, ytemp; double *Y, *CY; @@ -52,20 +52,20 @@ SEXP lmin21(SEXP nb, SEXP y, SEXP cy, SEXP card) { } SEXP lmin22(SEXP nb, SEXP y, SEXP cy, SEXP card, SEXP beta) { - int i, j, k, nswitch=0, n=length(card), pc=0; + int i, j, k, nswitch=0, n=Rf_length(card), pc=0; SEXP ans; double t1, t2, ytemp, yhat; double *Y, *CY, *B; Y = (double *) R_alloc((size_t) n, sizeof(double)); CY = (double *) R_alloc((size_t) n, sizeof(double)); - B = (double *) R_alloc((size_t) length(beta), sizeof(double)); + B = (double *) R_alloc((size_t) Rf_length(beta), sizeof(double)); for (i=0; i= INTEGER_POINTER(ncard2)[0]) - error("ncard2 incorrectly given"); + Rf_error("ncard2 incorrectly given"); ii++; } } @@ -50,7 +50,7 @@ SEXP listw2dgR(SEXP nbs, SEXP wts, SEXP card, SEXP ncard) NUMERIC_POINTER(VECTOR_ELT(ans, 1))[ii] = NUMERIC_POINTER(VECTOR_ELT(wts, i))[j]; if (ii >= INTEGER_POINTER(ncard)[0]) - error("ncard incorrectly given"); + Rf_error("ncard incorrectly given"); ii++; } } diff --git a/src/ml_sse.c b/src/ml_sse.c index 9835ac3..7ccf3c7 100644 --- a/src/ml_sse.c +++ b/src/ml_sse.c @@ -63,18 +63,18 @@ void opt_error_set(SEXP env) { SEXP y, x, wy, WX; int i, n, p, np, pc=0; - n = INTEGER_POINTER(findVarInFrame(env, install("n")))[0]; - p = INTEGER_POINTER(findVarInFrame(env, install("p")))[0]; + n = INTEGER_POINTER(Rf_findVarInFrame(env, Rf_install("n")))[0]; + p = INTEGER_POINTER(Rf_findVarInFrame(env, Rf_install("p")))[0]; np = n*p; - pt = (OPT_ERROR_SSE *) R_ExternalPtrAddr(findVarInFrame(env, - install("ptr"))); - if (pt->set) error("opt_error_set: function called out of order"); + pt = (OPT_ERROR_SSE *) R_ExternalPtrAddr(Rf_findVarInFrame(env, + Rf_install("ptr"))); + if (pt->set) Rf_error("opt_error_set: function called out of order"); - PROTECT(y = findVarInFrame(env, install("y"))); pc++; - PROTECT(x = findVarInFrame(env, install("x"))); pc++; - PROTECT(wy = findVarInFrame(env, install("wy"))); pc++; - PROTECT(WX = findVarInFrame(env, install("WX"))); pc++; + PROTECT(y = Rf_findVarInFrame(env, Rf_install("y"))); pc++; + PROTECT(x = Rf_findVarInFrame(env, Rf_install("x"))); pc++; + PROTECT(wy = Rf_findVarInFrame(env, Rf_install("wy"))); pc++; + PROTECT(WX = Rf_findVarInFrame(env, Rf_install("WX"))); pc++; pt->y = R_Calloc(n, double); pt->x = R_Calloc(np, double); @@ -149,18 +149,18 @@ void hess_error_set(SEXP env) { SEXP y, x, wy, WX; int i, n, p, np, pc=0; - n = INTEGER_POINTER(findVarInFrame(env, install("n")))[0]; - p = INTEGER_POINTER(findVarInFrame(env, install("p")))[0]; + n = INTEGER_POINTER(Rf_findVarInFrame(env, Rf_install("n")))[0]; + p = INTEGER_POINTER(Rf_findVarInFrame(env, Rf_install("p")))[0]; np = n*p; - pt = (HESS_ERROR_SSE *) R_ExternalPtrAddr(findVarInFrame(env, - install("ptr"))); - if (pt->set) error("hess_error_set: function called out of order"); + pt = (HESS_ERROR_SSE *) R_ExternalPtrAddr(Rf_findVarInFrame(env, + Rf_install("ptr"))); + if (pt->set) Rf_error("hess_error_set: function called out of order"); - PROTECT(y = findVarInFrame(env, install("y"))); pc++; - PROTECT(x = findVarInFrame(env, install("x"))); pc++; - PROTECT(wy = findVarInFrame(env, install("wy"))); pc++; - PROTECT(WX = findVarInFrame(env, install("WX"))); pc++; + PROTECT(y = Rf_findVarInFrame(env, Rf_install("y"))); pc++; + PROTECT(x = Rf_findVarInFrame(env, Rf_install("x"))); pc++; + PROTECT(wy = Rf_findVarInFrame(env, Rf_install("wy"))); pc++; + PROTECT(WX = Rf_findVarInFrame(env, Rf_install("WX"))); pc++; pt->y = R_Calloc(n, double); pt->x = R_Calloc(np, double); @@ -228,17 +228,17 @@ void hess_lag_set(SEXP env) { SEXP y, x, wy; int i, n, p, np, pc=0; - n = INTEGER_POINTER(findVarInFrame(env, install("n")))[0]; - p = INTEGER_POINTER(findVarInFrame(env, install("m")))[0]; + n = INTEGER_POINTER(Rf_findVarInFrame(env, Rf_install("n")))[0]; + p = INTEGER_POINTER(Rf_findVarInFrame(env, Rf_install("m")))[0]; np = n*p; - pt = (HESS_LAG_SSE *) R_ExternalPtrAddr(findVarInFrame(env, - install("ptr"))); - if (pt->set) error("hess_lag_set: function called out of order"); + pt = (HESS_LAG_SSE *) R_ExternalPtrAddr(Rf_findVarInFrame(env, + Rf_install("ptr"))); + if (pt->set) Rf_error("hess_lag_set: function called out of order"); - PROTECT(y = findVarInFrame(env, install("y"))); pc++; - PROTECT(x = findVarInFrame(env, install("x"))); pc++; - PROTECT(wy = findVarInFrame(env, install("wy"))); pc++; + PROTECT(y = Rf_findVarInFrame(env, Rf_install("y"))); pc++; + PROTECT(x = Rf_findVarInFrame(env, Rf_install("x"))); pc++; + PROTECT(wy = Rf_findVarInFrame(env, Rf_install("wy"))); pc++; pt->y = R_Calloc(n, double); pt->x = R_Calloc(np, double); @@ -299,16 +299,16 @@ SEXP R_ml_sse_env(SEXP env, SEXP coef) { int pc=0, first_time; OPT_ERROR_SSE *pt; - first_time = LOGICAL_POINTER(findVarInFrame(env, install("first_time")))[0]; + first_time = LOGICAL_POINTER(Rf_findVarInFrame(env, Rf_install("first_time")))[0]; if (first_time) { opt_error_set(env); } - n = INTEGER_POINTER(findVarInFrame(env, install("n")))[0]; - p = INTEGER_POINTER(findVarInFrame(env, install("p")))[0]; + n = INTEGER_POINTER(Rf_findVarInFrame(env, Rf_install("n")))[0]; + p = INTEGER_POINTER(Rf_findVarInFrame(env, Rf_install("p")))[0]; np = n*p; - pt = (OPT_ERROR_SSE *) R_ExternalPtrAddr(findVarInFrame(env, - install("ptr"))); + pt = (OPT_ERROR_SSE *) R_ExternalPtrAddr(Rf_findVarInFrame(env, + Rf_install("ptr"))); for (i=0; iyl[i] = pt->y[i]; for (i=0; ixlq[i] = pt->x[i]; @@ -319,7 +319,7 @@ SEXP R_ml_sse_env(SEXP env, SEXP coef) { F77_CALL(dqrdc2)(pt->xlq, &n, &n, &p, &tol, &k, pt->qraux, pt->jpvt, pt->work); - if (p != k) warning("Q looses full rank"); + if (p != k) Rf_warning("Q looses full rank"); /* k = 0; F77_CALL(dqrdc)(pt->xlq, &n, &n, &p, pt->qraux, pt->jpvt, pt->work, &k);*/ @@ -356,16 +356,16 @@ SEXP R_ml1_sse_env(SEXP env, SEXP lambda, SEXP beta) { int pc=0, first_time; HESS_ERROR_SSE *pt; - first_time = LOGICAL_POINTER(findVarInFrame(env, install("first_time")))[0]; + first_time = LOGICAL_POINTER(Rf_findVarInFrame(env, Rf_install("first_time")))[0]; if (first_time) { hess_error_set(env); } - n = INTEGER_POINTER(findVarInFrame(env, install("n")))[0]; - p = INTEGER_POINTER(findVarInFrame(env, install("p")))[0]; + n = INTEGER_POINTER(Rf_findVarInFrame(env, Rf_install("n")))[0]; + p = INTEGER_POINTER(Rf_findVarInFrame(env, Rf_install("p")))[0]; np = n*p; - pt = (HESS_ERROR_SSE *) R_ExternalPtrAddr(findVarInFrame(env, - install("ptr"))); + pt = (HESS_ERROR_SSE *) R_ExternalPtrAddr(Rf_findVarInFrame(env, + Rf_install("ptr"))); for (i=0; iyl[i] = pt->y[i]; for (i=0; ixl[i] = pt->x[i]; @@ -402,15 +402,15 @@ SEXP R_ml2_sse_env(SEXP env, SEXP rho, SEXP beta) { int pc=0, first_time; HESS_LAG_SSE *pt; - first_time = LOGICAL_POINTER(findVarInFrame(env, install("first_time")))[0]; + first_time = LOGICAL_POINTER(Rf_findVarInFrame(env, Rf_install("first_time")))[0]; if (first_time) { hess_lag_set(env); } - n = INTEGER_POINTER(findVarInFrame(env, install("n")))[0]; - p = INTEGER_POINTER(findVarInFrame(env, install("m")))[0]; - pt = (HESS_LAG_SSE *) R_ExternalPtrAddr(findVarInFrame(env, - install("ptr"))); + n = INTEGER_POINTER(Rf_findVarInFrame(env, Rf_install("n")))[0]; + p = INTEGER_POINTER(Rf_findVarInFrame(env, Rf_install("m")))[0]; + pt = (HESS_LAG_SSE *) R_ExternalPtrAddr(Rf_findVarInFrame(env, + Rf_install("ptr"))); for (i=0; iyl[i] = pt->y[i]; for (i=0; ibeta1[i] = NUMERIC_POINTER(beta)[i]; diff --git a/src/mom_calc.c b/src/mom_calc.c index a3263c8..f369bdb 100644 --- a/src/mom_calc.c +++ b/src/mom_calc.c @@ -1,4 +1,4 @@ -/* Copyright 2010 by Roger S. Bivand. */ +/* Copyright 2010-24 by Roger S. Bivand. */ #include "spatialreg.h" @@ -7,10 +7,10 @@ static int c__1 = 1; SEXP mom_calc_int2(SEXP is, SEXP m, SEXP nb, SEXP weights, SEXP card) { SEXP Omega; int hm = INTEGER_POINTER(m)[0]; - int n = length(card); + int n = Rf_length(card); double *eta, *zeta, *omega, sum, res; int i, ii, j, k1, k2, k3; - int iis = length(is); + int iis = Rf_length(is); omega = (double *) R_alloc((size_t) hm, sizeof(double)); eta = (double *) R_alloc((size_t) n, sizeof(double)); @@ -39,10 +39,10 @@ SEXP mom_calc_int2(SEXP is, SEXP m, SEXP nb, SEXP weights, SEXP card) { } res = F77_CALL(ddot)(&n, zeta, &c__1, eta, &c__1); if (R_FINITE(res)) omega[(j-1)] += res; - else error("non-finite dot product %d, %d", i, j); + else Rf_error("non-finite dot product %d, %d", i, j); res = F77_CALL(ddot)(&n, zeta, &c__1, zeta, &c__1); if (R_FINITE(res)) omega[j] += res; - else error("non-finite dot product %d, %d", i, j); + else Rf_error("non-finite dot product %d, %d", i, j); for (k1=0; k1 #include #include