[Rcpp-devel] Fwd: CRAN packages with C++ compilation errors on OS X 10.9

baptiste auguie baptiste.auguie at gmail.com
Wed Nov 27 11:55:59 CET 2013


Sorry for the delay in getting back to this; I took the opportunity to
rewrite a substantial part of the package, and this slowed down the update
for those c++11 / clang issues.
The bottom line is that using Rcpp::function in modules was enough to
please OSX 10.9 on CRAN:



On 31 October 2013 13:15, Romain Francois <romain at r-enthusiasts.com> wrote:

> Le 31/10/2013 15:59, baptiste auguie a écrit :
>> Dear Rcpp gurus,
>> Today a CRAN maintainer informed us of the failure of a few Rcpp-related
>> packages to build under the new version of the Mac operating system, OS
>> X 10.9 aka Mavericks.
>> I do have access to a Mac, but I'm reluctant (in fact, unable) to update
>> to Mavericks, therefore I'm in the dark when it comes to fixing /testing
>> for the errors reported in the log file. On a positive note, it appears
>> at first sight that most of the errors are relatively benign, and
>> similar-looking issues are reported for all the packages involved. That
>> gives me hope that once the underlying issue is well identified, most
>> packages can be fixed with minimal changes.
>> Here's the info we were given from CRAN,
>> "OS X 10.9 (aka Mavericks) has a new C++ compiler, clang++ with libcxx
>> headers/runtime.  Your package fails to compile with that compiler: see
>> the appropriate log at http://www.stats.ox.ac.uk/pub/__bdr/Mavericks/
>> <http://www.stats.ox.ac.uk/pub/bdr/Mavericks/> ."
>> My two packages are cda and planar. The error seems to occur in the
>> Modules definition, e.g. from this line in my code
>> https://github.com/baptiste/planar/blob/master/src/multilayer.cpp#L231
>> where "function" is judged ambiguous, as far as I understand. This
>> "function" is presumably something from
>> Rcpp/include/Rcpp/module/Module_generated_function.h but I am not
>> familiar with that code.
>> Any ideas, hints?
>> Best regards,
>> baptiste
> I sent you a pull request on github.
> .function abuses the compiler recognition, it is just unfortunate that
> something else is called function, which is what confused it.
> Not sure there could be defenses against it.
> In the meantime, you should be fine by just using Rcpp::function

> Also, for such trivial uses of modules (i.e. no classes), maybe it is
> worth considering using // [[Rcpp::export]] and code generation given by
> compileAttributes instead of modules.
> Romain
> --
> Romain Francois
> Professional R Enthusiast
> +33(0) 6 28 91 30 30
> _______________________________________________
> Rcpp-devel mailing list
> Rcpp-devel at lists.r-forge.r-project.org
> https://lists.r-forge.r-project.org/cgi-bin/mailman/listinfo/rcpp-devel
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.r-forge.r-project.org/pipermail/rcpp-devel/attachments/20131127/1d7bc382/attachment.html>

More information about the Rcpp-devel mailing list