diff options
author | nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2007-11-09 01:29:24 +0000 |
---|---|---|
committer | nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2007-11-09 01:29:24 +0000 |
commit | 4c040861c885b7446ae0a7ab786cc7994abf83e4 (patch) | |
tree | 5f4c1ef570f4afc4aaa19961cab944695bc4c39f /vm.c | |
parent | 9f6de20f5879ea8460e74e2b7bf1e989cc6573cb (diff) | |
download | ruby-4c040861c885b7446ae0a7ab786cc7994abf83e4.tar.gz |
* eval.c (rb_invoke_method): check if invoked in function style.
[ruby-core:13245]
* insnhelper.ci (vm_call_cfunc, vm_cfunc_flags): stores and returns VM
calling flags.
* vm.c (rb_vm_cfunc_funcall_p): returns if the current method is
invoked in function style.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13844 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'vm.c')
-rw-r--r-- | vm.c | 8 |
1 files changed, 8 insertions, 0 deletions
@@ -1436,6 +1436,14 @@ rb_vm_call_cfunc(VALUE recv, VALUE (*func)(VALUE), VALUE arg, rb_block_t *blockp return val; } +int +rb_vm_cfunc_funcall_p(rb_control_frame_t *cfp) +{ + if (vm_cfunc_flags(cfp) & (VM_CALL_FCALL_BIT | VM_CALL_VCALL_BIT)) + return Qtrue; + return Qfalse; +} + /* vm */ static void |