This was using clang (<a href="http://clang.llvm.org">http://clang.llvm.org</a>)<br><br><div class="gmail_quote">On Wed, Oct 20, 2010 at 2:31 PM, Dirk Eddelbuettel <span dir="ltr">&lt;<a href="mailto:edd@debian.org">edd@debian.org</a>&gt;</span> wrote:<br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;"><br>
Hi Karl,<br>
<br>
Thanks for spotting and fixing those. Out of curiousity, which non-gcc<br>
compiler was that?  icc ?<br>
<div><div></div><div class="h5"><br>
On 20 October 2010 at 14:22, Karl Millar wrote:<br>
| This patch fixes a couple of minor issues.  Both are cases of illegal C++<br>
| code caught by using a non-gcc complier.  The first is a bug in<br>
| Vector::fill_dispatch, which would be serious except that the function<br>
| appears to be unused at the moment.  The second is just a syntactic issue.<br>
|<br>
| The patch is against the current svn repository.<br>
<br>
</div></div>Super. We will apply those shortly; I also found another thinko of ours so<br>
maybe we&#39;ll just toss out 0.8.8 in due course.<br>
<br>
Thanks,  Dirk<br>
<br>
| Thanks,<br>
|<br>
| Karl Millar<br>
|<br>
| ----------------------------------------------------------------------<br>
| Index: Rcpp/inst/include/Rcpp/vector/Vector.h<br>
| ===================================================================<br>
| --- Rcpp/inst/include/Rcpp/vector/Vector.h    (revision 2347)<br>
| +++ Rcpp/inst/include/Rcpp/vector/Vector.h    (working copy)<br>
| @@ -311,7 +311,7 @@<br>
|               // when this is not trivial, this is SEXP<br>
|               SEXP elem = PROTECT( converter_type::get( u ) );<br>
|               iterator it(begin());<br>
| -             for( int i=0; i&lt;size ; i++, ++it){<br>
| +             for( int i=0; i&lt;size() ; i++, ++it){<br>
|                       *it = ::Rf_duplicate( elem ) ;<br>
|               }<br>
|               UNPROTECT(1) ; /* elem */<br>
| Index: Rcpp/inst/include/Rcpp/XPtr.h<br>
| ===================================================================<br>
| --- Rcpp/inst/include/Rcpp/XPtr.h     (revision 2347)<br>
| +++ Rcpp/inst/include/Rcpp/XPtr.h     (working copy)<br>
| @@ -59,7 +59,8 @@<br>
|       *        so you need to make sure the pointer can be &quot;delete&quot; d<br>
|       *        this way (has to be a C++ object)<br>
|       */<br>
| -    explicit XPtr(T* p, bool set_delete_finalizer, SEXP tag, SEXP prot);<br>
| +    explicit XPtr(T* p, bool set_delete_finalizer = true, SEXP tag = R_NilValue,<br>
| +                  SEXP prot = R_NilValue);<br>
|<br>
|      XPtr( const XPtr&amp; other ) : RObject( other.asSexp() ) {}<br>
|<br>
| @@ -168,7 +169,7 @@<br>
|  };<br>
|<br>
|  template&lt;typename T&gt;<br>
| -XPtr&lt;T&gt;::XPtr(T* p, bool set_delete_finalizer = true, SEXP tag = R_NilValue, SEXP prot = R_NilValue) : RObject() {<br>
| +XPtr&lt;T&gt;::XPtr(T* p, bool set_delete_finalizer, SEXP tag, SEXP prot) : RObject() {<br>
|      setSEXP( R_MakeExternalPtr( (void*)p , tag, prot) ) ;<br>
|      if( set_delete_finalizer ){<br>
|       setDeleteFinalizer() ;<br>
|<br>
| ----------------------------------------------------------------------<br>
| _______________________________________________<br>
| Rcpp-devel mailing list<br>
| <a href="mailto:Rcpp-devel@lists.r-forge.r-project.org">Rcpp-devel@lists.r-forge.r-project.org</a><br>
| <a href="https://lists.r-forge.r-project.org/cgi-bin/mailman/listinfo/rcpp-devel" target="_blank">https://lists.r-forge.r-project.org/cgi-bin/mailman/listinfo/rcpp-devel</a><br>
<font color="#888888"><br>
--<br>
Dirk Eddelbuettel | <a href="mailto:edd@debian.org">edd@debian.org</a> | <a href="http://dirk.eddelbuettel.com" target="_blank">http://dirk.eddelbuettel.com</a><br>
</font></blockquote></div><br>