Yukihiro "Matz" Matsumoto
168eb8c267
readint.c (mrb_read_int): narrow scope of a local variable
2024-03-12 08:21:27 +09:00
Yukihiro "Matz" Matsumoto
db8368fa86
numeric.c: remove bit operations methods from Float class; #6197
...
mruby used to use float numbers for overflown integers before we
implemented big integers. Now we don't need bit operations for float
numbers anymore. Also removed tests for shift operations for float
numbers.
2024-03-11 11:44:41 +09:00
niyarin
af8e772b9e
Fix int_xor to call flo_xor.
2024-03-10 12:13:34 +09:00
Yukihiro "Matz" Matsumoto
44edd3438b
gc.c: remove unused local variable; ref #6194
2024-03-09 14:29:42 +09:00
Yukihiro "Matz" Matsumoto
4b312bdb2f
debug.c: narrow scope of local variables
2024-03-09 14:29:42 +09:00
Yukihiro "Matz" Matsumoto
678bdd2c4b
cdump.c (sym_operator_name): narrow scope of local variables
2024-03-09 14:29:42 +09:00
Yukihiro "Matz" Matsumoto
3699f013ac
Merge pull request #6193 from dearblue/c-epilogue-assert
...
Fix wrong assertion in `OP_SENDB`.
2024-03-09 13:23:33 +09:00
Yukihiro "Matz" Matsumoto
f1f022bd1a
Merge pull request #6194 from dearblue/count-closures
...
Simplify the calculation of the number of closures in `MRB_TT_FIBER`
2024-03-09 13:22:47 +09:00
dearblue
cb36398d30
Simplify the calculation of the number of closures in MRB_TT_FIBER
2024-03-08 22:06:08 +09:00
dearblue
9616971c70
Fix wrong assertion in OP_SENDB.
...
Assertions were failing on exit if started with `mrb_fiber_resume()`.
The bug that caused it was introduced by commit 42308c42b5 (#6106 ).
The bug was moved by commit 990e18ad59 .
2024-03-08 21:56:00 +09:00
dearblue
4380773666
Fix OP_STOP with exception
...
Previously, `mrb->exc` would remain replaced by a `break` object if a rewind operation was performed during the processing of a `OP_STOP` instruction.
This problem has existed since #5060 , when it was introduced in mruby-3.0.
However, as of mruby-3.0, a manual or third-party generator is required to cause the `OP_STOP` instruction to be issued.
Therefore, it is believed that this has not had an impact until now.
2024-03-08 21:50:46 +09:00
Yukihiro "Matz" Matsumoto
9257a61b39
Merge pull request #6137 from dearblue/fiber-unreachable
...
Remove unreachable blocks in `OP_RETURN`
2024-03-07 16:13:56 +09:00
Yukihiro "Matz" Matsumoto
a8694bdefb
Merge pull request #6184 from dearblue/L_STOP
...
Remove the `L_STOP` label
2024-03-06 18:02:34 +09:00
Yukihiro "Matz" Matsumoto
130ec9cd90
backtrace.c (mrb_unpack_backtrace): need no NULL check
2024-03-05 12:24:49 +09:00
Yukihiro "Matz" Matsumoto
439a895f46
symbol.c: use post increment if possible (just style matter)
2024-03-04 13:01:21 +09:00
Yukihiro "Matz" Matsumoto
d840274805
symbol.c: narrow scope of local variables
2024-03-04 13:01:20 +09:00
Yukihiro "Matz" Matsumoto
aa0cb370a8
kernel.c (mrb_obj_is_instance_of): add const qualifier
2024-03-04 13:01:20 +09:00
Yukihiro "Matz" Matsumoto
b0d11ddb4e
error.c (mrb_sys_fail): narrow scope of local variables
2024-02-29 19:14:19 +09:00
Yukihiro "Matz" Matsumoto
a0d10c0384
pool.c (mrb_pool_close): narrow scope of a local variable
2024-02-29 19:14:19 +09:00
Yukihiro "Matz" Matsumoto
371b13a32e
dump.c: inline loop variables (with small refactoring)
2024-02-29 19:14:18 +09:00
Yukihiro "Matz" Matsumoto
099d01c751
class.c (mrb_mod_module_function): narrow scope of local variables
2024-02-29 19:14:18 +09:00
Yukihiro "Matz" Matsumoto
11d7c74e50
Merge pull request #6185 from dearblue/keep_context
...
Added `mrb_callinfo::u.keep_context` for clarity
2024-02-29 19:13:59 +09:00
Yukihiro "Matz" Matsumoto
0673563968
Merge pull request #6186 from dearblue/check-env.cxt
...
Omit NULL check of `e->cxt` in `OP_RETURN_BLK`
2024-02-25 23:46:16 +09:00
Yukihiro "Matz" Matsumoto
8130bbc479
string.c (mrb_str_len_to_dbl): should return zero for invalid string
...
We should not use uninitialized value; fix #6183
2024-02-24 23:03:15 +09:00
dearblue
e94eef6f98
Omit NULL check of e->cxt in OP_RETURN_BLK
...
Since `mrb->c` is never `NULL`, there is no need to check it beforehand.
2024-02-24 21:38:51 +09:00
dearblue
ce8b2d4973
Added mrb_callinfo::u.keep_context for clarity
2024-02-24 21:32:11 +09:00
dearblue
c7af3d48e3
Remove the L_STOP label
...
The post-processing of the jump source is decided, and it is more natural to deploy it on the spot.
2024-02-24 18:23:33 +09:00
Yukihiro "Matz" Matsumoto
6248e9c2ef
Merge pull request #6155 from dearblue/jmpbuf_id
...
Removed `mrb_jmpbuf_id` for C++ exceptions
2024-02-23 23:51:45 +09:00
Yukihiro "Matz" Matsumoto
72f956d3e0
readfloat.c: remove unused local variable
2024-02-22 10:40:24 +09:00
Yukihiro "Matz" Matsumoto
9e9545b1a6
Merge pull request #6176 from dearblue/alias-proc
...
Stop assuming alias proc in `CI_PROC_SET()`
2024-02-18 22:13:30 +09:00
dearblue
f5cce68ba6
Stop assuming alias proc in CI_PROC_SET()
...
Resolving alias proc should be done by the caller of `CI_PROC_SET()`.
The same applies to `mrb_vm_ci_proc_set()`.
2024-02-18 21:09:45 +09:00
dearblue
2c66d34a7e
Corrected strange conditional in mrb_vm_run()
...
This was introduced in commit 365c151df0 .
I should have checked env first.
2024-02-18 18:18:21 +09:00
Yukihiro "Matz" Matsumoto
7d199b7256
src/error.h: remove unused header
2024-02-16 08:10:53 +09:00
Yukihiro "Matz" Matsumoto
a1be05e79f
src/opcode.h: remove unused header
2024-02-16 08:09:58 +09:00
Yukihiro "Matz" Matsumoto
3eeeb8fabf
string.c (memsearch_swar): skip a local variable
2024-02-15 14:01:49 +09:00
Yukihiro "Matz" Matsumoto
55ca34c31b
backtrace.c (mrb_print_backtrace): skip a local variable
2024-02-15 14:01:48 +09:00
Yukihiro "Matz" Matsumoto
9c840a68e2
string.c (memsearch_swar): boundary check by the latest position
2024-02-13 22:36:03 +09:00
Yukihiro "Matz" Matsumoto
6810423da1
backtrace.c (mrb_print_backtrace): avoid backtrace to array conversion
...
Made print_backtrace() to support both array form and packed backtrace
form, so that we can avoid allocating an array.
2024-02-13 16:18:14 +09:00
Yukihiro "Matz" Matsumoto
441de05376
error.h: use RBasic instead of RObject for generic objects
...
RObject is type for objects with instance variables. For generic
objects, use RBasic.
2024-02-13 11:05:27 +09:00
Yukihiro "Matz" Matsumoto
f285420653
backtrace.c (decode_location): decode packed backtrace location on demand.
2024-02-13 00:07:54 +09:00
Yukihiro "Matz" Matsumoto
abcad36bae
string.c (memsearch_swar): fixed a buffer overflow
2024-02-09 19:09:01 +09:00
Yukihiro "Matz" Matsumoto
868aeaf48c
string.c (memsearch_swar): fixed a buffer overflow
2024-02-09 18:52:44 +09:00
Yukihiro "Matz" Matsumoto
874f1e0138
backtrace.c (copy_location): rename some function and arguments
2024-02-08 23:41:22 +09:00
Yukihiro "Matz" Matsumoto
432caf0670
backtrace.c (pack_backtrace): refactor the function that called once
2024-02-08 23:22:48 +09:00
Yukihiro "Matz" Matsumoto
60919807e5
backtrace.c (each_backtrace): make return type to size_t
2024-02-07 17:34:33 +09:00
Yukihiro "Matz" Matsumoto
0a11215452
backtrace.c (packed_backtrace): avoid calling each_backtrace() twice
...
Since the length of the backtrace is at most `ciidx + 1` we can avoid
the first call of each_backtrace().
2024-02-07 17:32:58 +09:00
Yukihiro "Matz" Matsumoto
b67cea4442
backtrace.c (pack_backtrace_i): avoid infinite loop; ref #6161
...
When irep->refcnt reaches UINT16_MAX, mrb_irep_incref() raises
exception but the function pack_backtrace_i() is called from
mrb_exc_raise() thus causes the infinite loop problem. So this is a
hack-ish workaround by making irep reference to NULL if refcnt reaches
the maximum count. Probably we will address this issue again to make it
better.
2024-02-07 17:30:11 +09:00
Yukihiro "Matz" Matsumoto
b8e4c4b6ba
Merge pull request #6166 from dearblue/mrb_heap_page
...
Stop pseudo flexible array in `mrb_heap_page`
2024-02-05 21:45:04 +09:00
Yukihiro "Matz" Matsumoto
32fb0c04ee
Merge pull request #6165 from dearblue/RVALUE
...
Reduce `RVALUE` related pointer casts.
2024-02-05 21:42:51 +09:00
dearblue
8f14785f10
Stop pseudo flexible array in mrb_heap_page
...
For reference, the flexible array was introduced by commit 3ab2f9371e (#2997 ).
Subsequently changed for compatibility with C++ by commit 24939723d7 (#5596 ).
2024-02-04 21:55:54 +09:00