From: nobuyoshi nakada Date: 2005-07-27T17:47:27+09:00 Subject: Re: Ruby on LLP64 Hi, At Wed, 27 Jul 2005 11:51:09 +0900, Yukihiro Matsumoto wrote in [ruby-talk:149652]: > I committed the fix including yours, but I might be too optimistic > about the old platform problem. Linux manual page says: > > HISTORY > > BSD 4.3 Reno has the flag 0, the length modifiers h and L, and the > conversions n, p, E, G, X (with current meaning) and deprecates > D,O,U. It wouldn't be a problem, perhaps. But Index: gc.c =================================================================== RCS file: /cvs/ruby/src/ruby/gc.c,v retrieving revision 1.203 retrieving revision 1.204 diff -U2 -p -u -r1.203 -r1.204 --- gc.c 19 Jun 2005 17:15:46 -0000 1.203 +++ gc.c 27 Jul 2005 07:27:18 -0000 1.204 @@ -985,5 +985,5 @@ gc_mark_children(ptr, lev) default: - rb_bug("rb_gc_mark(): unknown data type 0x%lx(0x%lx) %s", + rb_bug("rb_gc_mark(): unknown data type %p(%p) %s", obj->as.basic.flags & T_MASK, obj, is_pointer_to_heap(obj) ? "corrupted object" : "non object"); The second argument is not a pointer. @@ -1237,5 +1237,5 @@ obj_free(obj) default: - rb_bug("gc_sweep(): unknown data type 0x%lx(%ld)", obj, + rb_bug("gc_sweep(): unknown data type %p(%ld)", obj, RANY(obj)->as.basic.flags & T_MASK); } This message differs from the above, so might confuse. And I suspect vsnprintf.c needs quad_t not only u_quad_t, if _HAVE_SANE_QUAD_ is defined. -- Nobu Nakada