[Bug libstdc++/80276] pretty printer for std::unique_ptr<T[]> shows type as std::unique_ptr<T>
redi at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Mon Jan 15 11:15:00 GMT 2018
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
More information about the Gcc-bugs
mailing list