aboutsummaryrefslogtreecommitdiffstats
path: root/test/ruby
Commit message (Collapse)AuthorAgeFilesLines
* * enumerator.c (lazy_flat_map_func): flat_map should call each onlyshugo2013-01-141-0/+5
| | | | | | | | | | | when the value of a block returns a forcable object. [ruby-core:51401] [Bug #7690] * enumerator.c (lazy_flat_map): add documentation. * test/ruby/test_lazy_enumerator.rb: related test. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38812 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * enumerator.c: Require block for Lazy#{take|drop}_while [Bug #7692]marcandre2013-01-141-0/+6
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38811 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * enumerator.c: Fix size for Enumerator::Lazy#flat_mapmarcandre2013-01-141-2/+2
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38808 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * regparse.c (add_ctype_to_cc): don't check dup warn on addingnaruse2013-01-131-0/+5
| | | | | | negative ctype to cclass. [Bug #7471] [ruby-core:50344] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38805 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * insns.def (defineclass): private constants should not be accessedshugo2013-01-111-0/+20
| | | | | | | | by scoped module definitions. The bug was introduced in r38495. * test/ruby/test_module.rb: related test. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38772 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * vm_insnhelper.c (vm_search_super_method): raise a TypeErrorshugo2013-01-101-3/+3
| | | | | | | instead of a NotImplementError if self is not an instance of the current class. [ruby-dev:39772] [Bug #2402] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38761 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* test_flip.rb: flip-flop shared by threadsnobu2013-01-091-0/+21
| | | | | | | * test/ruby/test_flip.rb (TestFlip#test_shared_thread): flip-flop should be separated per threads git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38747 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Add RUBYOPT=>nil to avoid false negativenaruse2013-01-091-3/+1
| | | | | | | add RUBYOPT=nil to suppress circular require warnings to avoid false negative with stderr assertion. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38746 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/ruby/test_require.rb: improve test for r38744.glass2013-01-091-4/+8
| | | | | | | fix to use Tempfile instead of temporary file in current directory. the patch is from nobu (Nobuyoshi Nakada). git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38745 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * load.c (load_lock): fix not to delete thread shield twice.glass2013-01-091-0/+21
| | | | | | | | | it may break the shield locked by another thread. [Bug #7530] [ruby-core:50645] * test/ruby/test_require.rb: a test for above. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38744 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* vm_core.h: flip_cnt in rb_iseq_tnobu2013-01-081-0/+8
| | | | | | | | | * vm_core.h (rb_iseq_t): move flip_cnt from struct iseq_compile_data, because it has same life span as enclosing iseq. [Bug #7671] [ruby-core:51296] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38739 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * vm_method.c (Init_eval_method): main.public and main.privateshugo2013-01-071-14/+14
| | | | | | | | | | should be private. * proc.c (Init_Proc): main.define_method should be private. * test/ruby/test_module.rb: related test. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38732 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * eval.c (Init_eval): main.include should be private.shugo2013-01-071-0/+19
| | | | | | | | | [ruby-core:51293] [Bug #7670] * test/ruby/test_module.rb (test_top_include_is_private): a new test for the above change. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38731 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * eval.c (Init_eval): enable Refinements by default.shugo2013-01-071-5/+6
| | | | | | | | | | | | | [ruby-core:51286] [Bug #7667] * eval.c (rb_mod_refine, top_using): show a warning when Module#refine or main.using is called at the first time. * ext/refinement/*: removed the extension library "refinement". * test/ruby/test_refinement.rb: fix for the above changes. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38729 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* test_syntax.rb: assert_not_labelnobu2013-01-071-1/+1
| | | | | | | * test/ruby/test_syntax.rb (TestSyntax#assert_not_label): need to eval in the current binding. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38727 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* parse.y: bare kwrest_marknobu2013-01-071-0/+8
| | | | | | | * parse.y (f_kwrest): allow bare kwrest_mark as valid syntax. its semantics is still undefined. [Bug #7662] [ruby-core:51269] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38725 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* parse.y: duplicated kwrest namenobu2013-01-071-0/+52
| | | | | | * parse.y (f_kwrest): reject duplicated kwrest argument name. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38724 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* envutil.rb: assert_syntax_errornobu2013-01-071-0/+24
| | | | | | | * test/ruby/envutil.rb (Test::Unit::Assertions#assert_syntax_error): new assertion for syntax error and error message. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38723 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* envutil.rb: optional fnamenobu2013-01-072-4/+12
| | | | | | | * test/ruby/envutil.rb (Test::Unit::Assertions#assert_valid_syntax): make fname optional for inline source. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38722 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * vm_trace.c (rb_threadptr_exec_event_hooks_orig): pop tag beforeko12013-01-071-0/+16
| | | | | | | | | | | | JUMP_TAG() if frame is `finish' frame. Without this patch, there is an inconsistency between control frame stack and tags stack. [Bug #7668] * test/ruby/test_settracefunc.rb: add a test for above. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38721 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* vm_insnhelper.c: keyrest should not overwrite rest argnobu2013-01-071-0/+11
| | | | | | | | * vm_insnhelper.c (vm_callee_setup_arg_complex, vm_yield_setup_block_args): set keyrest hash after making rest array, so that the last element will not be overwritten. [ruby-core:51278] [Bug #7665] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38719 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * string.c (rb_str_enumerate_lines): fix invalid byte sequence errorglass2013-01-051-0/+5
| | | | | | | | | | when a separator is passed. The patch is from yoshidam (Yoshida Masato). [Bug #7646] [ruby-dev:46827] * test/ruby/test_string.rb: a test for above. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38704 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* envutil.rb: check stdout and stderrnobu2013-01-051-10/+14
| | | | | | | | * test/ruby/envutil.rb (Test::Unit::Assertions#assert_in_out_err): check stdout and stderr both. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38703 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/ruby/test_backtrace.rb: Add test for r37957 [Feature #7434]zzak2012-12-311-0/+7
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38664 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* parse.y: escaped closing parenthsisnobu2012-12-301-0/+6
| | | | | | | * parse.y (simple_re_meta): escaped closing parenthsis has different meaning. [Bug #7610] [ruby-core:51088] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38663 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/ruby/test_keyword.rb: add a test for passing hashktsj2012-12-301-0/+1
| | | | | | as a last argument. [ruby-dev:46712] [Bug #7529] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38658 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * vm_insnhelper.c: set keyword hash on Proc/block calls.ktsj2012-12-301-0/+119
| | | | | | | | [ruby-core:51172] [Bug #7630] * test/ruby/test_keyword.rb: add tests for above. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38657 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* object.c: singleton class clonenobu2012-12-291-0/+14
| | | | | | | | | * object.c (rb_obj_clone): attach clone to its singleton class during cloning singleton class so that singleton_method_added will be called on it. based on the patch by shiba (satoshi shiba)[Bug #5283] in [ruby-dev:44477]. [Bug #5283] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38648 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/ruby/test_class.rb (test_cannot_reinitialize_class_with_initialize_copy),nobu2012-12-291-12/+12
| | | | | | (test_invalid_superclass): get rid of confusing ruby-mode.el. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38647 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* vm_insnhelper.c: no splat single opt argnobu2012-12-281-0/+16
| | | | | | | | * vm_insnhelper.c (vm_yield_setup_block_args): pass single argument to single optional parameter unchanged without splatting. [Bug #7621] [ruby-dev:46801] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38639 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * proc.c (method_eq): fix the documentation to refer to owner.shugo2012-12-281-0/+15
| | | | | | | | | [ruby-core:51105] [Bug #7613] * test/ruby/test_method.rb (test_alias_onwer): new test to confirm that `a == b' returns false if owners of a and b are different. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38638 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * variable.c (rb_mod_remove_const): fix segv caused by r38558.naruse2012-12-271-0/+5
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38635 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Add opts to prevent generating core filenaruse2012-12-261-1/+2
| | | | | | Given path is a dummy executable file to set as $0, not to read its content. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38618 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* test_rubyoptions.rb: ARGFnobu2012-12-251-1/+1
| | | | | | | | * test/ruby/test_rubyoptions.rb (TestRubyOptions#test_segv_test): to read ARGV files is ARGF. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38614 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Fix argument for assert_in_out_err to fix test failurenaruse2012-12-251-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38613 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * vm_trace.c (rb_threadptr_exec_event_hooks_and_pop_frame):ko12012-12-251-0/+23
| | | | | | | | | | | | | | | | | pop a frame before JUMP_TAG() if exception occurred. This change fix bug of Ruby 1.9. [ruby-core:51128] [ruby-trunk - Bug #7624] * vm_core.h (EXEC_EVENT_HOOK_AND_POP_FRAME): add to use `rb_threadptr_exec_event_hooks_and_pop_frame()'. * vm.c (vm_exec): use EXEC_EVENT_HOOK_AND_POP_FRAME() while exception handling. While exception hadnling, if an exception is raised in hooks, need to pop current frame and raise this raised exception by hook. * test/ruby/test_settracefunc.rb: add a test. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38601 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Add test for r38543 [Bug #7597] [ruby-dev:46786]naruse2012-12-251-4/+10
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38593 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* error.c: rb_write_error_strnobu2012-12-251-0/+7
| | | | | | | | | * error.c (compile_err_append, compile_warn_print, warn_print): use rb_write_error_str() instead of writing to rb_stderr directly. * io.c (rb_write_error_str): a stopgap measure not to unblock GVL. warning from require seems to still have race condition errors. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38590 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* scoped constant op-assignmentnobu2012-12-242-1/+67
| | | | | | | | | * node.h (NODE_OP_CDECL), compile.c (iseq_compile_each), parse.y (stmt, arg): allow scoped constant op-assignment. [ruby-core:40154] [Bug #5449] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38585 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* test_argf.rb: duplicated testnobu2012-12-241-10/+0
| | | | | | | * test/ruby/test_argf.rb (TestArgf#test_lines): remove duplicated test whose content is test_bytes actually. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38581 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * thread.c: rename methods:ko12012-12-231-24/+24
| | | | | | | | | | | | | | | | | | from Thread.async_interrupt_timing to Thread.handle_interrupt, from Thread.async_interrupted? to Thread.pending_interrupt?. Also rename option from `defer' to `never'. [ruby-core:51074] [ruby-trunk - Feature #6762] * vm_core.c, thread.c: rename functions and data structure `async_errinfo' to `pending_interrupt'. * thread.c: add global variables sym_immediate, sym_on_blocking and sym_never. * cont.c, process.c, vm.c, signal.c: ditto. * lib/sync.rb, lib/thread.rb: catch up this renaming. * test/ruby/test_thread.rb: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38577 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Deprecate #{lines,bytes,chars,codepoints} of IO-likes.knu2012-12-222-6/+65
| | | | | | | | | | | | | | | * io.c (rb_io_lines, rb_io_bytes, rb_io_chars, rb_io_codepoints): Deprecate IO#{lines,bytes,chars,codepoints} and those of ARGF. [Feature #6670] * ext/stringio/stringio.c (strio_lines, strio_bytes, strio_chars) (strio_codepoints): Deprecate StringIO#{lines,bytes,chars,codepoints}. [Feature #6670] * ext/zlib/zlib.c (rb_gzreader_lines, rb_gzreader_bytes): Deprecate Zlib::GzipReader#{lines,bytes}. [Feature #6670] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38563 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * include/ruby/intern.h: add the prototype declaration ofmrkn2012-12-222-0/+72
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | rb_num_coerce_bit. * numeric.c (rb_num_coerce_bit): the new coerce function for bitwise binary operation. * bignum.c (rb_big_and): use coerce to convert the argument, which isn't a Fixnum nor a Bignum, to the corresponding Integer object so that bitwise operations can support Integer-mimic objects. [Bug #1792] [ruby-core:39491] * bignum.c (rb_big_or): ditto. * bignum.c (rb_big_xor): ditto. * numeric.c (bit_coerce): ditto. * numeric.c (fix_and): ditto. * numeric.c (fix_or): ditto. * numeric.c (fix_xor): ditto. * test/ruby/test_integer.rb: add tests for the above changes. * test/ruby/test_bignum.rb: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38560 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* internal.h: quote unprintablenobu2012-12-221-2/+6
| | | | | | | | | * internal.h (QUOTE, QUOTE_ID): quote unprintable chars in strings and IDs. [Bug #7574] [ruby-dev:46749] * string.c (rb_str_quote_unprintable): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38558 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* object.c: no nested symbolnobu2012-12-221-2/+3
| | | | | | * object.c (rb_mod_const_get): symbol cannot be nested constant name. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38553 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* object.c: check more strictlynobu2012-12-221-2/+3
| | | | | | | * object.c (rb_mod_const_get): check more strictly. [ruby-dev:46748] [Bug #7573] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38551 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * cont.c (rb_fiber_start): in case of jump with TAG_FATAL,nagachika2012-12-221-1/+1
| | | | | | | | | | | | | | | | | enqueue error into async_errinfo_queue, because you cannot call TH_TAG_JUMP() in this function. [ruby-dev:45218] [Bug #5993] * thread.c (rb_threadptr_execute_interrupts): now INT2FIX(TAG_FATAL) can be popped from async_errinfo_queue. * vm.c (rb_vm_make_jump_tag_but_local_jump): revert r38441. rb_vm_make_jump_tag_but_local_jump() shouldn't return exception in case of state == TAG_FATAL. * test/ruby/test_fiber.rb (test_exit_in_fiber): fix a test to illuminate Thread.exit should terminate current Thread. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38550 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * struct.c (make_struct): remove junk ID check to allow members whoglass2012-12-221-0/+7
| | | | | | | | have junk name like "foo\000". * test/ruby/test_struct.rb: Test for above. [Bug #7575] [ruby-dev:46750] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38547 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/ruby/test_iseq.rb: disable a test which checks featuresko12012-12-211-1/+1
| | | | | | | | removed at r38532. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38535 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Add test for r38529 [Bug #7536]naruse2012-12-211-0/+13
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38530 b2dd03c8-39d4-4d8f-98ff-823fe69b080e