diff options
author | Nobuyoshi Nakada <[email protected]> | 2023-09-30 02:07:12 +0900 |
---|---|---|
committer | Nobuyoshi Nakada <[email protected]> | 2023-09-30 02:09:29 +0900 |
commit | ce717be1881e5751ec07b6f65901a750e7f3069a () | |
tree | c37c1f8aa37cfaa7ac96e4d3cf17b82df2e820e6 /misc | |
parent | 9fa7ec9332a7d39f1c7d8056bbcf62cb6f9340df (diff) |
Fix RBignum print [ci skip]
-rw-r--r-- | misc/lldb_rb/rb_heap_structs.py | 5 | ||||
-rw-r--r-- | misc/lldb_rb/utils.py | 6 |
2 files changed, 5 insertions, 6 deletions
@@ -132,11 +132,12 @@ class RbObject(LLDBInterface): return len def bignum_len(self): - if self.flags & flUser2: len = ((self.flags & (self.flUser3 | self.flUser4 | self.flUser5) ) >> (self.flUshift + 3)) else: - len = self.val.GetValueForExpressionPath("->as.heap.len") return len @@ -175,8 +175,6 @@ class RbInspector(LLDBInterface): self._append_command_output("p *(struct RHash *) %0#x" % val.GetValueAsUnsigned()) elif rval.is_type("RUBY_T_BIGNUM"): - tRBignum = self.target.FindFirstType("struct RBignum").GetPointerType() - sign = '-' if (rval.flags & self.ruby_globals["RUBY_FL_USER1"]) != 0: sign = '+' @@ -188,9 +186,9 @@ class RbInspector(LLDBInterface): % val.GetValueAsUnsigned()) else: print("T_BIGNUM: sign=%s len=%d" % (sign, len), file=self.result) - print(val.Dereference(), file=self.result) self._append_command_output( - "expression -Z %x -fx -- (const BDIGIT*)((struct RBignum*)%d)->as.heap.digits" % (len, val.GetValueAsUnsigned())) elif rval.is_type("RUBY_T_FLOAT"): |