It looks like a "bug" of Armadillo. In fn_trunc_exp.hpp, trunc_exp() calles Math<eT>::log_max() that has already been labeled deprecated.
Best, Yixuan 2016-04-21 15:51 GMT-04:00 Dirk Eddelbuettel <e...@debian.org>: > > Hi Yue, > > On 21 April 2016 at 15:44, Yue Li wrote: > | Dear List, > | > | Just a super naive (dumb) question: after upgrading to > RcppArmadillo_0.6.700.3.0 Rcpp_0.12.4, I receive compilation warning > ''log_max' has been explicitly marked deprecated here” on every line of my > code that uses ‘trunc_exp’ or ‘trunc_log’. > | > | I wonder how to fix this. The code to reproduce the warning and the log are > pasted below. I got the same warning on Linux server as well. > > Many of us use Rcpp and RcppArmadillo daily but I have not seen this. I > gather that you use OS X -- so I presume this is clang? What version? > > Do you set particular compiler flags? I often use --pendantic. > > Did you try adding -Wno-deprecated-declarations as suggested? > > Did you chase down which header files this is from? > > Lastly, did you poke into the Armadillo header? From the top of my head I > seem to recall that there is a define to suppress error mesages too. > > Dirk > > | > | Thanks a lot in advance, > | Yue > | > | Code: > | > | #include <RcppArmadillo.h> > | > | // [[Rcpp::depends("RcppArmadillo")]] > | > | // [[Rcpp::export]] > | double trunc_exp_Rcpp(double x) { > | > | return arma::trunc_exp(x); > | } > | > | Outputs log: > | > | > Rcpp::sourceCpp('tmp.cpp') > | In file included from tmp.cpp:1: > | In file included from > /Library/Frameworks/R.framework/Versions/3.2/Resources/library/RcppArmadillo/include/RcppArmadillo.h:31: > | In file included from > /Library/Frameworks/R.framework/Versions/3.2/Resources/library/RcppArmadillo/include/RcppArmadilloForward.h:46: > | In file included from > /Library/Frameworks/R.framework/Versions/3.2/Resources/library/RcppArmadillo/include/armadillo:458: > | > /Library/Frameworks/R.framework/Versions/3.2/Resources/library/RcppArmadillo/include/armadillo_bits/fn_trunc_exp.hpp:23:60: > warning: 'log_max' is deprecated [-Wdeprecated-declarations] > | if(std::numeric_limits<eT>::is_iec559 && (x >= Math<eT>::log_max() )) > | ^ > | tmp.cpp:8:16: note: in instantiation of function template specialization > 'arma::trunc_exp<double>' requested here > | return arma::trunc_exp(x); > | ^ > | > /Library/Frameworks/R.framework/Versions/3.2/Resources/library/RcppArmadillo/include/armadillo_bits/constants_old.hpp:50:29: > note: 'log_max' has been explicitly marked deprecated here > | arma_deprecated static eT log_max() { static const eT out = > std::log(std::numeric_limits<eT>::max()); return out; } // use > datum::log_max instead > | ^ > | 1 warning generated. > | > sessionInfo() > | R version 3.2.4 (2016-03-10) > | Platform: x86_64-apple-darwin13.4.0 (64-bit) > | Running under: OS X 10.11.4 (El Capitan) > | > | locale: > | [1] en_US.UTF-8/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/en_US.UTF-8 > | > | attached base packages: > | [1] stats graphics grDevices utils datasets methods base > | > | loaded via a namespace (and not attached): > | [1] tools_3.2.4 RcppArmadillo_0.6.700.3.0 Rcpp_0.12.4 > | > > | _______________________________________________ > | Rcpp-devel mailing list > | Rcpp-devel@lists.r-forge.r-project.org > | https://lists.r-forge.r-project.org/cgi-bin/mailman/listinfo/rcpp-devel > -- > http://dirk.eddelbuettel.com | @eddelbuettel | e...@debian.org > _______________________________________________ > Rcpp-devel mailing list > Rcpp-devel@lists.r-forge.r-project.org > https://lists.r-forge.r-project.org/cgi-bin/mailman/listinfo/rcpp-devel -- Yixuan Qiu <yixuan....@cos.name> Department of Statistics, Purdue University _______________________________________________ Rcpp-devel mailing list Rcpp-devel@lists.r-forge.r-project.org https://lists.r-forge.r-project.org/cgi-bin/mailman/listinfo/rcpp-devel