summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorko1 <ko1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2017-01-26 09:57:41 +0000
committerko1 <ko1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2017-01-26 09:57:41 +0000
commit8fa99e64585a545ada07c9adba5441adeb217de3 (patch)
treeea78eb5c242bac81c7cae255a8df33a6894746f0
parenta4bc6c277a4fd8363fadbbea510de544b96d3040 (diff)
skip T_IMEMO for VMDEBUG
* vm_dump.c (vm_stack_dump_each): skip T_IMEMO object to display for VMDEBUG=3. [Bug #13030] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57427 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--vm_dump.c11
1 files changed, 8 insertions, 3 deletions
diff --git a/vm_dump.c b/vm_dump.c
index c74f61dd66..01c6db9858 100644
--- a/vm_dump.c
+++ b/vm_dump.c
@@ -281,11 +281,16 @@ vm_stack_dump_each(rb_thread_t *th, rb_control_frame_t *cfp)
ptr = vm_base_ptr(cfp);
for (; ptr < sp; ptr++, i++) {
- if (*ptr == Qundef) {
+ switch (TYPE(*ptr)) {
+ case T_UNDEF:
rstr = rb_str_new2("undef");
- }
- else {
+ break;
+ case T_IMEMO:
+ rstr = rb_str_new2("imemo"); /* TODO: can put mode detail information */
+ break;
+ default:
rstr = rb_inspect(*ptr);
+ break;
}
fprintf(stderr, " stack %2d: %8s (%"PRIdPTRDIFF")\n", i, StringValueCStr(rstr),
(ptr - th->stack));