Commit graph

5576 commits

Author SHA1 Message Date
kosaki
def63c3466 * io.c (io_binwrite): check interrupt before io issue.
* test/ruby/test_thread.rb (test_async_interrupt_and_io):
  test for the above.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38224 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-05 19:37:37 +00:00
nobu
84cfe8f8d6 vm_eval.c: public_send does not consider how it is called
* vm_eval.c (rb_method_call_status): use Qundef as no self instead of
  the current self.
* vm_eval.c (send_internal): public_send does not consider how it is
  called, as mentioned in r14173.  patched by charliesome (Charlie
  Somerville).  [ruby-core:50489] [Bug #7499]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38223 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-05 16:10:41 +00:00
nobu
cfc2103108 test_object.rb: test for public_send
* test/ruby/test_object.rb (TestObject#test_public_send): add test for
  public_send.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38222 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-05 16:07:27 +00:00
naruse
1b648d0467 Suppress warnings
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38219 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-05 15:34:11 +00:00
naruse
05db61c25d Use underscore-begging name for dummy variables to suppress warning
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38218 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-05 15:12:58 +00:00
kosaki
a400c94d72 * lib/timeout.rb (Timeout#timeout): set
async_interrupt_timeing(:on_blocking) by default.
  [Bug #7503] [ruby-core:50524]

* test/test_timeout.rb (#test_timeout_blocking): test for the above.
* test/test_timeout.rb (test_timeout_immediate): ditto
* test/test_timeout.rb (test_timeout_immediate2): ditto.

* NEWS: news for the above.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38216 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-05 15:04:09 +00:00
nobu
31e6f72c8e vm.c: save blockprocval
* vm.c (rb_vm_make_proc): save the proc made from the given block so
  that it will not get collected.  [ruby-core:50545] [Bug #7507]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38213 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-05 13:46:11 +00:00
kazu
1bddcc72f6 fix typos and remove trailing spaces
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38212 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-05 13:35:05 +00:00
ngoto
9920da5593 * ext/dl/lib/dl/func.rb (DL::Function#bind): When Fiddle is used,
@ptr should be updated. This fixes SEGV raised in DL::Function#call
  after calling DL::Function#bind. [Bug #7516] [ruby-dev:46708]
* test/dl/test_func.rb (test_bind): test for the above


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38211 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-05 13:24:19 +00:00
tarui
17a11774ca * thread.c (rb_thread_s_async_interrupt_timing): have to check ints before jumpping out.
* test/ruby/test_thread.rb (test_async_interrupt_with_return): add test
	  rescue has to catch a queued async exception at the time of return.
	* test/ruby/test_thread.rb (test_async_interrupt_with_break): add test
	  rescue has to catch a queued async exception at the time of break.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38210 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-05 09:54:58 +00:00
ko1
592e87e1f8 * test/ruby/memory_status.rb: suppress warning.
A patch from NAKAMURA Usaku.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38209 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-05 07:56:07 +00:00
drbrain
16c34f9df0 * lib/rdoc/parser/changelog.rb: Parse more ChangeLog file variations.
* test/rdoc/test_rdoc_parser_changelog.rb:  Test for above.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38208 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-05 07:07:28 +00:00
nobu
8d7e3c6aba * test/mkmf/test_have_func.rb: tests for have_func.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38207 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-05 06:30:39 +00:00
nobu
34dc263af8 test_have_library.rb: assert_have_library
* test/mkmf/test_have_library.rb (assert_have_library): extract.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38206 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-05 06:30:36 +00:00
nobu
228d36fb35 test_have_macro.rb: TestHaveMacro
* test/mkmf/test_have_macro.rb (TestMkmf::TestHaveMacro): rename.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38205 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-05 06:30:34 +00:00
nobu
1dd7e5690c * test/mkmf/test_have_library.rb: tests for have_library.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38203 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-05 03:59:39 +00:00
ngoto
f1841f43eb * ext/dl/lib/dl/func.rb (DL::Function#initialize, DL::Function#bind):
ABI should be set by using CFunc#calltype even when Fiddle is used.
  When Fiddle is used and a block is given, name shoud not be ignored.
  [ruby-core:50562] [Bug #7514]
* ext/dl/lib/dl/import.rb (DL::Importer#bind_function): should respect
  abi and name when Fiddle is used.
* test/dl/test_func.rb (test_name_with_block): test for "name" method
  with giving a block.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38202 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-05 03:20:05 +00:00
ko1
895bb667b2 * test/ruby/test_settracefunc.rb: disable trace.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38200 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-05 02:43:31 +00:00
nobu
1692d49338 mkmf.rb: different strings from conflict markers
* lib/mkmf.rb (MakeMakefile#macro_defined?): use clearly different
  strings from conflict markers.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38199 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-05 02:37:41 +00:00
tarui
afa3ce2518 * test/ruby/test_thread.rb (test_async_interrupt_blocking): bugfix
about defared check


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38194 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-04 19:06:46 +00:00
tarui
64f634f1de * vm_core.h (RUBY_VM_CHECK_INTS_BLOCKING): check async queue everytime.
* thread.c (sleep_forever): check RUBY_VM_CHECK_INTS_BLOCKING first.
        * thread.c (sleep_timeval): ditto.
        * test/ruby/test_thread.rb (test_async_interrupt_blocking): add a test
          exceptions are correctly defared and raised on :on_blocking context.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38193 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-04 18:38:21 +00:00
usa
01380620bd * test/ruby/memory_status.rb: fixed small typos introduced at r38182.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38191 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-04 16:08:05 +00:00
kosaki
bbfbf662cc * thread.c (rb_mutex_owned_p): new method that return current
thread have the target mutex or not. [Feature #7505] [ruby-dev:46697]
* test/ruby/test_thread.rb (test_mutex_owned, test_mutex_owned2):
  test for the above.
* NEWS: new for the above.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38188 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-04 16:02:07 +00:00
ngoto
34422887c2 * test/ruby/memory_status.rb (Memory): use fiddle/types if available.
* test/ruby/memory_status.rb (Memory::Win32): :stdcall is needed on
  x86 WIN32. This commit partly reverts r38054.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38184 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-04 09:55:07 +00:00
drbrain
38b9667310 * lib/rdoc/parser/changelog.rb: Added a ChangeLog parser to RDoc.
* lib/rdoc/parser.rb:  ditto
* test/rdoc/test_rdoc_parser_changelog.rb:  Test for above.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38178 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-04 07:50:48 +00:00
drbrain
ec05ade531 * lib/rdoc/ri/driver.rb: Fixed ri page display for files with
extensions.
* test/rdoc/test_rdoc_ri_driver.rb:  Test for above


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38169 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-03 23:32:39 +00:00
ko1
41d77571ff * test/ruby/test_objectspace.rb: skip RuntimeError
which says a message "can't modify frozen File".
  Is that correct behavior?



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38162 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-03 11:06:21 +00:00
nobu
4d73f95068 random.c, rational.c: make marshal methods private
* random.c (Init_Random), rational.c (Init_Rational): make marshal
  methods private.  [Feature #6539]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38157 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-03 10:10:14 +00:00
ko1
c4f9dd2626 * iseq.h: iseq_catch_table_entry::catch_type should be
Fixnum because they are pushed into Array in a compiler.
  [Bug #7502]
* test/ruby/test_objectspace.rb: add a test of this issue.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38156 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-03 10:03:25 +00:00
nobu
983c2e874f ruby-mode.el: fix argument indent
* misc/ruby-mode.el (ruby-block-end-re, ruby-delimiter)
  (ruby-mode-syntax-table, ruby-parse-partial, ruby-beginning-of-indent):
  merge from Emacs.
* misc/ruby-mode.el (ruby-calculate-indent): fix indentation of
  argument lines in parentheses.  [Bug #5140]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38150 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-03 03:43:40 +00:00
drbrain
488fb86a1e * lib/rdoc/parser.rb: Improved modeline support. Patch by nobu.
* test/rdoc/test_rdoc_parser.rb:  Test for above.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38149 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-02 22:52:57 +00:00
mrkn
1fec21fe60 * ext/bigdecimal/bigdecimal.c (BigDecimal_new): stop checking string
taintness.  [Bug #5508] [ruby-core:40510]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38147 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-02 15:09:49 +00:00
drbrain
f242cefc68 * lib/rdoc/parser.rb: Parse files with a -*- rdoc -*- modeline
* test/rdoc/test_rdoc_parser.rb:  Test for above


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38135 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-01 22:24:53 +00:00
ko1
5bdd03936c * iseq.c (rb_iseq_line_trace_each): iterate `line' event only.
* test/ruby/test_iseq.rb: add a test for this change.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38133 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-01 20:07:58 +00:00
ko1
921385a644 * vm_trace.c: add TracePoint#inspect.
* test/ruby/test_settracefunc.rb: add a test for this change.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38132 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-01 17:47:37 +00:00
nobu
0efa7abc40 * test/rubygems/test_gem_specification.rb (test_emits_zulu_timestamps_properly): too old bug.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38125 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-01 13:54:57 +00:00
ko1
095022cbe9 * test/ruby/test_backtrace.rb: add a test for
Thread::Backtrace::Location#inspect.
  BTW, tests for `caller_locations' are not enough.
  Any volunteers are welcome.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38122 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-01 12:19:52 +00:00
nobu
01eb117b01 io.c: recurse for the argument
* io.c (rb_io_puts): recurse for the argument itself, not converted
  array elements.  [ruby-core:42444] [Bug #5986]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38120 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-01 10:24:12 +00:00
drbrain
4090ec1017 * lib/rubygems/commands/cleanup_command.rb: Fix cleanup command for
multiple gems.  [ruby-trunk - #7481] by Kouhei Sutou
* test/rubygems/test_gem_commands_cleanup_command.rb:  Test for above.
* lib/rubygems.rb:  Autoload Gem::Source to prevent test failures


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38117 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-01 09:52:39 +00:00
nobu
82ec3de020 object.c: make remove_instance_variable public
* object.c (Init_Object): make remove_instance_variable public.
  [Feature #6539]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38114 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-01 09:16:57 +00:00
nobu
cf9d17a3d3 vm_method.c: make initialize methods private
* id.c (Init_id), template/id.h.tmpl: add initialize_{copy,clone,dup}
  and respond_to_missing?.
* vm_method.c (rb_method_entry_make): make above methods private.
  [Feature #6539]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38113 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-01 09:16:52 +00:00
kosaki
89ff44e22e * test/ruby/test_thread.rb: move ConditionVariable related test
into test/thread/test_cv.rb.
* test/thread/test_cv.rb: new file.
* test/thread/test_cv.rb (test_condvar_empty_signal): new tests.
* test/thread/test_cv.rb (test_condvar_empty_broadcast): ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38111 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-01 08:29:09 +00:00
kosaki
afbbcd133c * test/ruby/test_thread.rb (test_cv_wait_deadlock): enable
cv deadlock test.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38110 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-01 08:28:56 +00:00
kosaki
1f1db611b9 * lib/thread.rb (ConditionVariable): use hash instead of array for
@waiters.
* test/thread/test_queue.rb (test_sized_queue_and_wakeup): remove
  a test because @waiters no longer have a chance to duplicated. Now it's
  a hash.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38109 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-01 08:28:44 +00:00
nobu
3f50943b03 test_gem_specification.rb: suppress warnings
* test/rubygems/test_gem_specification.rb (with_syck): we all know
  that syck has been removed.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38100 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-01 03:30:55 +00:00
tenderlove
afb02bbe92 * variable.c (rb_class_path_no_cache): add a function to get the class
path without caching the computed path. Some classes are frozen, and
  will raise an exception without this.

* probes.d (cmethod-entry, cmethod-return): separate cmethods from
  regular methods to match set trace func.

* probes_helper.h: refactor macros.  Fix probes to avoid calling
  #inspect when profiling.

* insns.def: update for use with new macros.

* vm_eval.c: ditto

* vm_insnhelper.c: ditto

* test/dtrace/test_singleton_function.rb: fix test for new output.

* test/dtrace/test_cmethod.rb: test the cmethod probes.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38099 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-01 02:13:06 +00:00
drbrain
d3c6187a4d * test/rdoc/test_rdoc_options.rb: Windows drive letters are
case-insensitive.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38098 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-01 00:49:20 +00:00
drbrain
5db8f99943 * lib/rubygems.rb: Search for gem deps file up the directory tree.
* test/rubygems/test_gem.rb:  Test for above.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38097 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-01 00:42:36 +00:00
drbrain
18a3774438 * test/runner.rb: Set GEM_HOME, GEM_PATH and GEM_SKIP to empty set.
With default_gem support in RubyGems GEM_SKIP prevents loading of
  built-in gems.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38096 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-01 00:34:01 +00:00
naruse
9207474f04 suppress warnings: unused variables
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38091 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-30 19:10:12 +00:00