I have a package on CRAN now (corpus-0.3.1) that is currently failing tests on Linux, but passing on all other architectures:
https://cran.r-project.org/web/checks/check_results_corpus.html I believe that the issue arrises from a namespace class between "xrealloc", which my package provides for internal use, but which R also seems to provide (possibly as part of TRE in src/extra/tre/xmalloc.c). It looks like my package is not picking up my custom xrealloc, but using an xrealloc provided by R. Besides the fact that I am linking to the wrong xrealloc, I think my tests are failing for the same reason that the following code segfaults on Linux (Debian, with R 3.4.0): test <- inline::cfunction(language='C', otherdefs='void *xmalloc(size_t); void *xrealloc(void *, size_t);', body = 'void *ptr = xmalloc(256); xrealloc(ptr, 0); return R_NilValue;') test() ## xrealloc: out of virtual memory It seems that the R xrealloc doesn't like being given a size of 0, even though this behavior is well-defined for realloc (it should free the memory). Based on my failing CRAN tests, it looks like this is a Linux-specific issue. Is there a way to modify my Makevars to force the linker to choose my version of xrealloc for my package-specific code? My current Makevars are at https://github.com/patperry/r-corpus/blob/master/src/Makevars Thanks in advance for any help. Patrick [[alternative HTML version deleted]] ______________________________________________ R-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-devel