Hello,

I came across a segmentation fault when trying to get a matrix from varf when using a 3d surface mesh. The following code gives the error, using the torus given as example in the doc. I have tried with both FreeFem++4.5 and the recent 4.6.

Any ideas on how to solve this ?

Thank you.

```
load"msh3"
real R = 3, r=1;
real h = 0.2; //
int nx = R*2*pi/h;
int ny = r*2*pi/h;
func torex= (R+r*cos(y*pi*2))*cos(x*pi*2);
func torey= (R+r*cos(y*pi*2))*sin(x*pi*2);
func torez= r*sin(y*pi*2);
meshS ThS=square3(nx,ny,[torex,torey,torez],orientation=-1) ;
fespace Vh(ThS,[P1,P1]);
macro grad(u) [dx(u),dy(u),dz(u)] //EOM
func f1 = 10;
func f2 = -15;
varf vP([u1,u2],[v1,v2]) = int2d(ThS)(grad(u1)'*grad(v1)+ grad(u2)'*grad(v2)) - int2d(ThS)(f1*v1+f2*v2);
matrix A = vP(Vh,Vh);
```