summaryrefslogtreecommitdiffhomepage
path: root/src/vm.c
diff options
context:
space:
mode:
authorYukihiro "Matz" Matsumoto <[email protected]>2021-01-02 13:22:55 +0900
committerYukihiro "Matz" Matsumoto <[email protected]>2021-01-02 20:28:28 +0900
commitb151a697e09b2088db3d1f86f355f32fb60f9691 (patch)
treeff474ea5c0b0b3d1dfd26a6b03a22ba7edd19248 /src/vm.c
parentc1f05a7fb3e15acbe8bce0789af505a2b6a5876a (diff)
downloadmruby-b151a697e09b2088db3d1f86f355f32fb60f9691.tar.gz
mruby-b151a697e09b2088db3d1f86f355f32fb60f9691.zip
Fixed wrong casting in `OP_LOADI32`.
Negative integer `>-65535` had wrong value, e,g, `p(-40550)` printed `4294926746` since Nov. 2020, sigh.
Diffstat (limited to 'src/vm.c')
-rw-r--r--src/vm.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/vm.c b/src/vm.c
index 76bd541c3..7a93eeac3 100644
--- a/src/vm.c
+++ b/src/vm.c
@@ -1134,7 +1134,7 @@ RETRY_TRY_BLOCK:
}
CASE(OP_LOADI32, BSS) {
- SET_INT_VALUE(mrb, regs[a], (mrb_int)(((uint32_t)b<<16)+c));
+ SET_INT_VALUE(mrb, regs[a], (int32_t)(((uint32_t)b<<16)+c));
NEXT;
}