Can someone explain a message of this form from an rscript execution: Note: no visible global function definition for 'foo' This happens right at the start of execution. 'foo' is only executed in a branch of an 'if' that is not reached with the particular arguments passed to the script. If I source the script in a shell and run it I do not get the message. Mick Jordan [[alternative HTML version deleted]]
On 9 April 2016 at 10:28, Mick Jordan wrote: | Can someone explain a message of this form from an rscript execution: | | Note: no visible global function definition for 'foo' | | | This happens right at the start of execution. 'foo' is only executed in | a branch of an 'if' that is not reached with the particular arguments | passed to the script. If I source the script in a shell and run it I do | not get the message. Guess: your shell session has an object foo. It will be referenced. Your Rscript, running from 'empty' never defines foo. And codetools tells you that because more often than not it is error. Sometimes codetools gets it wrong too, ie with you peek into data structure via evaluation tricks or with simple with(mydataframe, columnOne). Dirk -- http://dirk.eddelbuettel.com | @eddelbuettel | edd at debian.org
On 4/9/16 10:54 AM, Dirk Eddelbuettel wrote:> On 9 April 2016 at 10:28, Mick Jordan wrote: > | Can someone explain a message of this form from an rscript execution: > | > | Note: no visible global function definition for 'foo' > | > | > | This happens right at the start of execution. 'foo' is only executed in > | a branch of an 'if' that is not reached with the particular arguments > | passed to the script. If I source the script in a shell and run it I do > | not get the message. > > Guess: your shell session has an object foo. It will be referenced. > > Your Rscript, running from 'empty' never defines foo. And codetools tells > you that because more often than not it is error. Sometimes codetools gets > it wrong too, ie with you peek into data structure via evaluation tricks or > with simple with(mydataframe, columnOne). > >No, the symbol is acytually defined in a package that is not loaded when running under GnuR. But I still don't understand what is even trying to find the symbol in an execution path that doesn't reference it. I'm not sure what you mean by codetools, but is it examining my source code somehow before it is executed? That would be unexpected at best. Mick