PR libstdc++/67440 make pretty printers work with GDB 7.6 again
authorJonathan Wakely <jwakely@redhat.com>
Thu, 16 Mar 2017 14:11:48 +0000 (14:11 +0000)
committerJonathan Wakely <redi@gcc.gnu.org>
Thu, 16 Mar 2017 14:11:48 +0000 (14:11 +0000)
PR libstdc++/67440
* python/libstdcxx/v6/printers.py (find_type): Avoid gdb.Type.name
for GDB 7.6 compatibility, use gdb.Type.unqualified instead.

From-SVN: r246196

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

index 8ba7efa..58b2522 100644 (file)
@@ -1,3 +1,9 @@
+2017-03-16  Jonathan Wakely  <jwakely@redhat.com>
+
+       PR libstdc++/67440
+       * python/libstdcxx/v6/printers.py (find_type): Avoid gdb.Type.name
+       for GDB 7.6 compatibility, use gdb.Type.unqualified instead.
+
 2017-03-15  Ville Voutilainen  <ville.voutilainen@gmail.com>
 
        Implement LWG 2857, {variant,optional,any}::emplace should
index 36dd81d..14025dd 100644 (file)
@@ -85,9 +85,8 @@ except ImportError:
 def find_type(orig, name):
     typ = orig.strip_typedefs()
     while True:
-        # Use typ.name here instead of str(typ) to discard any const,etc.
-        # qualifiers.  PR 67440.
-        search = typ.name + '::' + name
+        # Strip cv-qualifiers.  PR 67440.
+        search = '%s::%s' % (typ.unqualified(), name)
         try:
             return gdb.lookup_type(search)
         except RuntimeError: