Bug #7449
closedRdoc for obj.object_id
Description
Documentation for return type of obj.object_id is wrong on Windows x64.
C:\Users\phasis>irb
irb(main):001:0> 0.1.object_id
=> -158526706883441454
irb(main):002:0> 0.1.object_id.class
=> Bignum
Here is a patch:
diff --git a/gc.c b/gc.c.new
index d52208d..2a0f26a 100644
--- a/gc.c
+++ b/gc.c.new
@@ -1670,8 +1670,8 @@ id2ref(VALUE obj, VALUE objid)
- Document-method: object_id
- call-seq:
-
-
obj.__id__ -> fixnum
-
-
-
obj.object_id -> fixnum
-
-
-
obj.__id__ -> integer
-
-
-
obj.object_id -> integer
- Returns an integer identifier for obj. The same number will
- be returned on all calls to
id
for a given object, and
-
Updated by luislavena (Luis Lavena) almost 12 years ago
- Category set to doc
- Status changed from Open to Assigned
- Assignee set to drbrain (Eric Hodel)
- Target version set to 2.0.0
Updated by zzak (zzak _) almost 12 years ago
Luis, can you confirm this on windows?
Updated by luislavena (Luis Lavena) almost 12 years ago
zzak (Zachary Scott) wrote:
Luis, can you confirm this on windows?
I don't think the Windows part is relevant but the documentation mistake.
You can confirm this here:
http://rubydoc.info/stdlib/core/Object:object_id
It says "Returns an integer identifier for obj" but then it says fixnum.
I've assigned to Eric Hodel to confirm is a bug in the documentation (or not) and act accordingly.
Thank you.
Updated by drbrain (Eric Hodel) almost 12 years ago
changing to Integer is fine with me. It seems to be a better type.
Updated by zzak (zzak _) almost 12 years ago
eric, you mean Fixnum right?
Or change rb_obj_id implementation to return INT2NUM((SIGNED_VALUE)obj);
Updated by drbrain (Eric Hodel) almost 12 years ago
"return a fixnum" is not a specification of #object_id so the more generic "integer" is better.
Updated by zzak (zzak _) almost 12 years ago
- Status changed from Assigned to Closed
- % Done changed from 0 to 100
This issue was solved with changeset r37987.
Heesob, thank you for reporting this issue.
Your contribution to Ruby is greatly appreciated.
May Ruby be with you.
- gc.c: Documentation for GC, GC::Profiler, ObjectSpace, and
ObjectSpace::WeakMap [ruby-core:50245] [Bug #7449]