mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
* vm.c (vm_make_proc_from_block): should convert a Symbol to a Proc.
[ruby-core:72083] [Bug #11811] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53152 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
63f486f1db
commit
ed57f299b2
3 changed files with 16 additions and 0 deletions
|
@ -1,3 +1,8 @@
|
|||
Wed Dec 16 19:30:56 2015 Shugo Maeda <shugo@ruby-lang.org>
|
||||
|
||||
* vm.c (vm_make_proc_from_block): should convert a Symbol to a Proc.
|
||||
[ruby-core:72083] [Bug #11811]
|
||||
|
||||
Wed Dec 16 16:17:34 2015 Eric Wong <e@80x24.org>
|
||||
|
||||
* test/ruby/test_io.rb: fix spelling errors
|
||||
|
|
|
@ -532,4 +532,11 @@ EOS
|
|||
assert_warning("") {le.drop(1).force}
|
||||
assert_warning("") {le.drop_while{false}.force}
|
||||
end
|
||||
|
||||
def test_symbol_chain
|
||||
assert_equal(["1", "3"], [1, 2, 3].lazy.reject(&:even?).map(&:to_s).force)
|
||||
assert_raise(NoMethodError) do
|
||||
[1, 2, 3].lazy.map(&:undefined).map(&:to_s).force
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
4
vm.c
4
vm.c
|
@ -567,6 +567,10 @@ vm_make_proc_from_block(rb_thread_t *th, rb_block_t *block, VALUE *procptr)
|
|||
*procptr = block->proc = rb_vm_make_proc(th, block, rb_cProc);
|
||||
return TRUE;
|
||||
}
|
||||
else if (SYMBOL_P(block->proc)) {
|
||||
*procptr = rb_sym_to_proc(block->proc);
|
||||
return TRUE;
|
||||
}
|
||||
else {
|
||||
*procptr = block->proc;
|
||||
return FALSE;
|
||||
|
|
Loading…
Reference in a new issue