Thanks for spotting this, I've removed the old code in deparse so that now the comment attribute is really not printed, as documented in ?comment. The removed code was needed at the time when comments were collected by the parser and stored in the comment attribute, but that is no longer the case, now comments are part of source references.

Best
Tomas

On 11/13/19 4:15 AM, William Dunlap via R-devel wrote:
I suspect that the parser used it to store comments, including the initial
"#", before R started using the srcref attribute.  (S also stored comments
in the parse tree.)

Bill Dunlap
TIBCO Software
wdunlap tibco.com


On Tue, Nov 12, 2019 at 4:16 PM Duncan Murdoch <murdoch.dun...@gmail.com>
wrote:

On 12/11/2019 5:01 p.m., William Dunlap via R-devel wrote:
In general R doesn't print the "comment" attribute of an object
     > structure(1:3, comment=c("a comment", "another comment"))
     [1] 1 2 3
but if the object is a call it prints it in an unusual format
     > structure(quote(func(arg)), comment=c("a comment", "another
comment"))
     a comment
     another comment
     func(arg)

What is the rationale for the special treatment of calls?
It was there in revision 2 of src/main/deparse.c in 1997.  (For those
unfamiliar with R history:  the current revision of R is 77405.  That
particular file has been revised 248 times since rev 2.)

I suspect either nobody has noticed it before, or nobody had the nerve
to touch it.

Duncan Murdoch

        [[alternative HTML version deleted]]

______________________________________________
R-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel

______________________________________________
R-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel

Reply via email to