From: Tom Tromey Date: Thu, 21 Sep 2023 16:49:57 +0000 (-0600) Subject: Print field accessibility inline X-Git-Tag: binutils-2_42~878 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=5ffb4736f079c3dbc01be4b6cb961a60094ee18f;p=thirdparty%2Fbinutils-gdb.git Print field accessibility inline This changes recursive_dump_type to print field accessibility information "inline". This is clearer and preserves the information when the byte vectors are removed. Acked-By: Simon Marchi Reviewed-by: Keith Seitz --- diff --git a/gdb/gdbtypes.c b/gdb/gdbtypes.c index 7241143f29b..1b49628589e 100644 --- a/gdb/gdbtypes.c +++ b/gdb/gdbtypes.c @@ -5289,12 +5289,23 @@ recursive_dump_type (struct type *type, int spaces) gdb_printf ("%*s[%d] bitpos %s bitsize %d type ", spaces + 2, "", idx, plongest (type->field (idx).loc_bitpos ()), type->field (idx).bitsize ()); - gdb_printf ("%s name '%s' (%s)\n", + gdb_printf ("%s name '%s' (%s)", host_address_to_string (type->field (idx).type ()), type->field (idx).name () != NULL ? type->field (idx).name () : "", host_address_to_string (type->field (idx).name ())); + if (TYPE_FIELD_VIRTUAL (type, idx)) + gdb_printf (" virtual"); + + if (TYPE_FIELD_PRIVATE (type, idx)) + gdb_printf (" private"); + else if (TYPE_FIELD_PROTECTED (type, idx)) + gdb_printf (" protected"); + else if (TYPE_FIELD_IGNORE (type, idx)) + gdb_printf (" ignored"); + + gdb_printf ("\n"); if (type->field (idx).type () != NULL) { recursive_dump_type (type->field (idx).type (), spaces + 4);