aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* siphashnobu2012-11-096-7/+553
| | | | | | * random.c (rb_memhash): use siphash. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37585 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* array.c: speedup Array#unshift by using space in shared arraynobu2012-11-092-10/+65
| | | | | | | | | | | | | * array.c: speedup Array#unshift by using space in shared array. [Feature #6638] - when array owns its shared array (ARY_SHARED_NUM == 1), and there is enough space then try unshift values directly into shared array. - when resulting array is big (~>64 items) then make it shared with enough room for future #unshifts, and then insert into shared array. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37584 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* array.c: use shared array in rb_ary_slicenobu2012-11-092-5/+8
| | | | | | | | | * array.c (rb_ary_splice): use shared array in rb_ary_slice. [Feature #6638] - use ary_ensure_room_for_push when rb_ary_slice used to add at the end of array, cause rb_ary_concat use rb_ary_slice. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37583 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* array.c: make array really suitable for queuenobu2012-11-092-9/+47
| | | | | | | | | | * array.c (ary_ensure_room_for_push): make array really suitable for queue. [Feature #6638] when array is shared (which happens after Array#shift), and ARY_SHARED_NUM == 1 (which is very often when array used as queue), then make rb_ary_push push directly into shared array. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37582 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* array.c: steal shared array's container when ARY_SHARED_NUM == 1nobu2012-11-092-6/+55
| | | | | | | | | | | | * array.c (rb_ary_modify): steal shared array's container when ARY_SHARED_NUM == 1. [Feature #6638] - Do not allocate new memory in rb_ary_modify when ARY_SHARED_NUM == 1 and length almost same. - Store ARY_CAPA instead of RARRAY_LEN in ary_make_shared, to make it useful. - Fix rb_ary_sort_bang accordantly. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37581 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/bigdecimal/bigdecimal.c:zzak2012-11-092-83/+168
| | | | | | | | | | Documentation for BigDecimal Based on a patch from Vincent Batts [ruby-core:49047] [Bug #7305] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37580 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * parse.y (warn_balanced): use bit-wise operation.nobu2012-11-091-3/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37579 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Add back my original example of Shellwords#shellescape.knu2012-11-092-2/+14
| | | | | | | * lib/shellwords.rb (Shellwords#shellescape): Add back my original real world example with some enhancement. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37577 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Fix an example of Shellwords#shellescape.knu2012-11-092-3/+7
| | | | | | | | * lib/shellwords.rb (Shellwords#shellescape): Undo part of the previous rdoc change. This new example using a string-only array was not in line with the description. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37576 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * string.c (rb_str_crypt): crypt(3) may return NULL.naruse2012-11-092-1/+11
| | | | | | Latest glibc (2.16?) crypt(3) actually returns NULL. [Bug #7312] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37572 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Fix build when gcc is used and the platform's libc lacks alloca().knu2012-11-095-49/+51
| | | | | | | | | | | | | | | | * include/ruby/ruby.h (alloca), eval_intern.h (alloca), gc.c (alloca): Make alloca() globally available by moving the ultimate ifdef's to ruby/ruby.h. Gcc hides its builtin alloca() when compiling with -ansi, and linking thus fails on platforms that lack their own alloca() implementation in libc, which include OpenBSD and some ports of NetBSD. We use alloca() everywhere including from within third party C extentions, so alloca() must be made globally available. [Bug #7307] * addr2line.c (alloca): Replace the alloca() part with the ultimate ifdef's. [Bug #7307] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37571 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* fix typoszzak2012-11-091-3/+3
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37569 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * io.c (IO#new):zzak2012-11-092-2/+8
| | | | | | | | Fix indentation from r37444 [ruby-core:48052] [Bug #7179] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37568 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * bignum.c (bigmul0): enable big_mul_toom3.mrkn2012-11-083-7/+20
| | | | | | | | | | [ruby-core:48552] [Bug #7242] * bignum.c (bigmul1_toom3): fix incorrect calculation. the patch is made by Heesob Park. [ruby-core:48552] [Bug #7242] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37567 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * 2012-11-09svn2012-11-081-2/+2
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37566 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * bignum.c (bigmul0): disable big_mul_toom3_temporalily.mrkn2012-11-083-7/+121
| | | | | | | | | [ruby-core:48552] [Bug #7242] * test/ruby/test_bignum.rb (test_mul_large_numbers): add a test for bigmul1_toom3 suggested in [Bug #7242]. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37565 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * re.c (rb_memsearch): performance improvement by using memchr().glass2012-11-082-6/+11
| | | | | | [ruby-dev:45397] [Feature #6173] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37564 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * lib/net/protocol.rb (Net::InternetMessageIO#each_crlf_line):naruse2012-11-083-2/+15
| | | | | | treat \r as newline as mame pointed. [ruby-dev:46425] [Bug #7278] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37563 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/cgi/test_cgi_core.rb: Add test for CGI#header.xibbar2012-11-081-1/+7
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37558 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Fix a couple of grammos.knu2012-11-081-2/+2
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37548 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * configure.in (--with-opt-dir): Avoid nesting of double quotesknu2012-11-082-1/+8
| | | | | | | | | inside backquotes, since some traditional shells like PD KSH (which OpenBSD's /bin/sh bases on) fails to parse them. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37547 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * numeric.c: Add description of that the results of the comparingmrkn2012-11-082-0/+20
| | | | | | | operations of two NaNs are undefined. [#1720] [ruby-dev:38725] [ruby-core:36966] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37546 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * include/ruby/intern.h: Restore rb_enumeratorize as it was before r37497marcandre2012-11-073-5/+22
| | | | | | | | and introduce rb_enumeratorize_with_size instead. [#7302] * enumerator.c: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37543 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * array.c: Fix mistake in rdoc of Array#uniq.marcandre2012-11-071-2/+2
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37542 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/ruby/test_enumerator.rb: Add test to shed light upon the bugayumin2012-11-071-0/+3
| | | | | | which made by r37498. See http://bugs.ruby-lang.org/issues/7298 git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37541 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * 2012-11-08svn2012-11-071-2/+2
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37540 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/curses/view.rb: Do not fail if the file to view is shorterknu2012-11-072-1/+6
| | | | | | | | than the screen height. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37539 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Suppress warning: Bignum out of Float rangenaruse2012-11-071-4/+6
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37538 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * numeric.c (ruby_float_step): fix r37514: it yielded with NaNnaruse2012-11-073-4/+19
| | | | | | if the unit is infinity. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37537 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * lib/webrick.rb: fix typo.ayumin2012-11-072-1/+6
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37536 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * lib/cgi/core.rb: alias CGI#http_header to CGI#header .xibbar2012-11-073-4/+9
| | | | | | [Bug #7286] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37535 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * eval.c (rb_mod_refine): set RMODULE_IS_REFINEMENT to a createdshugo2012-11-075-17/+35
| | | | | | | | | | | | refinement module, and don't override method_added. * vm_method.c (rb_method_entry_make): check redefinition of optimized methods when a method is added to a refinement module. [ruby-core:48970] [Bug #7290] * test/ruby/test_refinement.rb: related test. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37534 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* ruby-additional.el: set encodingnobu2012-11-072-0/+46
| | | | | | | | * misc/ruby-additional.el (ruby-mode-set-encoding): now encoding needs to be set always explicitly actually. [Feature #6679] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37533 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* object.c: inadvertent symbolnobu2012-11-072-2/+14
| | | | | | | * object.c (rb_mod_const_get): avoid inadvertent symbol creation. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37532 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* enum.c: prefixnobu2012-11-064-3/+8
| | | | | | | * enum.c (rb_enum_cycle_size): prefix with rb. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37531 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* adjust stylenobu2012-11-064-10/+20
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37530 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Fix typos in commentsshirosaki2012-11-062-4/+4
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37529 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Remove FIXME skip on Windows testluislavena2012-11-062-1/+5
| | | | | | | * test/ruby/test_file_exhaustive.rb: Remove FIXME skip on Windows specific test because the test in question was already fixed. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37528 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Recognize zlibwapi as linking libraryluislavena2012-11-062-1/+8
| | | | | | | | | * ext/zlib/extconf.rb: Recognize zlibwapi as linking library. Patch by Daniel Berger. [ruby-core:44979] [Feature #6421] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37527 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * NEWS: Update for lazy size evaluation [Feature #6636]marcandre2012-11-062-0/+38
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37526 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * enumerator.c: Support for lazy.cycle.sizemarcandre2012-11-064-2/+19
| | | | | | [Feature #6636] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37525 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * enumerator.c: Add support for lazy.drop.sizemarcandre2012-11-062-1/+19
| | | | | | [Feature #6636] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37524 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * enumerator.c: Support for lazy.take.sizemarcandre2012-11-062-1/+15
| | | | | | [Feature #6636] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37523 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * enumerator.c: Support for lazy.{map|flat_map|...}.sizemarcandre2012-11-062-12/+22
| | | | | | [Feature #6636] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37522 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * enumerator.c: Support for lazy.sizemarcandre2012-11-062-2/+27
| | | | | | [Feature #6636] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37521 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * string.c: Support for String#{each_byte,each_char,each_codepoint}.sizemarcandre2012-11-062-3/+28
| | | | | | [Feature #6636] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37520 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * numeric.c (int_dotimes): Support for Integer#times.sizemarcandre2012-11-062-1/+14
| | | | | | [Feature #6636] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37519 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * numeric.c (int_upto, int_downto): Support for Integer#{down|up}to.sizemarcandre2012-11-062-2/+18
| | | | | | [Feature #6636] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37518 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * range.c: Support for range.step.sizemarcandre2012-11-062-1/+30
| | | | | | [Feature #6636] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37517 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * range.c: Support for Range#size and Range#each.sizemarcandre2012-11-062-1/+29
| | | | | | [Feature #6636] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37516 b2dd03c8-39d4-4d8f-98ff-823fe69b080e