diff options
author | matz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2005-07-27 07:27:19 +0000 |
---|---|---|
committer | matz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2005-07-27 07:27:19 +0000 |
commit | 759a63b6a3355b85e1e52b78810d66fd9ee7b838 (patch) | |
tree | ec585ba5c983af89ff164ef8204bde6ae9b0add5 /missing/vsnprintf.c | |
parent | 2ea2d95e8196b61a43915870fb2e1eefc3fc2554 (diff) | |
download | ruby-759a63b6a3355b85e1e52b78810d66fd9ee7b838.tar.gz |
* parse.y (lambda): Perl6 style -> lambda expression. [NEW]
[VERY EXPERIMENTAL]
* gc.c (id2ref): must not assign pointers to long int. use
LONG_LONG instead if SIZEOF_LONG < SIZEOF_VOIDP.
[ruby-talk:149645]
* ruby.h: use LONG_LONG to simplify the change.
[ruby-talk:149645]
* dir.c (dir_each): rewinddir(3) before iteration.
[ruby-talk:149628]
* eval.c (rb_f_throw): replace all '0x%lx' by '%p'.
[ruby-talk:149553]
* missing/vsnprintf.c (BSD_vfprintf): '%p' need to handle 64bit
size pointer. [ruby-talk:149553]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8847 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'missing/vsnprintf.c')
-rw-r--r-- | missing/vsnprintf.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/missing/vsnprintf.c b/missing/vsnprintf.c index 1fcbb36bfd..c218e2d61b 100644 --- a/missing/vsnprintf.c +++ b/missing/vsnprintf.c @@ -789,14 +789,19 @@ fp_begin: _double = va_arg(ap, double); * defined manner.'' * -- ANSI X3J11 */ +#ifdef _HAVE_LLP64_ + uqval = (u_long)va_arg(ap, void *); + flags = (flags) | QUADINT | HEXPREFIX; +#else ulval = (u_long)va_arg(ap, void *); - base = 16; - xdigs = "0123456789abcdef"; #ifdef _HAVE_SANE_QUAD_ flags = (flags & ~QUADINT) | HEXPREFIX; #else /* _HAVE_SANE_QUAD_ */ flags = (flags) | HEXPREFIX; #endif /* _HAVE_SANE_QUAD_ */ +#endif + base = 16; + xdigs = "0123456789abcdef"; ch = 'x'; goto nosign; case 's': |