[Rd] eval(match.call()) (PR#9339)

Peter Dalgaard p.dalgaard at biostat.ku.dk
Fri Nov 3 21:15:49 CET 2006


harringt at stat.ubc.ca writes:

> Full_Name: Justin Harrington
> Version: 2.4.0
> OS: Fedora Core 6
> Submission from: (NULL) (142.103.121.203)
> 
> 
> When I type the (albeit stupid) command
> 
> eval(match.call())
> 
> R crashes with the following messages (truncated):
> 
> *** buffer overflow detected ***: /usr/lib/R/bin/exec/R terminated

Yes, don't do that then ;-)

Part of the puzzle is that

> match.call()
match.call()

which looks like something with potential for infinite recursion, but
that doesn't seem to be issue since

> f <- function(call = sys.call(sys.parent()))call
> f()
f()
> eval(f())
f()

does not exhibit the same crash. And indeed

> x <- quote(match.call())
> eval(x)
*** buffer overflow detected ***: /usr/lib/R/bin/exec/R terminated
======= Backtrace: =========
/lib/libc.so.6(__chk_fail+0x41)[0x1f1161]
/lib/libc.so.6[0x1f0617]

does look like something that just Should Not Happen...


> The complete output is available at http://md.stat.ubc.ca/Routput.txt
> 
> For reference, here are the results from version:
> 
> platform       i686-redhat-linux-gnu
> arch           i686
> os             linux-gnu
> system         i686, linux-gnu
> status
> major          2
> minor          4.0
> year           2006
> month          10
> day            03
> svn rev        39566
> language       R
> version.string R version 2.4.0 (2006-10-03)
> 
> and my version of R was installed using yum from the fedora repositories.

Ah, thanks. Sufficient information for once...

-- 
   O__  ---- Peter Dalgaard             Øster Farimagsgade 5, Entr.B
  c/ /'_ --- Dept. of Biostatistics     PO Box 2099, 1014 Cph. K
 (*) \(*) -- University of Copenhagen   Denmark          Ph:  (+45) 35327918
~~~~~~~~~~ - (p.dalgaard at biostat.ku.dk)                  FAX: (+45) 35327907



More information about the R-devel mailing list