[Rd] Resizing a named vector crashes R with gctorture(TRUE) (PR#13837)
murdoch at stats.uwo.ca
murdoch at stats.uwo.ca
Thu Jul 16 02:30:09 CEST 2009
On 15/07/2009 8:08 PM, Hervé Pagès wrote:
> Hi,
>
> > x <- c(a=10, b=20)
> > length(x) <- 1
> > x
> a
> 10
>
> But with gctorture turned on, I get:
>
> > gctorture(TRUE)
> > x <- c(a=10, b=20)
> > length(x) <- 1
> > x
> a
> "a" <---- ???
>
> > x <- c(a=10, b=20)
> > length(x) <- 3
>
> *** caught segfault ***
> address (nil), cause 'unknown'
>
> Possible actions:
> 1: abort (with core dump, if enabled)
> 2: normal R exit
> 3: exit R without saving workspace
> 4: exit R saving workspace
>
> This seems to have been around for a while (I get this with R 2.10,
> 2.9 and 2.8). Note that I don't get this with an unnamed vector.
>
> This problem affects the methods package. I found it while
> troubleshooting the "Protection stack overflow" I reported earlier
> (see https://stat.ethz.ch/pipermail/r-devel/2009-July/054030.html)
> but I can't tell yet whether the 2 issues are related or not.
That's clearly a bug (reproducible in today's R-devel build); I've cc'd
this reply to r-bugs. I'll take a look and see if I can track it down.
> It would be nice to see some reaction from the R developers
> about these issues. Thanks in advance!
You should post them as bug reports if they are as clearly bugs as this
one; otherwise they can easily get lost in the noise. I'm not going to
offer to look into the other one; I don't know the insides of the
methods package.
Duncan Murdoch
>
> H.
>
>
> hpages at fhcrc.org wrote:
>> Hi,
>>
>> > gctorture(TRUE)
>> > setGeneric("foo", function(x, y) standardGeneric("foo"))
>> [1] "foo"
>> > setMethod("foo", c("ANY", "ANY"),
>> + function(x, y) cat("calling foo,ANY,ANY method\n")
>> + )
>> Error: protect(): protection stack overflow
>>
>> Sorry this is something I already reported one week ago here
>> https://stat.ethz.ch/pipermail/r-devel/2009-July/053973.html
>> but I just had a 2nd look at it and realized that the problem
>> can in fact be reproduced out of the .onLoad() hook. So I'm
>> reporting it again with a different subject.
>>
>> See my sessionInfo() below. Thanks!
>> H.
>>
>>
>>> sessionInfo()
>> R version 2.10.0 Under development (unstable) (2009-06-26 r48837)
>> x86_64-unknown-linux-gnu
>>
>> locale:
>> [1] LC_CTYPE=en_CA.UTF-8 LC_NUMERIC=C
>> [3] LC_TIME=en_CA.UTF-8 LC_COLLATE=en_CA.UTF-8
>> [5] LC_MONETARY=C LC_MESSAGES=en_CA.UTF-8
>> [7] LC_PAPER=en_CA.UTF-8 LC_NAME=C
>> [9] LC_ADDRESS=C LC_TELEPHONE=C
>> [11] LC_MEASUREMENT=en_CA.UTF-8 LC_IDENTIFICATION=C
>>
>> attached base packages:
>> [1] stats graphics grDevices utils datasets methods base
>>
>> ______________________________________________
>> R-devel at r-project.org mailing list
>> https://stat.ethz.ch/mailman/listinfo/r-devel
>
More information about the R-devel
mailing list