35903 Commits

Author SHA1 Message Date
nobu
7d9b37cc53 insns.def: avoid type-punned pointer cast
* insns.def (once), vm_insnhelper.c (vm_once_exec): turn the
  parameter into a VALUE to get rid of type-punned pointer cast.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46478 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-06-20 06:59:28 +00:00
nobu
90a9db6e6c test_regexp.rb: split test_once
* test/ruby/test_regexp.rb (test_once): split for each cases than
  separating by comments.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46477 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-06-20 06:47:37 +00:00
nobu
f9a2d6b9d9 test_regexp.rb: assert prefix
* test/ruby/test_regexp.rb: rename and prefix `assert_` to show
  caller method names in backtrace.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46476 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-06-20 06:47:10 +00:00
nobu
c63170c917 gmake.mk: for love
* defs/gmake.mk: add dependencies for love.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46475 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-06-20 04:20:26 +00:00
akr
f3f30c736d Don't erase for verbose mode.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46474 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-06-20 03:12:44 +00:00
nobu
edbe0c305a test_optimization.rb: redefine separately
* test/ruby/test_optimization.rb (assert_redefine_method):
  redefine optimized methods in separate processes.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46473 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-06-20 02:47:14 +00:00
ko1
07413b1a5e * test/ruby/test_settracefunc.rb: rewrite tests with
assert_consistent_call_return().
  assert_consistent_call_return() is also modified to check
  consistency.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46472 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-06-19 22:27:53 +00:00
