# [Rcpp-devel] Irregular crash with rcpp and inline

Marie Auger-Methe marie.augermethe at gmail.com
Fri Apr 13 12:31:29 CEST 2012

```Hi,

I am new to Rcpp, c++, and inline. I have created a simple test function
which works some of the times but not all the times. It generally
crashes when I run it with a large sample size or after calling the
function multiple times. When it doesn't work, it crashes R completely
and so I have no error message that can help me figure out what caused
the problem.
Here is my code:

library(inline)
library(Rcpp)
library(CircStats)

mycppfx <- '
#include <cmath>

// Input values
NumericVector distc(dist);
NumericVector rtac(rta);
int nc = distc.size();
NumericVector dx(nc);
NumericVector dy(nc);
NumericMatrix coord(nc+1,2);

// Transforming relative turning angle into absolute turning angle
NumericVector ata(nc);
ata[0] = fmod(rtac[0],2*PI);
for(int j = 1; j < nc+1; j++){
ata[j] = fmod(ata[j-1] + rtac[j],2*PI);
}

/////////////////////////////////
//Change into cartesian coordinates

// Calculate the displacement in each direction

dx = distc * cos(ata);
dy = distc * sin(ata);

nc += 1;

for(int j = 1; j < nc; j++){
coord(j,0) = coord(j-1, 0) + dx[j-1];
coord(j,1) = coord(j-1, 1) + dy[j-1];
}

return coord;
'
myfx <- cxxfunction(signature(dist ="NumericVector",
rta="NumericVector"),
body = mycppfx, plugin = "Rcpp")

n <- 1000
dist <- rexp(n,10)
rta <- rvm(n,0,1)

res <- myfx(dist,rta)

Any tips would be appreciated,

Marie
```