In PR65320 Martin raised the point that the pretty printer for the C++
containers is inconsistent across the different types.  It's also
inconsistent when it comes to showing different states (empty vs not) of
the same type.

In addition, IMO some more information should be printed like the template
parameters which otherwise certainly can be retrieved through ptype but
along with a lot more information one doesn't look for.

In the attached patch I've changed the pretty printers of most of the
containers to be mostly consistent, at least as far as it is possible given
the different nature.  I've also fixed some bugs (e.g., printing indeces
for set elements).

You can see the side-by-side comparison of the output in the text file I
attached to the bug (https://gcc.gnu.org/bugzilla/attachment.cgi?id=53419).
Bring very long lines or use 'less -S'.

Jonathan and I discussed whether such big changes are possible.  Someone
could consider the output guaranteed by some ABI.  We came to the
conclusion that this is a bad idea and shouldn't even start to plant that
idea in people's minds.  The pretty printer output is meant for humans.

Comments?

Attachment: d-containers-printers
Description: Binary data

Reply via email to