Permalink
Commits on Jul 9, 2012
  1. Add Sprinter#print_built_method

    committed Jul 9, 2012
Commits on Jul 8, 2012
Commits on Jul 7, 2012
Commits on Jul 6, 2012
  1. Merge pull request #1802 from ryoqun/fixnum-pow-overflow

    Avoid signed integer overflow in Fixnum#**
    dbussink committed Jul 6, 2012
  2. Avoid signed integer overflow in Fixnum#**

    Signed integer overflow is undefined. Avoid it.
    
    For example, when compiled by Clang, the following undefined behavior can be
    observed:
    
        8 ** 23
        # => 0 (should be 590295810358705651712)
    
    For the record, this bug is found while investigating the following ci spec
    failure when built by Clang (it passes after this commit):
    
        1)
        String#% supports octal formats using %o for negative numbers FAILED
        Expected "..-2000000000000000000005"
         to equal "..75777777777777777777773"
    
                  { } in Object#__script__ at spec/ruby/core/string/modulo_spec.rb:572
              Kernel(Object)#instance_eval at kernel/common/eval18.rb:45
             { } in Enumerable(Array)#all? at kernel/common/enumerable.rb:102
                                Array#each at kernel/bootstrap/array.rb:68
                    Enumerable(Array)#all? at kernel/common/enumerable.rb:102
                                Array#each at kernel/bootstrap/array.rb:68
                         Object#__script__ at spec/ruby/core/string/modulo_spec.rb:4
                               Kernel.load at kernel/common/kernel.rb:580
              Kernel(Object)#instance_eval at kernel/common/eval18.rb:45
                                Array#each at kernel/bootstrap/array.rb:68
          Rubinius::CodeLoader#load_script at kernel/delta/codeloader.rb:67
          Rubinius::CodeLoader.load_script at kernel/delta/codeloader.rb:109
                   Rubinius::Loader#script at kernel/loader.rb:632
                     Rubinius::Loader#main at kernel/loader.rb:835
    committed Jul 6, 2012
  3. Use logical OR for conditionals

    committed Jul 6, 2012
Commits on Jul 5, 2012
  1. Remove no longer needed crc_t configure check

    This is now handled in the extconf.rb for the extension itself.
    dbussink committed Jul 5, 2012
  2. Apply crc_t fixes to zlib extension

    We already fixed this issue in the previous FFI version. This is also
    fixed in MRI trunk, which is where this change is copied from.
    dbussink committed Jul 5, 2012
  3. Imported MRI 1.9 rb_scan_args.

    brixen committed Jul 5, 2012
  4. Fixed rb_io_addstr.

    brixen committed Jul 5, 2012
  5. Added rb_str_subseq.

    brixen committed Jul 4, 2012
  6. C-API spec for rb_str_subseq.

    brixen committed Jul 4, 2012
  7. Added rb_str_inspect.

    brixen committed Jul 4, 2012
  8. Added rb_frame_this_func.

    brixen committed Jul 3, 2012
  9. Added rb_file_open_str.

    brixen committed Jul 3, 2012
  10. Added FilePathValue.

    brixen committed Jul 3, 2012
  11. Replaced Zlib FFI with C-ext. Closes #1727.

    While it saddens me greatly to replace Ruby code with very problematic
    MRI C code, the reality is that time is better spent eventually replacing
    MRI C code with quality Ruby code rather than wasting time debugging
    unmaintained Ruby-ified MRI C code.
    brixen committed Jul 2, 2012
  12. Add GCToken for Autoload

    Because Autoload calls back into Ruby to load the source file, we should
    add a GCToken because it might GC. This adds the token and fixes cases
    where there would be variables on the C stack that we need to track.
    dbussink committed Jul 5, 2012