diff options
| author | dearblue <[email protected]> | 2020-11-30 22:36:26 +0900 |
|---|---|---|
| committer | dearblue <[email protected]> | 2020-11-30 22:36:26 +0900 |
| commit | 0ecb0fd97be3a8f9a7a092d5949a390957b5df0c (patch) | |
| tree | 625488603ac785495e9fd8bc62fba0c52da99d79 /src | |
| parent | 9f5c0777f17fe8caff89cef75f2056262e708349 (diff) | |
| download | mruby-0ecb0fd97be3a8f9a7a092d5949a390957b5df0c.tar.gz mruby-0ecb0fd97be3a8f9a7a092d5949a390957b5df0c.zip | |
Fixed print catch handler address in codedump; ref #5200
It became 32 bits in #5200, but only the upper 16 bits were printed.
Diffstat (limited to 'src')
| -rw-r--r-- | src/codedump.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/codedump.c b/src/codedump.c index 94d4f24c0..bc882b890 100644 --- a/src/codedump.c +++ b/src/codedump.c @@ -86,9 +86,9 @@ codedump(mrb_state *mrb, const mrb_irep *irep) const struct mrb_irep_catch_handler *e = mrb_irep_catch_handler_table(irep); for (; i > 0; i --, e ++) { - int begin = bin_to_uint16(e->begin); - int end = bin_to_uint16(e->end); - int target = bin_to_uint16(e->target); + uint32_t begin = mrb_irep_catch_handler_unpack(e->begin); + uint32_t end = mrb_irep_catch_handler_unpack(e->end); + uint32_t target = mrb_irep_catch_handler_unpack(e->target); char buf[20]; const char *type; @@ -105,7 +105,7 @@ codedump(mrb_state *mrb, const mrb_irep *irep) type = buf; break; } - printf("catch type: %-8s begin: %04d end: %04d target: %04d\n", type, begin, end, target); + printf("catch type: %-8s begin: %04" PRIu32 " end: %04" PRIu32 " target: %04" PRIu32 "\n", type, begin, end, target); } } |
