From f52a49130fde7f0f884f0dafc10ff6c8d260473d Mon Sep 17 00:00:00 2001 From: nobu Date: Fri, 6 Oct 2017 06:11:25 +0000 Subject: [PATCH] .gdbinit: print_id in rp_id [ci skip] * .gdbinit (rp_id): use print_id instead of calling lookup_id_str() in a debugger context. * symbol.c (ID_ENTRY_UNIT): made visible to debuggers. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60128 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- .gdbinit | 13 ++++++------- symbol.c | 2 +- 2 files changed, 7 insertions(+), 8 deletions(-) diff --git a/.gdbinit b/.gdbinit index 9d14fb2bb9..356b743709 100644 --- a/.gdbinit +++ b/.gdbinit @@ -398,12 +398,7 @@ define rp_id end end printf "(%ld): ", $id - set $str = lookup_id_str($id) - if $str - rp_string $str - else - echo undef\n - end + print_id $id end end end @@ -1093,7 +1088,11 @@ define print_id set $arylen = $ary->as.heap.len end set $result = $aryptr[($serial % ID_ENTRY_UNIT) * ID_ENTRY_SIZE + $t] - print_string $result + if $result != RUBY_Qnil + print_string $result + else + echo undef\n + end end end end diff --git a/symbol.c b/symbol.c index f4516ebbe4..45d49d20d9 100644 --- a/symbol.c +++ b/symbol.c @@ -51,7 +51,7 @@ Init_op_tbl(void) } } -enum {ID_ENTRY_UNIT = 512}; +static const int ID_ENTRY_UNIT = 512; enum id_entry_type { ID_ENTRY_STR,