I downloaded R v2.1.1 earlier this morning to compile under Fedora Core 4.
It compiled without incident, but 'make check' failed. Below is the
relevant
part of its report. Is this a known problem?
I used a locally compiled version of GCC v4.0.0 that reports
[kent at d89h102 R-2.1.1]$ gcc -v
Using built-in specs.
Target: i686-pc-linux-gnu
Configured with: ../gcc-4.0.0/configure --enable-languages=c,c++,f95,java
Thread model: posix
gcc version 4.0.0
[kent at d89h102 R-2.1.1]$
Kent Holsinger
kent at darwin.eeb.uconn.edu
make[3]: Entering directory `/home/kent/source-arc/R-2.1.1/tests'
running code in 'eval-etc.R' ... OK
comparing 'eval-etc.Rout' to './eval-etc.Rout.save'
...2a3,157> > #### eval / parse / deparse / substitute etc
> >
> > ##- From: Peter Dalgaard BSA <p.dalgaard at biostat.ku.dk>
> > ##- Subject: Re: source() / eval() bug ??? (PR#96)
> > ##- Date: 20 Jan 1999 14:56:24 +0100
> > e1 <- parse(text='c(F=(f <- .3), "Tail area" = 2 *
if(f < 1) 30 else 90)')[[1]]
> > e1
> c(F = (f <- 0.3), "Tail area" = 2 * if (f < 1) 30 else 90)
> > str(eval(e1))
> Named num [1:2] 0.3 60
> - attr(*, "names")= chr [1:2] "F" "Tail
area"
> > mode(e1)
> [1] "call"
> >
> > ( e2 <- quote(c(a=1,b=2)) )
> c(a = 1, b = 2)
> > names(e2)[2] <- "a b c"
> > e2
> c("a b c" = 1, b = 2)
> > parse(text=deparse(e2))
> expression(c("a b c" = 1, b = 2))
> >
> > ##- From: Peter Dalgaard BSA <p.dalgaard at biostat.ku.dk>
> > ##- Date: 22 Jan 1999 11:47
> >
> > ( e3 <- quote(c(F=1,"tail area"=pf(1,1,1))) )
> c(F = 1, "tail area" = pf(1, 1, 1))
> > eval(e3)
> F tail area
> 1.0 0.5
> > names(e3)
> [1] "" "F" "tail area"
> >
> > names(e3)[2] <- "Variance ratio"
> > e3
> c("Variance ratio" = 1, "tail area" = pf(1, 1, 1))
> > eval(e3)
> Variance ratio tail area
> 1.0 0.5
> >
> >
> > ##- From: Peter Dalgaard BSA <p.dalgaard at biostat.ku.dk>
> > ##- Date: 2 Sep 1999
> >
> > ## The first failed in 0.65.0 :
> > attach(list(x=1))
> > evalq(dim(x) <- 1,as.environment(2))
> > dput(get("x", env=as.environment(2)),
control="all")
> structure(1, .Dim = as.integer(1))
> >
> > e <- local({x <- 1;environment()})
> > evalq(dim(x) <- 1,e)
> > dput(get("x",env=e), control="all")
> structure(1, .Dim = as.integer(1))
> >
> > ### Substitute, Eval, Parse, etc
> >
> > ## PR#3 : "..." matching
> > ## Revised March 7 2001 -pd
> > A <- function(x, y, ...) {
> + B <- function(a, b, ...) { match.call() }
> + B(x+y, ...)
> + }
> > (aa <- A(1,2,3))
> B(a = x + y, b = 3)
> > all.equal(as.list(aa),
> + list(as.name("B"), a = expression(x+y)[[1]], b = 3))
> [1] TRUE
> > (a2 <- A(1,2, named = 3)) #A(1,2, named = 3)
> B(a = x + y, named = 3)
> > all.equal(as.list(a2),
> + list(as.name("B"), a = expression(x+y)[[1]], named =
3))
> [1] TRUE
> >
> > CC <- function(...) match.call()
> > DD <- function(...) CC(...)
> > a3 <- DD(1,2,3)
> > all.equal(as.list(a3),
> + list(as.name("CC"), 1, 2, 3))
> [1] TRUE
> >
> > ## More dots issues: March 19 2001 -pd
> > ## Didn't work up to and including 1.2.2
> >
> > f <- function(...) {
> + val <- match.call(expand.dots=F)$...
> + x <- val[[1]]
> + eval.parent(substitute(missing(x)))
> + }
> > g <- function(...) h(f(...))
> > h <- function(...) list(...)
> > k <- function(...) g(...)
> > X <- k(a=)
> > all.equal(X, list(TRUE))
> [1] TRUE
> >
> > ## Bug PR#24
> > f <- function(x,...) substitute(list(x,...))
> > deparse(f(a, b)) == "list(a, b)" &&
> + deparse(f(b, a)) == "list(b, a)" &&
> + deparse(f(x, y)) == "list(x, y)" &&
> + deparse(f(y, x)) == "list(y, x)"
> [1] TRUE
> >
> > tt <- function(x) { is.vector(x); deparse(substitute(x)) }
> > a <- list(b=3); tt(a$b) == "a$b" # tends to break when
...
> [1] TRUE
> >
> >
> > ## Parser:
> > 1 <
> + 2
> [1] TRUE
> > 2 <> + 3
> [1] TRUE
> > 4 >> + 3
> [1] TRUE
> > 3 >
> + 2
> [1] TRUE
> > 2 => + 2
> [1] TRUE
> > ## bug till ...
> > 1 !> + 3
> [1] TRUE
> >
> > all(NULL == NULL)
> [1] TRUE
> >
> > ## PR #656 (related)
> > u <- runif(1); length(find(".Random.seed")) == 1
> [1] TRUE
> >
> > MyVaR <<- "val";length(find("MyVaR")) == 1
> [1] TRUE
> > rm(MyVaR); length(find("MyVaR")) == 0
> [1] TRUE
> >
> >
> > ## Martin Maechler: rare bad bug in sys.function() {or match.arg()}
(PR#1409)
> > callme <- function(a = 1, mm = c("Abc", "Bde"))
{
> + mm <- match.arg(mm); cat("mm = "); str(mm) ; invisible()
> + }
> > ## The first two were as desired:
> > callme()
> mm = chr "Abc"
> > callme(mm="B")
> mm = chr "Bde"
> > mycaller <- function(x = 1, callme = pi) { callme(x) }
> > mycaller()## wrongly gave `mm = NULL' now = "Abc"
> mm = chr "Abc"
make[3]: *** [eval-etc.Rout] Error 1
make[3]: Leaving directory `/home/kent/source-arc/R-2.1.1/tests'
make[2]: *** [test-Specific] Error 2
make[2]: Leaving directory `/home/kent/source-arc/R-2.1.1/tests'
make[1]: *** [test-all-basics] Error 1
make[1]: Leaving directory `/home/kent/source-arc/R-2.1.1/tests'
make: *** [check] Error 2
<<insert bug report here>>
--please do not edit the information below--
Version:
platform = i686-pc-linux-gnu
arch = i686
os = linux-gnu
system = i686, linux-gnu
status =
major = 2
minor = 1.1
year = 2005
month = 06
day = 20
language = R
Locale:
LC_CTYPE=en_US.UTF-8;LC_NUMERIC=C;LC_TIME=en_US.UTF-8;LC_COLLATE=en_US.UTF-8;LC_MONETARY=en_US.UTF-8;LC_MESSAGES=en_US.UTF-8;LC_PAPER=C;LC_NAME=C;LC_ADDRESS=C;LC_TELEPHONE=C;LC_MEASUREMENT=C;LC_IDENTIFICATION=C
Search Path:
.GlobalEnv, package:methods, package:stats, package:graphics,
package:grDevices, package:utils, package:datasets, Autoloads, package:base