nobu
52cd11a305
* bignum.c (rb_big2str0): prevent working clone from
...
GC. [exerb-dev:0578]. patched by MURASE Masamitsu
<masamitsu.murase AT gmail.com> at [exerb-dev:0580]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@35325 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-04-14 09:01:05 +00:00
knu
d040bf7593
Backport r23730; fixes #2462 .
...
* numeric.c (flo_cmp): Infinity is greater than any bignum
number. [ruby-dev:38672]
* bignum.c (rb_big_cmp): ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@32573 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-07-17 08:53:08 +00:00
mrkn
c0ec23d127
* bignum.c (rb_big2dbl), test/ruby/test_bignum.rb (test_to_f): A negative Bignum out of Float range should be converted to -Infinity. [ruby-core:30492] [Bug #3362 ]
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@28324 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-06-15 01:47:19 +00:00
akr
53572f5721
* pack.c (pack_pack): call rb_quad_pack to preserve RangeError.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@27739 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-05-11 13:56:34 +00:00
akr
c5d882495d
* pack.c: backport integer pack/unpack from 1.9 for [ruby-core:21937].
...
* configure.in: backport RUBY_DEFINT and fixed size integer checks.
* ruby.h: include stdint.h if available.
* bignum.c (rb_big_pack): defined..
(rb_big_unpack): defined.
* intern.h (rb_big_pack): declared.
(rb_big_unpack): declared.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@27725 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-05-10 20:53:33 +00:00
marcandre
ea1b7a9577
* time.c: rdoc fix for <=>
...
* array.c: ditto
* bignum.c: ditto
* compar.c: ditto
* file.c: ditto
* numeric.c: ditto
* string.c: rdoc fix for <=> and casecmp
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@25523 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-10-28 05:01:29 +00:00
nobu
0f699af36e
* bignum.c (big_lshift, big_rshift): return Bignum always without
...
normalization. [ruby-dev:38680]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@23740 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-06-18 23:14:27 +00:00
knu
e8b0f17319
* array.c (ary_resize_capa): Remove an unused function.
...
* array.c, bignum.c, dir.c, enumerator.c, gc.c, io.c, numeric.c,
object.c, re.c, string.c, struct.c: Mixing two styles is not a
good thing. Stick with the K&R style in 1.8.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@23052 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-03-23 12:07:23 +00:00
nobu
e2ec68e53a
* bignum.c (rb_big2str0, bigsqr): made interruptible. [ruby-Bugs-20622]
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@18211 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-25 09:04:19 +00:00
nobu
27b8a31b4c
* bignum.c (big2ulong, big2ull): constified.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@18056 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-13 20:09:09 +00:00
matz
9ee1ced6d9
* bignum.c (rb_big_div): Bignum#div should return integer for
...
floating number operand.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@15882 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-01 11:33:27 +00:00
nobu
6b7054a006
* bignum.c (rb_cstr_to_inum): treat successive underscores as
...
nondigit. [ruby-dev:34089]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@15799 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-03-19 05:36:43 +00:00
nobu
e811e5e472
* bignum.c (big2str_find_n1): check integer overflow.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@15646 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-02-29 17:35:11 +00:00
nobu
350e8342f9
* bignum.c (BIGZEROP): fix for longer Bignum zeros. [ruby-Bugs-17454]
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@15575 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-02-22 10:50:21 +00:00
nobu
a9a081793c
* bignum.c (rb_big_lshift, rb_big_rshift, rb_big_aref): removed excess
...
arguments.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@15574 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-02-22 07:09:55 +00:00
tadf
48925716c4
* bignum.c (rb_cstr_to_inum): '0_2' is a valid representation.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@15343 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-01-30 13:07:45 +00:00
nobu
2bd1fa4ace
* bignum.c (rb_cstr_to_inum): an underscore succeeding after octal
...
prefix is allowed. [ruby-core:14139]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@14311 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-19 01:52:31 +00:00
nobu
786a92feb0
* bignum.c (rb_cstr_to_inum): trailing spaces may exist at sqeezing
...
preceeding 0s. [ruby-core:13873]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@14095 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-04 02:23:52 +00:00
nobu
b76bf9f66f
* bignum.c (rb_big2str0): do not clobber space for sign.
...
* sprintf.c (remove_sign_bits): extends sign bit first.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@14037 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-11-28 00:51:44 +00:00
matz
415a9700fe
* bignum.c (bigtrunc): RBIGNUM(x)->len may be zero. out of bound
...
access. [ruby-dev:31404]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@13069 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-08-16 13:45:37 +00:00
akr
ea4ddd4b18
* bignum.c (big_lshift): make shift offset long type.
...
(big_rshift): ditto.
(rb_big_lshift): ditto.
(big_rshift): ditto.
[ruby-dev:31434]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@13061 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-08-16 04:58:06 +00:00
nobu
95ddfca802
* bignum.c (rb_big_aref): check for Bignum index range.
...
[ruby-dev:31271]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@12855 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-07-30 02:16:42 +00:00
nobu
9bf8a37572
* bignum.c (rb_big_lshift, rb_big_rshift): separated functions
...
to get rid of infinite recursion. fixed calculation in edge
cases. [ruby-dev:31244]
* numeric.c (rb_fix_lshift, rb_fix_rshift): ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@12814 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-07-19 05:38:48 +00:00
nobu
f2dd1b158e
* bignum.c (rb_big_pow): refine overflow check. [ruby-dev:31242]
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@12813 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-07-18 07:57:45 +00:00
nobu
7da059bddb
* bignum.c (rb_big_pow): removed invariant variable. [ruby-dev:31236]
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@12802 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-07-15 15:26:12 +00:00
nobu
26b5fd1e7b
* bignum.c (rb_big_neg): SIGNED_VALUE isn't in 1.8.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@12801 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-07-15 15:00:00 +00:00
nobu
b47daf811a
* bignum.c (get2comp): do nothing for empty Bignum. [ruby-dev:31225]
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@12796 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-07-15 12:07:46 +00:00
nobu
fa1bfaf741
* bignum.c (rb_cstr_to_inum): check leading non-digits.
...
[ruby-core:11691]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@12795 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-07-15 10:05:37 +00:00
nobu
dcfd7ec4b6
* bignum.c (get2comp): do nothing for empty Bignum. [ruby-dev:31225]
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@12790 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-07-14 19:42:25 +00:00
nobu
ab1254448d
* bignum.c: purged trailing spaces.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@12264 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-05-09 03:49:18 +00:00
nobu
8624d6b3f6
* bignum.c (Init_Bignum), numeric.c (Init_Numeric): added fdiv as
...
aliases of quo. [ruby-dev:30771]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@12263 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-05-09 03:28:08 +00:00
nobu
8dcf078f72
* bignum.c (rb_big_quo): now calculate in integer. [ruby-dev:30753]
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@12261 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-05-09 02:54:14 +00:00
nobu
952e281a2a
* bignum.c (rb_big_pow): reduce multiplying for even number.
...
* bignum.c (rb_big_pow): truncate all zero BDIGITs. [ruby-dev:30733]
* bignum.c (rb_big_pow): improvement by calculating from MSB and using
factorization. <http://yowaken.dip.jp/tdiary/20070426.html#p01 >
* numeric.c (int_pow): calculate power in Fixnum as possible.
[ruby-dev:30726]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@12260 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-05-09 02:50:04 +00:00
nobu
d527feaf19
* bignum.c (rb_big2str0): round up for the most significant digit.
...
[ruby-core:10686]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@12116 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-03-21 08:04:11 +00:00
matz
e3adeba5b2
* bignum.c (bignorm): avoid segmentation. a patch from Hiroyuki
...
Ito <ZXB01226@nifty.com>. [ruby-list:43012]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@11306 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-11-24 01:24:51 +00:00
usa
53f01519ab
* bignum.c (rb_big2str0): use better approximation.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@11244 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-10-30 10:31:01 +00:00
matz
b8aac287ab
* bignum.c (rb_big2str0): wrong allocation length.
...
[ruby-dev:29710]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@11242 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-10-30 09:37:52 +00:00
matz
99711c2eb9
* bignum.c (rb_big2str0): a bug in length adjustment.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@11238 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-10-30 03:24:19 +00:00
matz
720cfb3e60
* sprintf.c (rb_str_format): should preserve leading zero
...
information for negative %b and %x. [ruby-talk:221347]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@11236 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-10-30 02:24:08 +00:00
matz
3b4d19278f
* bignum.c (rb_big_rshift): a bug in right shift of negative
...
bignums. [ruby-core:09020]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@11104 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-10-07 15:49:00 +00:00
matz
962f59a375
* bignum.c (rb_big_mul0): bignum multiplication without
...
normalization.
* bignum.c (rb_big_pow): use rb_big_mul0(). [ruby-dev:29547]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@10898 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-09-09 15:27:34 +00:00
matz
b2b33db355
* numeric.c (fix_plus): addition in Fixnum will never overflow
...
long. a patch from Ondrej Bilka <neleai at seznam.cz>.
[ruby-core:08794]
* numeric.c (fix_minus): ditto.
* bignum.c (rb_big_pow): eagerly truncate resulting bignum.
[ruby-core:08794]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@10880 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-09-07 16:35:59 +00:00
matz
234c47e9fb
* prec.c (prec_prec_f): documentation patch from
...
<gerardo.santana at gmail.com>. [ruby-core:07689]
* bignum.c (rb_big_pow): second operand may be too big even if
it's a Fixnum. [ruby-talk:187984]
* README.EXT: update symbol description. [ruby-talk:188104]
* COPYING: explicitly note GPLv2. [ruby-talk:187922]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@10088 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-04-09 16:10:40 +00:00
akr
e83ff2e682
* bignum.c (rb_big_rshift): fix a GC problem on
...
IA64 with gcc 4.0.3 20051216 (prerelease).
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@9705 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-12-16 18:59:31 +00:00
ocean
05571e54db
* bignum.c (bignew_1): convertion from int' to
char' discards
...
upper bits, (ie. (char)0xff00 -> 0) so it's better to test if
nonzero and set 0 or 1 instead of simply casting ... as a flag usage.
(but I believe this won't cause actual bug in current implementation)
[ruby-dev:27055]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@9432 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-10-21 06:28:41 +00:00
nobu
c0af1a72a1
* Makefile.in, configure.in (MINIOBJS): miniruby on HP-UX can not load
...
extension libraries.
* bignum.c (bignew_1, bigadd): K&R style argument actually can't be
defined as char.
* missing/vsnprintf.c: ANSI compiler supports const keyword.
* ext/digest/sha2/extconf.rb: reject platforms which has inttypes.h
but no 64bit integer.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@9089 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-09-06 23:23:04 +00:00
matz
9b42142366
* bignum.c (rb_big_coerce): allow bignum x bignum coercing.
...
[ruby-dev:26778]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@8962 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-08-10 01:37:25 +00:00
matz
210bf4dc6e
* bignum.c (rb_big_eq): reduce isnan(). [ruby-dev:26600]
...
* numeric.c (flo_eq, flo_gt, flo_ge, flo_lt, flo_le): ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@8823 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-07-22 13:04:25 +00:00
matz
1453dc92e4
* bignum.c (get2comp): revert all prior changes, and calculate
...
proper 2's complement for negative numbers. backported from
HEAD.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@8693 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-07-01 08:54:04 +00:00
matz
f105a01a3e
* bignum.c (get2comp): calculate proper 2's complement for
...
negative numbers. a bug in normalizing negative numbers
reported from Honda Hiroki <hhonda@ipflex.com>.
* ext/socket/socket.c (ruby_getaddrinfo__aix): merged a patch from
KUBO Takehiro <kubo@jiubao.org> to support AIX. [ruby-list:40832]
* lib/yaml/rubytypes.rb (Array::to_yaml): merged a patch from
Tilman Sauerbeck <tilman@code-monkey.de>. [ruby-core:05055]
* lib/yaml/rubytypes.rb (Hash::to_yaml): ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@8592 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-06-08 03:20:09 +00:00