There are a number of situations where R creates source references:
Reading R code from a file with source()
and parse()
might save
source references inside calls to function
and {
.
sys.call()
includes a source reference if possible.
Creating a closure stores the source reference from the call to
function
, if any.
These source references take up space and might cause a number of
issues. zap_srcref()
recursively walks through expressions and
functions to remove all source references.
zap_srcref(x)
An R object. Functions and calls are walked recursively.