[Rd] BUG?: A copy of base::`+` (primitive) is not a clone but a "pointer"
Henrik Bengtsson
henr|k@bengt@@on @end|ng |rom gm@||@com
Sun Nov 17 23:31:07 CET 2019
$ R --vanilla
R version 3.6.1 (2019-07-05) -- "Action of the Toes"
Copyright (C) 2019 The R Foundation for Statistical Computing
Platform: x86_64-pc-linux-gnu (64-bit)
...
> str(base::`+`)
function (e1, e2)
> plus <- structure(base::`+`, class = "plus")
> str(plus)
function (e1, e2)
- attr(*, "class")= chr "plus"
## Hmm ...
> str(base::`+`)
function (e1, e2)
- attr(*, "class")= chr "plus"
> class(base::`+`) <- NULL
> str(base::`+`)
function (e1, e2)
## Hmm ...
> str(plus)
function (e1, e2)
Even without assigning to `plus`, you get this behavior:
$ R --vanilla
> structure(base::`+`, class = "plus")
function (e1, e2) .Primitive("+")
attr(,"class")
[1] "plus"
# Hmm...
> str(base::`+`)
function (e1, e2)
- attr(*, "class")= chr "plus"
Looks to be the case for common (all?) .Primitive functions. Is this
expected? Should I report this one to BugZilla?
/Henrik
More information about the R-devel
mailing list