- Fix memory trashing on binaries from GNAT/Ada (workaround GCC PR 35998).

This commit is contained in:
Jan Kratochvil 2008-05-22 20:37:43 +00:00
commit ad4fdd5fb5
3 changed files with 26 additions and 24 deletions

View file

@ -121,26 +121,3 @@
if (args == NULL)
error_no_arg (_("one or more choice numbers"));
2008-04-21 Jan Kratochvil <jan.kratochvil@redhat.com>
Workaround GCC PR ada/35998.
* ada-lang.c (to_fixed_record_type): Error out on invalid length of the
type TYPE0.
--- ./gdb/ada-lang.c 6 Apr 2008 08:56:36 -0000 1.137
+++ ./gdb/ada-lang.c 20 Apr 2008 21:47:05 -0000
@@ -7313,6 +7313,11 @@ to_fixed_record_type (struct type *type0
{
struct type *templ_type;
+ /* GCC PR ada/35998 workaround. */
+ if (TYPE_LENGTH (type0) == 0xffffffff)
+ error (_("Type %s has invalid length -1, check your GCC"),
+ TYPE_NAME (type0));
+
if (TYPE_FLAGS (type0) & TYPE_FLAG_FIXED_INSTANCE)
return type0;