Skip to content
  • KOBAYASHI Shuji's avatar
    a53f2827
    Fix `MRB_FIXNUM_SHIFT` with `MRB_WORD_BOXING`, `MRB_INT32` and `MRB_64BIT` · a53f2827
    KOBAYASHI Shuji authored
    ### Example
    
      ```ruby
      # example.rb
      max32 = 2**30 - 1 + 2**30
      min32 = -max32-1
      [max32, max32+1, min32, min32-1].each{|n| p [n, n.class]}
      ```
    
    #### Before this patch:
    
      ```
      $ bin/mruby example.rb
      [2147483647, Float]
      [2147483648, Float]
      [-2147483648, Float]
      [-2147483649, Float]
      ```
    
    #### After this patch:
    
      ```
      $ bin/mruby example.rb
      [2147483647, Fixnum]
      [2147483648, Float]
      [-2147483648, Fixnum]
      [-2147483649, Float]
      ```
    a53f2827
    Fix `MRB_FIXNUM_SHIFT` with `MRB_WORD_BOXING`, `MRB_INT32` and `MRB_64BIT`
    KOBAYASHI Shuji authored
    ### Example
    
      ```ruby
      # example.rb
      max32 = 2**30 - 1 + 2**30
      min32 = -max32-1
      [max32, max32+1, min32, min32-1].each{|n| p [n, n.class]}
      ```
    
    #### Before this patch:
    
      ```
      $ bin/mruby example.rb
      [2147483647, Float]
      [2147483648, Float]
      [-2147483648, Float]
      [-2147483649, Float]
      ```
    
    #### After this patch:
    
      ```
      $ bin/mruby example.rb
      [2147483647, Fixnum]
      [2147483648, Float]
      [-2147483648, Fixnum]
      [-2147483649, Float]
      ```
Loading