> rif <[EMAIL PROTECTED]> writes:
> 
> > I also tried a call of the form (in my program)
> > 
> > (system:vector-sap array)
> > 
> > But this causes segmentation violations inside the called C
> > function, which I don't get if I allocate an alien object of the
> > same size and pass that.  Any idea what to do?
> 
> This might be due to a GC happening at the wrong moment. At the end of
> section 8.7.5 in the CMUCL manual they say
> 
>   "In this example, it may be useful to wrap the inner let expression
>    in an unwind-protect that first turns off garbage collection and
>    then turns garbage collection on afterwards. This will prevent
>    garbage collection from moving x and y after we have obtained the
>    (now erroneous) addresses but before the call to dotprod is made."
> 
> Did you do that?
> 
> Edi.
> 

I didn't do this, but I doubt that's the problem.  I only call the
function once, and it's not doing any consing, and I get something
printed to the screen everytime garbage collection happens, and it
doesn't seem to have happened.  But I'll check more tomorrow and see
if I can figure out what's going on.

rif

Reply via email to