On 20 March 2023 at 12:43, Duncan Murdoch wrote: | It appears that you have some uses of .Call() where you are passing a | character variable as the first argument, instead of registering the | entry point and passing the variable containing the registration | information.
Correct. And to make the case worse, the package then calls (on line 130 of coranking_main.cpp) the very 'R_forceSymbols(info, TRUE);' that is now telling it about the error of using _quoted_ ("text") rather than symbol references. Just removing line 130 may work. | From your second link, it looks like Rcpp has some special way to | handle entry point registration. I'm not familiar with that, I use the | basic way described in Writing R Extensions, section 5.4 "Registering | native routines". Rcpp checks if a useDynLib("nameofpackage") has `, .registration=TRUE)` and if so, creates glue code with symbols (ie what Guido desires here) instead of text variables (as was common a long time ago). That was the case of package 'sf' which I helped yesterday; all it took there was to ensure it used `useDynLib("sf", .registration=TRUE)` and to re-create the generated RcppExports.R via Rcpp's own `compileAttributes()` function (as I did in PR that Edzer merged hours later). But none of this helps Guido as his package prefers to do it all by hand -- which is perfectly fine and valid, of course -- but a little bit more work. Hth, Dirk -- dirk.eddelbuettel.com | @eddelbuettel | e...@debian.org ______________________________________________ R-package-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-package-devel