Re: [Rd] .Call and Segmentation Fault

From: Prof Brian Ripley <>
Date: Sun 28 Aug 2005 - 06:20:44 GMT

On Sat, 27 Aug 2005, Ricardo Luiz Andrade Abrantes wrote:

> Hi!
> Yes, I am returning a SEXP from the functions called from R, and the
> problem occurs before (thousands of iterations before) the return
> point.
> In fact I runned valgrind into R and when I call ".Call(...) " I got
> many errors like:
> ==4324== Use of uninitialised value of size 8
> ==4324== at 0x1CB0766D: tnls_ (gencan.f:4101)
> ==4324== by 0x1CB01962: gencan_ (gencan.f:1876)
> ==4324== by 0x1CAFECA5: easygencan_ (gencan.f:440)
> ==4324== by 0x1CB0B47D: algencan_ (algencan.f:517)
> ==4324== by 0x1CB09E74: easyalgencan_ (algencan.f:76)
> ==4324== by 0x1CAFE5B3: main (algencanma.c:808)
> what does not happens when I compile the algencanma as a regular
> program (not a library) and run it from shell. Valgrind does not find
> anything wrong when I run the program directly, except 2 missing
> free() calls.
> Do you have any ideas where the problem lies (R .Call function or C program)?

It cannot be .Call: your .Call passed no parameters so there was nothing to be uninitialized. I did ask you why you were doing that.

.Call is very heavily tested in lots of R applications, so the prior probability of innocence must be very high.

Brian D. Ripley,        
Professor of Applied Statistics,
University of Oxford,             Tel:  +44 1865 272861 (self)
1 South Parks Road,                     +44 1865 272866 (PA)
Oxford OX1 3TG, UK                Fax:  +44 1865 272595

______________________________________________ mailing list
Received on Sun Aug 28 16:24:36 2005

This archive was generated by hypermail 2.1.8 : Mon 20 Feb 2006 - 03:21:19 GMT