[R] Problems with eval() in connection with match.call()

Søren Højsgaard Soren.Hojsgaard at agrsci.dk
Tue Jul 5 01:51:28 CEST 2005

Dear all, I have a problem when passing parms from one function to another when the argument list is just '...'. Consider this example:
 xx <- 111222
bar <- function(...){
  cl <- match.call(expand.dots=TRUE)
  x <- eval(cl$x)

> bar(x = xx)
> Error in eval(expr, envir, enclos) : Object "xx" not found

My expectation was, that xx would be evaluated to 111222 in foo before being passed on to bar, but obviously it is not so. Should I do something explicitely in foo() to 'evaluate' xx or need I do something special in bar()?? 
Thanks in advance, Søren

More information about the R-help mailing list