[Rcpp-commits] r1499 - in pkg/Rcpp: inst src
noreply at r-forge.r-project.org
noreply at r-forge.r-project.org
Wed Jun 9 09:58:25 CEST 2010
Author: romain
Date: 2010-06-09 09:58:25 +0200 (Wed, 09 Jun 2010)
New Revision: 1499
Modified:
pkg/Rcpp/inst/ChangeLog
pkg/Rcpp/src/RcppCommon.cpp
Log:
track if demangling is available
Modified: pkg/Rcpp/inst/ChangeLog
===================================================================
--- pkg/Rcpp/inst/ChangeLog 2010-06-08 22:36:39 UTC (rev 1498)
+++ pkg/Rcpp/inst/ChangeLog 2010-06-09 07:58:25 UTC (rev 1499)
@@ -1,3 +1,8 @@
+2010-06-08 Romain Francois <romain at r-enthusiasts.com>
+
+ * src/RcppCommon.cpp: track if demangling is available (currently only
+ available with gcc)
+
2010-06-08 Dirk Eddelbuettel <edd at debian.org>
* DESCRIPTION: Release 0.8.1
Modified: pkg/Rcpp/src/RcppCommon.cpp
===================================================================
--- pkg/Rcpp/src/RcppCommon.cpp 2010-06-08 22:36:39 UTC (rev 1498)
+++ pkg/Rcpp/src/RcppCommon.cpp 2010-06-09 07:58:25 UTC (rev 1499)
@@ -43,8 +43,8 @@
}
SEXP capabilities(){
- SEXP cap = PROTECT( Rf_allocVector( LGLSXP, 6) ) ;
- SEXP names = PROTECT( Rf_allocVector( STRSXP, 6 ) ) ;
+ SEXP cap = PROTECT( Rf_allocVector( LGLSXP, 7) ) ;
+ SEXP names = PROTECT( Rf_allocVector( STRSXP, 7 ) ) ;
#ifdef HAS_VARIADIC_TEMPLATES
LOGICAL(cap)[0] = TRUE ;
#else
@@ -76,12 +76,19 @@
LOGICAL(cap)[5] = FALSE ;
#endif
+#ifdef __GNUC__
+ LOGICAL(cap)[6] = TRUE ;
+#else
+ LOGICAL(cap)[6] = FALSE ;
+#endif
+
SET_STRING_ELT(names, 0, Rf_mkChar("variadic templates") ) ;
SET_STRING_ELT(names, 1, Rf_mkChar("initializer lists") ) ;
SET_STRING_ELT(names, 2, Rf_mkChar("exception handling") ) ;
SET_STRING_ELT(names, 3, Rf_mkChar("tr1 unordered maps") ) ;
SET_STRING_ELT(names, 4, Rf_mkChar("tr1 unordered sets") ) ;
SET_STRING_ELT(names, 5, Rf_mkChar("Rcpp modules") ) ;
+ SET_STRING_ELT(names, 6, Rf_mkChar("demangling") ) ;
Rf_setAttrib( cap, R_NamesSymbol, names ) ;
UNPROTECT(2) ;
return cap ;
More information about the Rcpp-commits
mailing list