libstdc++: [_GLIBCXX_INLINE_VERSION] Add gdb pretty print for _GLIBCXX_DEBUG

In _GLIBCXX_DEBUG mode containers are in std::__debug namespace but not template
parameters. In _GLIBCXX_INLINE_VERSION mode most types are in std::__8 namespace but
not std::__debug containers. We need to register specific type printers for this
combination.

libstdc++-v3/ChangeLog:

	* python/libstdcxx/v6/printers.py (add_one_template_type_printer): Register
	printer for types in std::__debug namespace with template parameters in std::__8
	namespace.
This commit is contained in:
François Dumont 2022-09-22 06:58:48 +02:00
parent 61762797ba
commit 13337ea9a1

View file

@ -2034,6 +2034,10 @@ def add_one_template_type_printer(obj, name, defargs):
printer = TemplateTypePrinter(ns+name, defargs)
gdb.types.register_type_printer(obj, printer)
# Add type printer for same type in debug namespace:
printer = TemplateTypePrinter('std::__debug::'+name, defargs)
gdb.types.register_type_printer(obj, printer)
class FilteringTypePrinter(object):
r"""
A type printer that uses typedef names for common template specializations.