That's about it. The plan is to modify the interpreter to do the same
so the inconsistency will go away. Code that is affected by this is
making assumptions that it should not.
Best,
luke
On Fri, 11 Nov 2016, Winston Chang wrote:
It looks like the byte compiler is optimizing local() to an
imm
It looks like the byte compiler is optimizing local() to an
immediately-invoked function, instead of using eval() and substitute(). I
don't know if that's exactly how it's implemented internally, but that's
what it looks like here:
compiler::enableJIT(0)
fun <- function(x) {
local(sys.calls())
I noticed some problems that cropped in the latest versions of R-devel
(2016-11-08 r71639 in my case) for one of my packages. I _think_ I have
narrowed it down to the changes to what gets byte-compiled by default. The
following example run illustrates the problem I'm having:
compiler::enabl