Commit graph

29857 commits

Author SHA1 Message Date
ngoto
05a05cc62b * ruby_atomic.h: renamed from atomic.h to avoid header file name conflict
on Solaris 10. [ruby-dev:46414] [Bug #7287]
* gc.c, signal.c, vm_core.h, common.mk: reflect the rename from atomic.h
  to ruby_atomic.h.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37604 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-09 16:05:07 +00:00
ngoto
c4e1ecef13 * atomic.h: Revert r37491 which is a temporary workaroud.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37603 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-09 16:00:00 +00:00
usa
e4d1a8a157 * tool/merger.rb: typo.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37602 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-09 15:42:55 +00:00
usa
125ca30ca2 * siphash.h: check configure macros before include newer headers.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37599 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-09 15:34:31 +00:00
svn
36ca3781bd * 2012-11-10
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37598 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-09 15:20:01 +00:00
usa
f20ea787a5 * siphash.h: include inttypes.h only when HAVE_INTTYPES_H is defined.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37597 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-09 15:19:56 +00:00
nagachika
e3adacf0cb * ChangeLog: remove redundant entries for r37581-r37584.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37595 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-09 14:44:05 +00:00
nobu
62f7424640 erb.rb: safe concurrent use
* lib/erb.rb (ERB#run, ERB#result): eval under isolated bindings for
  safe concurrent use.  [ruby-core:47638] [Bug #7046]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37594 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-09 14:33:11 +00:00
nobu
2ce1fbeb59 random.c: BYTE_ORDER
* random.c (BYTE_ORDER): define using configured WORDS_BIGENDIAN.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37593 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-09 14:05:11 +00:00
nobu
1d2ddae160 siphash.c: union sip_init_state
* siphash.c (sip_init_state): use union to suppress warnings by gcc
  4.7.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37592 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-09 14:02:34 +00:00
nobu
496d7cc886 siphash.c: union sip_init_state
* siphash.c (sip_init_state): use union to suppress warnings by gcc
  4.7.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37591 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-09 14:02:31 +00:00
kazu
bbcfac95d4 fix typos
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37590 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-09 13:02:16 +00:00
zzak
a91e3149c4 fix typos
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37589 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-09 11:20:31 +00:00
naruse
efeee7afa9 * array.c (rb_ary_splice): fix r37583 doesn't condier the case when
beg > array length.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37588 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-09 11:04:05 +00:00
naruse
5bde05f98f Use C90 comment style
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37587 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-09 08:11:44 +00:00
nobu
525cb66467 siphash
* random.c (rb_memhash): use siphash.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37585 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-09 07:12:00 +00:00
nobu
fdbd371678 array.c: speedup Array#unshift by using space in shared array
* 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
2012-11-09 07:08:50 +00:00
nobu
aaa9cb1ab4 array.c: use shared array in rb_ary_slice
* 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
2012-11-09 07:08:45 +00:00
nobu
b11975dfe0 array.c: make array really suitable for queue
* 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
2012-11-09 07:08:42 +00:00
nobu
06de286c68 array.c: steal shared array's container when ARY_SHARED_NUM == 1
* 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
2012-11-09 07:08:38 +00:00
zzak
50c859715d * ext/bigdecimal/bigdecimal.c:
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
2012-11-09 07:03:13 +00:00
nobu
f030a91d3e * parse.y (warn_balanced): use bit-wise operation.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37579 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-09 06:57:42 +00:00
knu
ab714c82f0 Add back my original example of Shellwords#shellescape.
* 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
2012-11-09 06:28:00 +00:00
knu
eccb95543c Fix an example of Shellwords#shellescape.
* 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
2012-11-09 06:25:02 +00:00
naruse
dfb44feefe * string.c (rb_str_crypt): crypt(3) may return NULL.
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
2012-11-09 04:06:45 +00:00
knu
1c0323adbc Fix build when gcc is used and the platform's libc lacks alloca().
* 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
2012-11-09 03:34:08 +00:00
zzak
8ebd713b7f fix typos
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37569 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-09 00:30:55 +00:00
zzak
de794aefa6 * io.c (IO#new):
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
2012-11-09 00:28:41 +00:00
mrkn
bb250b002b * bignum.c (bigmul0): enable big_mul_toom3.
[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-08 22:38:03 +00:00
svn
9071bbb8cc * 2012-11-09
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37566 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-08 20:38:58 +00:00
mrkn
22767ffd13 * bignum.c (bigmul0): disable big_mul_toom3_temporalily.
[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
2012-11-08 20:38:53 +00:00
glass
9f9ebe4eba * re.c (rb_memsearch): performance improvement by using memchr().
[ruby-dev:45397] [Feature #6173]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37564 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-08 13:40:33 +00:00
naruse
6ce8c33936 * lib/net/protocol.rb (Net::InternetMessageIO#each_crlf_line):
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
2012-11-08 10:04:24 +00:00
xibbar
edb68694b8 * test/cgi/test_cgi_core.rb: Add test for CGI#header.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37558 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-08 06:56:17 +00:00
knu
f822c523fb Fix a couple of grammos.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37548 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-08 04:52:35 +00:00
knu
0a741075a3 * configure.in (--with-opt-dir): Avoid nesting of double quotes
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
2012-11-08 03:09:18 +00:00
mrkn
6ea34efab0 * numeric.c: Add description of that the results of the comparing
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
2012-11-08 00:34:55 +00:00
marcandre
a68cc24a9e * include/ruby/intern.h: Restore rb_enumeratorize as it was before r37497
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
2012-11-07 19:46:16 +00:00
marcandre
bc63449331 * array.c: Fix mistake in rdoc of Array#uniq.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37542 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-07 19:45:59 +00:00
ayumin
0ab21f9572 * test/ruby/test_enumerator.rb: Add test to shed light upon the bug
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-07 15:51:00 +00:00
svn
94cd486b51 * 2012-11-08
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37540 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-07 15:36:22 +00:00
knu
316947eaa4 * ext/curses/view.rb: Do not fail if the file to view is shorter
than the screen height.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37539 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-07 15:36:14 +00:00
naruse
a3286ba320 Suppress warning: Bignum out of Float range
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37538 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-07 07:03:53 +00:00
naruse
172d8f9b6e * numeric.c (ruby_float_step): fix r37514: it yielded with NaN
if the unit is infinity.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37537 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-07 07:03:50 +00:00
ayumin
043c0eaac0 * lib/webrick.rb: fix typo.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37536 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-07 06:49:57 +00:00
xibbar
8549059d76 * lib/cgi/core.rb: alias CGI#http_header to CGI#header .
[Bug #7286]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37535 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-07 06:36:49 +00:00
shugo
5836962f48 * eval.c (rb_mod_refine): set RMODULE_IS_REFINEMENT to a created
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
2012-11-07 04:09:51 +00:00
nobu
1c5104ac9c ruby-additional.el: set encoding
* 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
2012-11-07 02:48:19 +00:00
nobu
bd9b31e557 object.c: inadvertent symbol
* 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
2012-11-07 00:16:03 +00:00
nobu
db54dc7215 enum.c: prefix
* 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
2012-11-06 22:52:52 +00:00