diff options
author | Chungyi Chi <demonic@csie.io> | 2020-12-01 11:06:08 +0000 |
---|---|---|
committer | Andrew Burgess <andrew.burgess@embecosm.com> | 2020-12-01 11:22:24 +0000 |
commit | 4f36e61b2dee8de793b09670378229dfe2750803 (patch) | |
tree | 22721b8ede1760c8b18fb6db5f9e3ddcf98c5f77 /gdbsupport | |
parent | 6729e2c2af2bd94408430734316597843718a484 (diff) | |
download | gdb-4f36e61b2dee8de793b09670378229dfe2750803.zip gdb-4f36e61b2dee8de793b09670378229dfe2750803.tar.gz gdb-4f36e61b2dee8de793b09670378229dfe2750803.tar.bz2 |
gdbsupport/tdesc: print enum size attribute
According to gdb online docs[1], XML target description enum types
have both name and size attributes. Currently GDB does not print the
size attribute. This commit fixes this. This change will be visible
in the output of the command `maint print xml-tdesc`.
There are other bugs with the print of enum types in XML target
descriptions, the next commit will fix these and include a test that
covers this patch.
[1] https://sourceware.org/gdb/current/onlinedocs/gdb/Enum-Target-Types.html#Enum-Target-Types
gdbsupport/ChangeLog:
* tdesc.cc (print_xml_feature::visit): Print enum size attribute.
Diffstat (limited to 'gdbsupport')
-rw-r--r-- | gdbsupport/ChangeLog | 4 | ||||
-rw-r--r-- | gdbsupport/tdesc.cc | 2 |
2 files changed, 6 insertions, 0 deletions
diff --git a/gdbsupport/ChangeLog b/gdbsupport/ChangeLog index d1e46a3..a77f1c9 100644 --- a/gdbsupport/ChangeLog +++ b/gdbsupport/ChangeLog @@ -1,3 +1,7 @@ +2020-12-01 Chungyi Chi <demonic@csie.io> + + * tdesc.cc (print_xml_feature::visit): Print enum size attribute. + 2020-11-20 Tom Tromey <tromey@adacore.com> * thread-pool.cc (thread_pool::set_thread_count): Ignore system diff --git a/gdbsupport/tdesc.cc b/gdbsupport/tdesc.cc index c2a3af7..2bc0247 100644 --- a/gdbsupport/tdesc.cc +++ b/gdbsupport/tdesc.cc @@ -351,6 +351,8 @@ void print_xml_feature::visit (const tdesc_type_with_fields *t) break; case TDESC_TYPE_ENUM: + if (t->size > 0) + string_appendf (tmp, " size=\"%d\"", t->size); string_appendf (tmp, ">"); add_line (tmp); for (const tdesc_type_field &f : t->fields) |