[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