gdb: print unknown part of flag enum in hex

When we print the "unknown" part of a flag enum, it is printed in
decimal.  I think it would be more useful if it was printed in hex, as
it helps to determine which bits are set more than a decimal value.

gdb/ChangeLog:

	* valprint.c (generic_val_print_enum_1): Print unknown part of
	flag enum in hex.

gdb/testsuite/ChangeLog:

	* gdb.base/printcmds.exp (test_print_enums): Expect hex values
	for "unknown".
This commit is contained in:
Simon Marchi 2020-02-18 17:30:21 -05:00
parent 6740f0cc3b
commit b29a2df000
4 changed files with 14 additions and 4 deletions

View file

@ -660,8 +660,8 @@ generic_val_print_enum_1 (struct type *type, LONGEST val,
{
if (!first)
fputs_filtered (" | ", stream);
fputs_filtered ("unknown: ", stream);
print_longest (stream, 'd', 0, val);
fputs_filtered ("unknown: 0x", stream);
print_longest (stream, 'x', 0, val);
}
fputs_filtered (")", stream);