ko1
13f0b628d7 * compile.c (rb_iseq_compile_node): put start label of block after
trace (b_call).
  [Bug #9964]
* test/ruby/test_settracefunc.rb: add a test.
  added assert_consistent_call_return() method check call/return
  consistency.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46471 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-06-19 22:09:23 +00:00
svn
500f9777c9 * 2014-06-20
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46470 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-06-19 20:28:03 +00:00
ko1
15397de07d * vm_eval.c (rb_catch_protect): fix same problem of [Bug #9961].
* vm_eval.c (rb_iterate): ditto.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46469 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-06-19 20:27:59 +00:00
nobu
3f3c86faaa common.mk: fix dependencies
* common.mk, defs/gmake.mk: fix install and uninstall dependencies
  with parallel make.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46466 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-06-19 14:11:52 +00:00
ko1
bef2e29aab * vm.c (rb_vm_rewind_cfp): add new function to rewind specified cfp
with invoking RUBY_EVENT_C_RETURN.
  [Bug #9961]
* vm_core.h: ditto.
* eval.c (rb_protect): use it.
* eval.c (rb_rescue2): ditto.
* vm_eval.c (rb_iterate): ditto.
* test/ruby/test_settracefunc.rb: add a test.
* vm_core.h (rb_name_err_mesg_new):



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46465 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-06-19 12:43:48 +00:00
ko1
370212a8ae * vm.c (invoke_block_from_c): move call/return event timing for
bmethod. It can invoke inconsistent call event if this call raises
  argument error.
  [Bug #9959]
* vm_insnhelper.c (vm_call_bmethod_body): ditto.
* test/ruby/test_settracefunc.rb: add a test.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46464 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-06-19 10:49:46 +00:00
ko1
59bdf7eac8 * vm_core.h: add VM_FRAME_MAGIC_RESCUE to recognize normal block or
rescue clause.
* vm.c (vm_exec): use VM_FRAME_MAGIC_RESCUE on at rescue/ensure.
* test/ruby/test_settracefunc.rb: should not invoke b_return at rescue
  clause.
  [Bug #9957]
* vm_dump.c (control_frame_dump): check VM_FRAME_MAGIC_RESCUE.
* vm_dump.c (vm_stack_dump_each): ditto.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46463 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-06-19 09:17:21 +00:00
svn
c4bbf190fd * 2014-06-19
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46462 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-06-19 04:42:26 +00:00
nobu
b2066b11d8 proc.c: Implement Method#curry
* proc.c (rb_method_curry): Implement Method#curry, which delegates
  to to_proc.curry.  [ruby-core:62212] [Feature #9783]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46461 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-06-19 04:42:16 +00:00
svn
2443fbcccf * 2014-06-18
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46460 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-06-18 06:16:53 +00:00
nobu
e99ee55abc constify parameters
* include/ruby/intern.h: constify `argv` parameters.

* include/ruby/ruby.h: ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46459 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-06-18 06:16:39 +00:00
svn
a1660e97f5 * properties.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46458 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-06-17 07:45:08 +00:00
shugo
6479e0b04f * lib/net/ftp.rb (gets, readline): read lines without LF properly.
[ruby-core:63205] [Bug #9949]

* test/net/ftp/test_buffered_socket.rb: related test.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46457 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-06-17 07:44:53 +00:00
nobu
d689dca633 eval.c: pass unknown options
* eval.c (extract_raise_opts): pass unknown options to the
  exception, so that exception class can receive a hash argument.
  [ruby-core:63203] [Feature #8257]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46456 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-06-17 03:37:47 +00:00
ko1
b905ac81a0 * gc.c (obj_memsize_of): memsize_of(T_ZOMBIE) returns 0, not a rb_bug.
ObjectSpace.count_objects_size() uses memsize_of(T_ZOMBIE).
  This bug introduced at r46348.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46455 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-06-17 03:27:26 +00:00
nobu
08580181ac configure.in: extract date at build time
* Makefile.in, configure.in (Makefile): extract RUBY_RELEASE_DATE from
  version.h at each build time.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46454 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-06-16 20:23:23 +00:00
svn
21c400c44b * 2014-06-17
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46453 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-06-16 19:51:58 +00:00
nobu
664d209de3 runner.rb: instance variable
* test/runner.rb (before_setup, after_teardown): use an instance
  variable instead of a class variable.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46452 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-06-16 19:51:38 +00:00
ko1
dbf2578656 * test/runner.rb: failure message should be passed as an argument.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46448 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-06-16 10:01:44 +00:00
ko1
3a1c08e58f * test/runner.rb: capture TracePoint stat before setup and compare
it after teardown.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46447 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-06-16 09:45:03 +00:00
hsbt
e5af180eb0 * test/uri/test_generic.rb: fix wrong arguments for test case.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46446 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-06-16 09:23:02 +00:00
hsbt
9761965d05 * test/date/test_date_arith.rb: remove unused block argument.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46445 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-06-16 09:17:55 +00:00
hsbt
ea7c1f4dc6 * test/date/test_date_strptime.rb: remove useless variable.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46444 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-06-16 09:17:54 +00:00
nobu
ca65a56bd8 string.c: no copy of interned strings
* string.c (sym_succ, sym_cmp, sym_casecmp, sym_match, sym_aref):
  not need to make copy of interned strings, use directly.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46443 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-06-16 08:06:39 +00:00
nobu
3a206c9124 vm_method.c: no RTEST on mere flag
* vm_method.c (basic_obj_respond_to): `priv` is not a VALUE but a
  mere flag, so cannot call RTEST() on it.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46442 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-06-16 08:03:42 +00:00
nobu
fd444f90b5 process.c: use UTF-8
* process.c (open): use UTF-8 version function to support
  non-ascii path properly.  [ruby-core:63185] [Bug #9946]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46441 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-06-16 05:35:59 +00:00
svn
7539177d71 * 2014-06-16
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46440 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-06-16 05:28:16 +00:00
nobu
d327c8da66 process.c: variable as macro argument
* process.c (run_exec_open): use a local variable to get rid of
  RARRAY_AREF() is evaluated multiple times by RSTRING_PTR().

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46439 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-06-16 05:28:03 +00:00
nobu
800c7af73c vm_method.c: separate ID selection
* vm_method.c (rb_method_entry_make): separate selection of IDs to
  be private from condition of method to be defined.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46438 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-06-15 13:21:21 +00:00
nobu
f3db73f107 test_file_exhaustive.rb: fix expected value
* test/ruby/test_file_exhaustive.rb (test_expand_path_memsize):
  correct expected value, count terminator byte.  [Bug #9934]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46437 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-06-15 11:49:25 +00:00
nobu
106f3e9d17 test_file_exhaustive.rb: fix assertion
* test/ruby/test_file_exhaustive.rb (test_expand_path_memsize):
  wrong expected value, considering a prefix (drive letter or UNC)
  on DOSISH platforms.  [Bug #9934]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46436 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-06-15 01:09:19 +00:00
nobu
efc70c74c2 process.c: use RB_TYPE_P
* process.c (check_exec_redirect): use RB_TYPE_P instead of single
  comparison of TYPE().

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46435 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-06-15 01:09:17 +00:00
nobu
dcae4b9d42 runner.rb: use class variable
* test/runner.rb (after_teardown): turn zombie traces hash into a
  class variable.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46434 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-06-14 23:13:50 +00:00
nobu
045b6e9fb9 runner.rb: check increment
* test/runner.rb (after_teardown): check increment of active trace
  events.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46433 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-06-14 22:11:22 +00:00
svn
261aaedd73 * 2014-06-15
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46432 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-06-14 21:54:18 +00:00
nobu
5a83ce3f15 runner.rb: include event name
* test/runner.rb (after_teardown): include active trace event name
  in the failure message.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46431 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-06-14 21:54:11 +00:00
akr
ba4ac50a2d Restore date field.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46430 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-06-14 13:52:04 +00:00
akr
26930379b5 Fix a typo.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46429 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-06-14 03:47:05 +00:00
nobu
b654e0719a array.c: non-recursive rcombinate0
* array.c (rcombinate0): remove recursion, by looping with indexes
  stored in `p`.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46428 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-06-14 01:55:25 +00:00
nobu
4802149e44 array.c: non-recursive rpermute0
* array.c (rpermute0): remove recursion, by looping with indexes
  stored in `p`.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46427 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-06-14 01:55:07 +00:00
nobu
9d6b7aede9 array.c: non-recursive permute0
* array.c (permute0): remove recursion, by looping with indexes
  stored in `p`.  [ruby-core:63103] [Bug #9932]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46426 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-06-14 01:54:45 +00:00
nobu
02725fb682 array.c: combinate0
* array.c (combinate0): extract.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46425 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-06-14 01:54:33 +00:00
nobu
9729275473 string.c: fix wrong capa
* string.c (rb_str_resize): update capa only when buffer get
  reallocated.
  http://d.hatena.ne.jp/nagachika/20140613/ruby_trunk_changes_46413_46420#r46413

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46424 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-06-14 01:53:32 +00:00