diff options
| author | Yukihiro "Matz" Matsumoto <[email protected]> | 2021-09-24 17:10:11 +0900 |
|---|---|---|
| committer | Yukihiro "Matz" Matsumoto <[email protected]> | 2021-09-24 17:10:11 +0900 |
| commit | c70159b3562e09a37577b4c6913de3ec7b8f06b4 (patch) | |
| tree | 363740b58b68a740cd3759e63e9010cc8ecb6bf2 /src | |
| parent | ab54ca272a65a5612508c9f49555e591c0ab0278 (diff) | |
| download | mruby-c70159b3562e09a37577b4c6913de3ec7b8f06b4.tar.gz mruby-c70159b3562e09a37577b4c6913de3ec7b8f06b4.zip | |
Revert "vm.c: add assertions instead of `mrb_ensure_hash_type()`."
This reverts commit 913a0a5a036664ab0d12a1af40b652412301c89f.
In some cases, `OP_HASHADD` operand may not be `Hash`. We should check
explicitly in those cases.
Diffstat (limited to 'src')
| -rw-r--r-- | src/vm.c | 4 |
1 files changed, 2 insertions, 2 deletions
@@ -2687,7 +2687,7 @@ RETRY_TRY_BLOCK: int lim = a+b*2+1; hash = regs[a]; - mrb_assert(mrb_type(hash) == MRB_TT_HASH); + mrb_ensure_hash_type(mrb, hash); for (i=a+1; i<lim; i+=2) { mrb_hash_set(mrb, hash, regs[i], regs[i+1]); } @@ -2697,7 +2697,7 @@ RETRY_TRY_BLOCK: CASE(OP_HASHCAT, B) { mrb_value hash = regs[a]; - mrb_assert(mrb_type(hash) == MRB_TT_HASH); + mrb_ensure_hash_type(mrb, hash); mrb_hash_merge(mrb, hash, regs[a+1]); mrb_gc_arena_restore(mrb, ai); NEXT; |
