Define STRICT_R_HEADERS, include cfloat, use FLT_EPSILON and M_PI #55
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Hi Max,
Your CRAN package Gmisc uses Rcpp, and is affected if we add a definition of STRICT_R_HEADERS as we would like to do. Please see the discussion at RcppCore/Rcpp#1158 and the links therein for more context on this.
Here, instead of prefixing each #include <Rcpp.h> with STRICT_R_HEADERS we define it in src/Makevars* for a more minimal changeset (I think I personally prefer it in each file, but in your case the single joint header is very good too) . The actual change that is needed is the inclusion of cfloat (or float.h, C style) in the header and then a simple change from PI to M_PI, and to FLT_EPSILON in two files.
It would be lovely if you could apply this. There is no strong urgency: we aim to get this done over all affected packages in the space of a few months. If you apply it, would you mind dropping me a note by email or swinging by RcppCore/Rcpp#1158 to confirm?
Many thanks for your help, and I hope you continue to find Rcpp helpful. Please don't hesitate to ask if you have any questions.