R 3.1.0 came out today. Among the (impressive and long as usual) list of changes is
the added ability to specify
CXX_STD = CXX11 in order to get
C++11 (or the best available subset on older compilers). This brings a
number of changes and opportunities which are frankly too numerous to be
discussed in this short post. But it also permits us, at long last, to use
long integer types.
For RcppCNPy, this means that we can finally cover NumPy integer data (along
with the double precision we had from the start) on all
platforms. Python encodes these as an int64, and that type was unavailable
(at least in 32-bit OSs) until we got
long long made available
to us by R.
So today I made the change to depend on R 3.1.0, and select C++11 which
allowed us to free the code from a number if
#ifdef tests. This
all worked out swimmingly and the new package has already been rebuilt for
I also updated the vignette, and refreshed its look and feel.
Full changes are listed below.
Changes in version 0.2.3 (2014-04-10)
CXX_STD = CXX11which also provides the
long longtype on all platforms, so integer file support is no longer conditional.
Consequently, code conditional on
RCPP_HAS_LONG_LONG_TYPEShas been simplified and is no longer conditional.
The package now depends on R 3.1.0 or later to allow this.
The vignette has been updated and refreshed to reflect this.
CRANberries also provides a diffstat report
for the latest release.
As always, feedback is welcome and the
rcpp-devel mailing list
off the R-Forge page for Rcpp is
the best place to start a discussion.