Project

General

Profile

« Previous | Next » 

Revision a756488c

Added by mrkn (Kenta Murata) over 11 years ago

  • include/ruby/intern.h: add the prototype declaration of
    rb_num_coerce_bit.

  • numeric.c (rb_num_coerce_bit): the new coerce function for bitwise
    binary operation.

  • bignum.c (rb_big_and): use coerce to convert the argument, which isn't
    a Fixnum nor a Bignum, to the corresponding Integer object so that
    bitwise operations can support Integer-mimic objects.
    [Bug #1792] [ruby-core:39491]

  • bignum.c (rb_big_or): ditto.

  • bignum.c (rb_big_xor): ditto.

  • numeric.c (bit_coerce): ditto.

  • numeric.c (fix_and): ditto.

  • numeric.c (fix_or): ditto.

  • numeric.c (fix_xor): ditto.

  • test/ruby/test_integer.rb: add tests for the above changes.

  • test/ruby/test_bignum.rb: ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38560 b2dd03c8-39d4-4d8f-98ff-823fe69b080e