aboutsummaryrefslogtreecommitdiff
path: root/gcc/value-range.cc
diff options
context:
space:
mode:
authorFrançois Dumont <fdumont@gcc.gnu.org>2022-09-26 19:14:54 +0200
committerFrançois Dumont <fdumont@gcc.gnu.org>2022-10-03 07:01:10 +0200
commit4347fea9c28b6dc5997ef8b87e49867a071967ea (patch)
tree55552e7e44ff055da49c66190c3bf22c2c87a379 /gcc/value-range.cc
parent422310150696a77657a1be5e792ca3afd18dc1d4 (diff)
downloadgcc-4347fea9c28b6dc5997ef8b87e49867a071967ea.zip
gcc-4347fea9c28b6dc5997ef8b87e49867a071967ea.tar.gz
gcc-4347fea9c28b6dc5997ef8b87e49867a071967ea.tar.bz2
libstdc++: Fix gdb pretty printers when dealing with std::string
Since revision 33b43b0d8cd2de722d177ef823930500948a7487 std::string and other similar typedef are ambiguous from a gdb point of view because it matches both std::basic_string<char> and std::__cxx11::basic_string<char> symbols. For those typedef add a workaround to accept the substitution as long as the same regardless of __cxx11 namespace. Also avoid to register printers for types in std::__cxx11::__8:: namespace, there is no such symbols. libstdc++-v3/ChangeLog: * python/libstdcxx/v6/printers.py (Printer.add_version): Do not add version namespace for __cxx11 symbols. (add_one_template_type_printer): Likewise. (add_one_type_printer): Likewise. (FilteringTypePrinter._recognizer.recognize): Add a workaround for std::string & al ambiguous typedef matching both std:: and std::__cxx11:: symbols. * testsuite/libstdc++-prettyprinters/cxx17.cc: Remove obsolete \#define _GLIBCXX_USE_CXX11_ABI 0. * testsuite/libstdc++-prettyprinters/simple.cc: Likewise. Adapt test to accept std::__cxx11::list. * testsuite/libstdc++-prettyprinters/simple11.cc: Likewise. * testsuite/libstdc++-prettyprinters/whatis.cc: Likewise. * testsuite/libstdc++-prettyprinters/80276.cc: Likewise and remove xfail for c++20 and debug mode. * testsuite/libstdc++-prettyprinters/libfundts.cc: Likewise.
Diffstat (limited to 'gcc/value-range.cc')
0 files changed, 0 insertions, 0 deletions