[Rd] object.size() bug?

Duncan Murdoch murdoch at stats.uwo.ca
Fri Aug 5 14:53:56 CEST 2005


On 8/5/2005 8:39 AM, Roger D. Peng wrote:
> Would it make sense for 'object.size()' to do the same thing for 
> external pointers as it does for environments?

I would think so.  For those who haven't looked, this returns the size 
of the SEXP for the environment and its attributes, but does not attempt 
to work out the size of the contents of the environment.  This makes 
sense, because environments are references.  External pointers are also 
references, so their object size should be the size of the pointer 
(which is probably 28 bytes; R pointers carry a lot of baggage!), with 
no attempt to say anything about the external thing they point to.

Duncan Murdoch


> -roger
> 
> Martin Maechler wrote:
>>>>>>>"Paul" == Paul Roebuck <roebuck at odin.mdacc.tmc.edu>
>>>>>>>    on Thu, 4 Aug 2005 00:29:03 -0500 (CDT) writes:
>> 
>> 
>>     Paul> Can someone confirm the following as a problem:
>> 
>> Yes, I can.  No promiss for a fix in the very near future
>> though.
>> 
>> Martin Maechler, ETH Zurich
>> 
>> 
>>>>Can someone confirm the following as a problem:
>>>>
>>>>R> setClass("Foo", representation(.handle = "externalptr"))
>>>>R> object.size(new("Foo"))
>>>>Error in object.size(new("Foo")) : object.size: unknown type 22
>>>>R> R.version.string
>>>>[1] "R version 2.1.1, 2005-06-20"
>>>>
>>>>R-2.1.1/src/include/Rinternals.h
>>>>#define EXTPTRSXP   22    /* external pointer */
>>>>
>>>>R-2.1.1/src/main/size.c:
>>>>objectsize(SEXP s) has no case for external pointers
>> 
>> 
>> ______________________________________________
>> R-devel at r-project.org mailing list
>> https://stat.ethz.ch/mailman/listinfo/r-devel
>> 
>



More information about the R-devel mailing list