]> git.ipfire.org Git - thirdparty/elfutils.git/commitdiff
Fix to_string for constant-block case.
authorRoland McGrath <roland@redhat.com>
Fri, 21 Aug 2009 02:42:44 +0000 (19:42 -0700)
committerRoland McGrath <roland@redhat.com>
Fri, 21 Aug 2009 02:42:51 +0000 (19:42 -0700)
libdw/ChangeLog
libdw/c++/values.cc

index b36935e237fd2c5d32ade2261817fbd2acd330c2..4c0531be1a7de830a1deafb1954e4ba30c2dca7d 100644 (file)
@@ -1,5 +1,7 @@
 2009-08-20  Roland McGrath  <roland@redhat.com>
 
+       * c++/values.cc (value_string): Fix constant-block case.
+
        * c++/dwarf_comparator: Use tracker::subtracker for subcomparator.
        Let mismatch hooks return bool that is true to keep comparing.
        * c++/dwarf_tracker: Define subtracker.
index c8f65bb389f341b361952168d37a2e72de1ad082..b9e2730563da4444ba5be2e18bf28e0077812aba 100644 (file)
@@ -197,7 +197,10 @@ value_string (const value_type &value)
 
     case dwarf::VS_macptr:     // XXX punt for now, treat as constant
     case dwarf::VS_constant:
-      return hex_string (value.constant ());
+      if (value.constant_is_integer ())
+       return hex_string (value.constant ());
+      return dec_string (value.constant_block ().size (),
+                        "{block of ", " bytes}");
 
     case dwarf::VS_dwarf_constant:
       return value.dwarf_constant ().to_string ();