From: Daniel Jacobowitz Date: Mon, 23 Jun 2003 19:51:38 +0000 (+0000) Subject: PR gdb/1179 X-Git-Tag: ezannoni_pie-20030916-branchpoint~1040 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=fba3138ed54e4df55d99cf903e236a683f39004a;p=external%2Fbinutils.git PR gdb/1179 * dwarfread.c (struct_type): Skip static fields without crashing. --- diff --git a/gdb/ChangeLog b/gdb/ChangeLog index f35b7db..4d95fff 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,8 @@ +2003-06-22 Daniel Jacobowitz + + PR gdb/1179 + * dwarfread.c (struct_type): Skip static fields without crashing. + 2003-06-22 Andrew Cagney GDB 6.0 branch created. diff --git a/gdb/dwarfread.c b/gdb/dwarfread.c index 0856b89..ff65db0 100644 --- a/gdb/dwarfread.c +++ b/gdb/dwarfread.c @@ -979,6 +979,13 @@ struct_type (struct dieinfo *dip, char *thisdie, char *enddie, switch (mbr.die_tag) { case TAG_member: + /* Static fields can be either TAG_global_variable (GCC) or else + TAG_member with no location (Diab). We could treat the latter like + the former... but since we don't support the former, just avoid + crashing on the latter for now. */ + if (mbr.at_location == NULL) + break; + /* Get space to record the next field's data. */ new = (struct nextfield *) alloca (sizeof (struct nextfield)); new->next = list;