diff options
author | Nobuyoshi Nakada <[email protected]> | 2025-04-02 17:32:37 +0900 |
---|---|---|
committer | Nobuyoshi Nakada <[email protected]> | 2025-04-03 16:56:24 +0900 |
commit | 1dddc6c78b5f6dc6ae18ee04ebe44abfce3b0433 (patch) | |
tree | 290ab374b8dfac3ed96d0f6c46b961904ae4a262 /proc.c | |
parent | 29dafa5fc21343803127dda7d608f1f1f7908e7b (diff) |
Remove no longer used union
IMEMO_NEW takes just one memo value, min/max argc are assigned
directly and packed argc is not used.
Diffstat (limited to 'proc.c')
-rw-r--r-- | proc.c | 10 |
1 files changed, 2 insertions, 8 deletions
@@ -735,11 +735,6 @@ sym_proc_new(VALUE klass, VALUE sym) struct vm_ifunc * rb_vm_ifunc_new(rb_block_call_func_t func, const void *data, int min_argc, int max_argc) { - union { - struct vm_ifunc_argc argc; - VALUE packed; - } arity; - if (min_argc < UNLIMITED_ARGUMENTS || #if SIZEOF_INT * 2 > SIZEOF_VALUE min_argc >= (int)(1U << (SIZEOF_VALUE * CHAR_BIT) / 2) || @@ -756,14 +751,13 @@ rb_vm_ifunc_new(rb_block_call_func_t func, const void *data, int min_argc, int m rb_raise(rb_eRangeError, "maximum argument number out of range: %d", max_argc); } - arity.argc.min = min_argc; - arity.argc.max = max_argc; rb_execution_context_t *ec = GET_EC(); struct vm_ifunc *ifunc = IMEMO_NEW(struct vm_ifunc, imemo_ifunc, (VALUE)rb_vm_svar_lep(ec, ec->cfp)); ifunc->func = func; ifunc->data = data; - ifunc->argc = arity.argc; + ifunc->argc.min = min_argc; + ifunc->argc.max = max_argc; return ifunc; } |