There are a number of situations where R creates source references:
Reading R code from a file with
source()
andparse()
might save source references inside calls tofunction
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.