[PATCH] Make StdVectorPrinter in printers.py compatible with ddd

Tom Tromey tromey@redhat.com
Fri Mar 25 15:26:00 GMT 2011


>>>>> "Jonathan" == Jonathan Wakely <jwakely.gcc@gmail.com> writes:

Jonathan> (Aside, one issue I have with the pretty printers is they
Jonathan> automatically dereference iterators, which is a problem for
Jonathan> past-the-end iterators.)

With CVS GDB (this feature will be in 7.3) and the SVN trunk printers,
you can disable just the iterator printers:

(gdb) disable pretty-printer global libstdc.*;.*iterator.*
13 printers disabled
43 of 56 printers enabled

This is kind of goofy, since the printers are in the "libstdc++-v6"
category, but the disable command uses regexps, and the "++" confuses
Python, so you have to work around it with that first ".*".  Maybe we
can pick a better name.


The iterator printers are a hack to work around GDB's insufficiencies
here.  If somebody wants to try `print *iter' for all the iterators and
either verify that they work or file GDB bugs, that would help us move
toward the day when we can remove these.

Tom



More information about the Libstdc++ mailing list