[Rd] Recursion error after upgrade to R_2.11.1 [Sec=Unclassified]

Troy Robertson Troy.Robertson at aad.gov.au
Thu Oct 7 03:12:37 CEST 2010


Hi all,

After no replies to my previous message I thought I might show some code to demonstrate the change and again seek any explanation for the error now thrown by my code after upgrading from 2.10.1 to 2.11.1.

Thanks
Troy
--------------------------------------------------------
setClass("PortableObject",
        representation(test1    = "character"),

        prototype(      test1   = ""),
          contains = ".environment"
)

setMethod("initialize", "PortableObject",
    function(.Object, ..., .xData=new.env(parent=emptyenv())) {
                .Object <- callNextMethod(.Object, ..., .xData=.xData)

                .Object at test1 <- "Foo"
                # Following line works under 2.10.1 but now throws
                # Error: evaluation nested too deeply: infinite recursion / options(expressions=)?
                #####.Object[["test2"]] <- "Bar"
                # The following does what I want though
                .Object$test3 <- "Baa"

                return(.Object)
        }
)

e <- new("PortableObject")

alterEGo <- function(o = "EPOCObject") {
        o at test1 <- "Boo"

        # Following line works under 2.10.1 but now throws
        # Error: evaluation nested too deeply: infinite recursion / options(expressions=)?
        ####o[["test2"]] <- "Who"
        # The following does what I want though
        o$test3 <- "Hoo"

        # NOTE: No return
}

alterEGo(e)
e at test1
e$test2
e[["test3"]]
e at .xData[["test3"]]
___________________________________________________________________________

    Australian Antarctic Division - Commonwealth of Australia
IMPORTANT: This transmission is intended for the addressee only. If you are not the
intended recipient, you are notified that use or dissemination of this communication is
strictly prohibited by Commonwealth law. If you have received this transmission in error,
please notify the sender immediately by e-mail or by telephoning +61 3 6232 3209 and
DELETE the message.
        Visit our web site at http://www.antarctica.gov.au/
___________________________________________________________________________



More information about the R-devel mailing list