diff options
author | Joel Brobecker <brobecker@gnat.com> | 2011-07-01 18:27:35 +0000 |
---|---|---|
committer | Joel Brobecker <brobecker@gnat.com> | 2011-07-01 18:27:35 +0000 |
commit | 25552254a3f7f70cc36295060b2628f3255d55ad (patch) | |
tree | d7d782e22c1ac6d3dbcd3005c8d772355ab0db23 /gdb/ChangeLog | |
parent | d2d43431e83ac661e10934eb1c3fb7542c087527 (diff) | |
download | gdb-25552254a3f7f70cc36295060b2628f3255d55ad.zip gdb-25552254a3f7f70cc36295060b2628f3255d55ad.tar.gz gdb-25552254a3f7f70cc36295060b2628f3255d55ad.tar.bz2 |
crash when printing type of tagged type
If the debugging info is incorrect or incomplete, printing the
type description of a variable that's a variant tagged type can
trigger a crash. The crash comes from us trying print a NULL
string which was supposed to be the parent type name.
We observed this behavior on bareboard targets where a-tags is
not always linked in, as is the case for native platforms, for
instance. Coupled with -feliminate-unused-debug-types, this leads
to GDB being unable to find type ada__tags__type_specific_data,
without which printing the type description above cannot be done
acurately. There is an easy workaround for this limitation,
which is to compile at least 1 unit with
-fno-eliminate-unused-debug-types, but GDB should also be made
resilient to this situation.
gdb/ChangeLog:
* ada-typeprint.c (print_record_type): If unable to decode
the name of the parent type, use the encoded name.
Diffstat (limited to 'gdb/ChangeLog')
-rw-r--r-- | gdb/ChangeLog | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 1d1eef5..773f887 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,8 @@ +2011-07-01 Joel Brobecker <brobecker@adacore.com> + + * ada-typeprint.c (print_record_type): If unable to decode + the name of the parent type, use the encoded name. + 2011-07-01 Jean-Charles Delay <delay@adacore.com> * ada-typeprint.c (ada_print_type): Fix both PAD type and |