https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80276
--- Comment #7 from Jonathan Wakely <redi at gcc dot gnu.org> --- Author: redi Date: Mon Jan 15 11:13:53 2018 New Revision: 256689 URL: https://gcc.gnu.org/viewcvs?rev=256689&root=gcc&view=rev Log: PR libstdc++/80276 fix template argument handling in type printers PR libstdc++/80276 * python/libstdcxx/v6/printers.py (strip_inline_namespaces): New. (get_template_arg_list): New. (StdVariantPrinter._template_args): Remove, use get_template_arg_list instead. (TemplateTypePrinter): Rewrite to work with gdb.Type objects instead of strings and regular expressions. (add_one_template_type_printer): Adapt to new TemplateTypePrinter. (FilteringTypePrinter): Add docstring. Match using startswith. Use strip_inline_namespaces instead of strip_versioned_namespace. (add_one_type_printer): Prepend namespace to match argument. (register_type_printers): Add type printers for char16_t and char32_t string types and for types using cxx11 ABI. Update calls to add_one_template_type_printer to provide default argument dicts. * testsuite/libstdc++-prettyprinters/80276.cc: New test. * testsuite/libstdc++-prettyprinters/whatis.cc: Remove tests for basic_string<unsigned char> and basic_string<signed char>. * testsuite/libstdc++-prettyprinters/whatis2.cc: Duplicate whatis.cc to test local variables, without overriding _GLIBCXX_USE_CXX11_ABI. Added: trunk/libstdc++-v3/testsuite/libstdc++-prettyprinters/80276.cc trunk/libstdc++-v3/testsuite/libstdc++-prettyprinters/whatis2.cc - copied, changed from r256688, trunk/libstdc++-v3/testsuite/libstdc++-prettyprinters/whatis.cc Modified: trunk/libstdc++-v3/ChangeLog trunk/libstdc++-v3/python/libstdcxx/v6/printers.py trunk/libstdc++-v3/testsuite/libstdc++-prettyprinters/whatis.cc