diff options
author | ko1 <ko1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2018-01-08 16:06:33 +0000 |
---|---|---|
committer | ko1 <ko1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2018-01-08 16:06:33 +0000 |
commit | 8a83cd100bb932f47ecc7e214e9d89cb8ec3beae (patch) | |
tree | 339ee659c6ec32ad00b1dc7cc74580eca1a42245 /vm_core.h | |
parent | b4960648bf524605f87e5a5562c3a4b68d2a08bd (diff) |
use `getblockparamproxy` to pass blocks.
* compile.c (setup_args): use `getblockparamproxy` (`rb_block_param_proxy`)
to represent a block parameter passing.
* vm_args.c (vm_caller_setup_arg_block): check `rb_block_param_proxy`
instead of using `VM_CALL_ARGS_BLOCKARG_BLOCKPARAM` call flag.
* vm_core.h (VM_CALL_ARGS_BLOCKARG_BLOCKPARAM): removed.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61694 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'vm_core.h')
-rw-r--r-- | vm_core.h | 2 |
1 files changed, 0 insertions, 2 deletions
@@ -952,7 +952,6 @@ enum vm_check_match_type { enum vm_call_flag_bits { VM_CALL_ARGS_SPLAT_bit, /* m(*args) */ VM_CALL_ARGS_BLOCKARG_bit, /* m(&block) */ - VM_CALL_ARGS_BLOCKARG_BLOCKPARAM_bit, /* m(&block) and block is a passed block parameter */ VM_CALL_FCALL_bit, /* m(...) */ VM_CALL_VCALL_bit, /* m */ VM_CALL_ARGS_SIMPLE_bit, /* (ci->flag & (SPLAT|BLOCKARG)) && blockiseq == NULL && ci->kw_arg == NULL */ @@ -967,7 +966,6 @@ enum vm_call_flag_bits { #define VM_CALL_ARGS_SPLAT (0x01 << VM_CALL_ARGS_SPLAT_bit) #define VM_CALL_ARGS_BLOCKARG (0x01 << VM_CALL_ARGS_BLOCKARG_bit) -#define VM_CALL_ARGS_BLOCKARG_BLOCKPARAM (0x01 << VM_CALL_ARGS_BLOCKARG_BLOCKPARAM_bit) #define VM_CALL_FCALL (0x01 << VM_CALL_FCALL_bit) #define VM_CALL_VCALL (0x01 << VM_CALL_VCALL_bit) #define VM_CALL_ARGS_SIMPLE (0x01 << VM_CALL_ARGS_SIMPLE_bit) |