Skip to content

Changes in error reporting in r-devel

5 messages · brodie gaslam, Duncan Murdoch, Dirk Eddelbuettel +1 more

#
Minor issue, but the following changed as of R3.3.2 from:

    > a <- function() b()
    > a()
    Error in a() : could not find function "b"

To (at least in R Under development (unstable) (2016-11-20 r71670)):

    Error in b() : could not find function "b"

Notice the "Error in **b**() :" part.  The original error message seems more correct to me, although I can see how you can argue for either one.

Best regards,

B.
#
On 27/11/2016 11:34 AM, brodie gaslam via R-devel wrote:
I'm not seeing that in R-devel r71694.  Could you update and try again?

Duncan Murdoch
#
On 27 November 2016 at 13:20, Duncan Murdoch wrote:
| On 27/11/2016 11:34 AM, brodie gaslam via R-devel wrote:
| > Minor issue, but the following changed as of R3.3.2 from:
| >
| >     > a <- function() b()
| >     > a()
| >     Error in a() : could not find function "b"
| >
| > To (at least in R Under development (unstable) (2016-11-20 r71670)):
| >
| >     Error in b() : could not find function "b"
| >
| > Notice the "Error in **b**() :" part.  The original error message seems more correct to me, although I can see how you can argue for either one.
| 
| I'm not seeing that in R-devel r71694.  Could you update and try again?

I am at r71690 and I don't see it either:

edd at max:~/src/debian RD

R Under development (unstable) (2016-11-24 r71690) -- "Unsuffered Consequences"
Copyright (C) 2016 The R Foundation for Statistical Computing
Platform: x86_64-pc-linux-gnu (64-bit)

R is free software and comes with ABSOLUTELY NO WARRANTY.
You are welcome to redistribute it under certain conditions.
Type 'license()' or 'licence()' for distribution details.

  Natural language support but running in an English locale

R is a collaborative project with many contributors.
Type 'contributors()' for more information and
'citation()' on how to cite R or R packages in publications.

Type 'demo()' for some demos, 'help()' for on-line help, or
'help.start()' for an HTML browser interface to help.
Type 'q()' to quit R.

R> a <- function() b()
R> a()
Error in a() : could not find function "b"
R> 

Dirk
#
I'm running of off the rocker/drd docker image.  As soon as that updates to a fresher version I'll run again, although given what both of you see I must have caught some fleeting state in the particular revision I'm on.

Best regards,

B.




----- Original Message -----
From: Dirk Eddelbuettel <edd at debian.org>
To: Duncan Murdoch <murdoch.duncan at gmail.com>
Cc: brodie gaslam <brodie.gaslam at yahoo.com>; "r-devel at r-project.org" <r-devel at r-project.org>
Sent: Sunday, November 27, 2016 2:44 PM
Subject: Re: [Rd] Changes in error reporting in r-devel
On 27 November 2016 at 13:20, Duncan Murdoch wrote:
| On 27/11/2016 11:34 AM, brodie gaslam via R-devel wrote:
| > Minor issue, but the following changed as of R3.3.2 from:
| >
| >     > a <- function() b()
| >     > a()
| >     Error in a() : could not find function "b"
| >
| > To (at least in R Under development (unstable) (2016-11-20 r71670)):
| >
| >     Error in b() : could not find function "b"
| >
| > Notice the "Error in **b**() :" part.  The original error message seems more correct to me, although I can see how you can argue for either one.
| 
| I'm not seeing that in R-devel r71694.  Could you update and try again?

I am at r71690 and I don't see it either:

edd at max:~/src/debian RD

R Under development (unstable) (2016-11-24 r71690) -- "Unsuffered Consequences"
Copyright (C) 2016 The R Foundation for Statistical Computing
Platform: x86_64-pc-linux-gnu (64-bit)

R is free software and comes with ABSOLUTELY NO WARRANTY.
You are welcome to redistribute it under certain conditions.
Type 'license()' or 'licence()' for distribution details.

  Natural language support but running in an English locale

R is a collaborative project with many contributors.
Type 'contributors()' for more information and
'citation()' on how to cite R or R packages in publications.

Type 'demo()' for some demos, 'help()' for on-line help, or
'help.start()' for an HTML browser interface to help.
Type 'q()' to quit R.

R> a <- function() b()
R> a()

Error in a() : could not find function "b"
R> 

Dirk
#
Its a compiled/interpreted difference. At the moment a small function
like this is only compiled on the second call. That is in flux as we
tune the JIT. But we should try to get rid of the difference. I
actually prefer seeing the more specific call b() since you can get
the larger context from traceback(), and showing b() is more
consistent with argument errors in builin calls.

Best,

luke
On Sun, 27 Nov 2016, Duncan Murdoch wrote: