Hmm, once I stopped using 'wrap' and just passed Armadillo objects using 
'Named', I'm able to run unit tests with no errors.

I.e., I now use:

  List data = List::create(_["x"] = x,
                           _["y"] = y);
  const NumericVector out_r = predict_fn(loess_fn(formula_fn("y~x"),
                                                  data,
                                                  _["weights"] = weights,
                                                  _["span"] = span));

Could the issue really have been caused my using 'wrap'? What does 'wrap' do 
that would lead to a segfault, that I now avoid by using 'Named'?

Davor
(R 2.10.1, Rcpp 0.7.11, Armadillo 0.9.4)


On 2010-05-11, at 12:35 PM, Davor Cubranic wrote:

> Can anyone tell me about issues I have to look out for when dealing with Rcpp 
> Functions and passing Armadillo objects as arguments? I'm getting "not 
> compatible with INTSXP" and segfault errors when calling the following Rcpp 
> equivalent of R's 'predict(loess(y~x, weights=w, span=span))'. The errors 
> usually only manifest only after several dozen calls.
> 
> Davor
> 
> 
> const vec predict(const vec& x, const vec& y,
>                       const vec& weights, const double span) {
>  Function formula_fn("formula");
>  Function loess_fn("loess");
>  Function predict_fn("predict");
> 
>  List data = List::create(_["x"] = wrap(x),
>                          _["y"] = wrap(y));
>  NumericVector weights_r = wrap(weights);
>  const NumericVector out_r = predict_fn(loess_fn(formula_fn("y~x"),
>                                                 data,
>                                                 weights_r,
>                                                 Named("span") = span));
>  const vec out = vec(out_r.begin(), out_r.size());
>  return out;
> }
> _______________________________________________
> Rcpp-devel mailing list
> [email protected]
> https://lists.r-forge.r-project.org/cgi-bin/mailman/listinfo/rcpp-devel

_______________________________________________
Rcpp-devel mailing list
[email protected]
https://lists.r-forge.r-project.org/cgi-bin/mailman/listinfo/rcpp-devel

Reply via email to