Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Generate C++ native routines with underscore prefix #725

Merged
merged 1 commit into from
Jul 3, 2017

Conversation

jjallaire
Copy link
Member

@jjallaire jjallaire commented Jul 2, 2017

Avoid export from package when standard [[ alpha ]] exportPattern is used in NAMESPACE

This addresses #723.

Note that this change does introduce the use of reserved (but not invalid) C/C++ symbols (the underscore prefix). We made some effort last year I recall to remove such symbols from generated attributes code, presumably to get a clean bill of health from linting tools?

I've tried this with Rcpp::interfaces(r, cpp) as well as with the tic.drat package (package with dot in the name). I've also tried it with packages that include their own non-generated native functions. Also of course have run the Rcpp tests. Even still, this will change the code in every existing RcppExports.* file so is worthy of some extra review/caution/testing.

Avoid export from package when standard [[ alpha ]] exportPattern is used in NAMESPACE
@jjallaire
Copy link
Member Author

Note that if R core decides to stop auto-exporting the registered native symbols then we could revert the use of the underscore prefix. That's something that couldn't happen until the release of R 3.5 though.

@jjallaire jjallaire merged commit f1fdc92 into master Jul 3, 2017
@eddelbuettel eddelbuettel deleted the feature/native-routine-export-prefix branch July 5, 2017 15:15
setempler pushed a commit to setempler/miscset that referenced this pull request Jul 31, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

1 participant