printers.py (Tr1HashtableIterator): Update.
authorJonathan Wakely <jwakely.gcc@gmail.com>
Fri, 2 Nov 2012 01:47:17 +0000 (01:47 +0000)
committerJonathan Wakely <redi@gcc.gnu.org>
Fri, 2 Nov 2012 01:47:17 +0000 (01:47 +0000)
* python/libstdcxx/v6/printers.py (Tr1HashtableIterator): Update.
(StdForwardListPrinter): Likewise.

From-SVN: r193087

libstdc++-v3/ChangeLog
libstdc++-v3/python/libstdcxx/v6/printers.py

index 9b3187d0e021aa576b64cffbf817b5ab51a51a3e..cc3e87e5eb90753b939f4e0efbff4ac3e6538302 100644 (file)
@@ -1,3 +1,8 @@
+2012-11-02  Jonathan Wakely  <jwakely.gcc@gmail.com>
+
+       * python/libstdcxx/v6/printers.py (Tr1HashtableIterator): Update.
+       (StdForwardListPrinter): Likewise.
+
 2012-11-02  Jonathan Wakely  <jwakely.gcc@gmail.com>
 
        * include/bits/forward_list.h (forward_list(size_type)): Add missing
index 07a5ee62f355f43bc41c24e9b3250122d0dc9888..5197284b0177ced05bbf381561b49e3d9fcb4733 100644 (file)
@@ -612,7 +612,7 @@ class StdStringPrinter:
 
 class Tr1HashtableIterator:
     def __init__ (self, hash):
-        self.node = hash['_M_before_begin']['_M_nxt']
+        self.node = hash['_M_bbegin']['_M_node']['_M_nxt']
         self.node_type = find_type(hash.type, '__node_type').pointer()
 
     def __iter__ (self):
@@ -707,7 +707,9 @@ class StdForwardListPrinter:
             self.base = elt['_M_next']
             count = self.count
             self.count = self.count + 1
-            return ('[%d]' % count, elt['_M_value'])
+            valptr = elt['_M_storage'].address
+            valptr = valptr.cast(elt.type.template_argument(0).pointer())
+            return ('[%d]' % count, valptr.dereference())
 
     def __init__(self, typename, val):
         self.val = val