Fix enums in comparisons

This commit is contained in:
Nobuyoshi Nakada 2025-03-16 12:27:56 +09:00
parent 06919949a6
commit f23146f09f
No known key found for this signature in database
GPG Key ID: 3582D74E1FEE4465
Notes: git 2025-03-16 05:15:28 +00:00

10
proc.c
View File

@ -1179,10 +1179,10 @@ rb_block_pair_yield_optimizable(void)
min = rb_vm_block_min_max_arity(&block, &max); min = rb_vm_block_min_max_arity(&block, &max);
switch (vm_block_type(&block)) { switch (vm_block_type(&block)) {
case block_handler_type_symbol: case block_type_symbol:
return 0; return 0;
case block_handler_type_proc: case block_type_proc:
{ {
VALUE procval = block_handler; VALUE procval = block_handler;
rb_proc_t *proc; rb_proc_t *proc;
@ -1192,7 +1192,7 @@ rb_block_pair_yield_optimizable(void)
return min > 1; return min > 1;
} }
case block_handler_type_ifunc: case block_type_ifunc:
{ {
const struct vm_ifunc *ifunc = block.as.captured.code.ifunc; const struct vm_ifunc *ifunc = block.as.captured.code.ifunc;
if (ifunc->flags & IFUNC_YIELD_OPTIMIZABLE) return 1; if (ifunc->flags & IFUNC_YIELD_OPTIMIZABLE) return 1;
@ -1219,10 +1219,10 @@ rb_block_arity(void)
block_setup(&block, block_handler); block_setup(&block, block_handler);
switch (vm_block_type(&block)) { switch (vm_block_type(&block)) {
case block_handler_type_symbol: case block_type_symbol:
return -1; return -1;
case block_handler_type_proc: case block_type_proc:
return rb_proc_arity(block_handler); return rb_proc_arity(block_handler);
default: default: