This is the mail archive of the
gdb-patches@sources.redhat.com
mailing list for the GDB project.
Re: [rfa] add 'parent' field to struct die_info
- From: Jim Blandy <jimb at redhat dot com>
- To: Elena Zannoni <ezannoni at redhat dot com>
- Cc: David Carlton <carlton at kealia dot com>,gdb-patches at sources dot redhat dot com
- Date: 01 Oct 2003 23:03:07 -0500
- Subject: Re: [rfa] add 'parent' field to struct die_info
- References: <yf2brt2nssx.fsf@hawaii.kealia.com> <vt24qyund25.fsf@zenia.home><yf2isn9nb08.fsf@hawaii.kealia.com><16251.4125.307628.200025@localhost.redhat.com>
Elena Zannoni <ezannoni@redhat.com> writes:
> May I suggest to add a comment where the structure is defined that explains
> in plain English the structure/relations of the dies?
How's this?
2003-10-01 Jim Blandy <jimb@redhat.com>
* dwarf2read.c (struct die_info): Doc fix.
Index: gdb/dwarf2read.c
===================================================================
RCS file: /cvs/src/src/gdb/dwarf2read.c,v
retrieving revision 1.109
diff -c -c -F'^(' -r1.109 dwarf2read.c
*** gdb/dwarf2read.c 30 Sep 2003 22:29:28 -0000 1.109
--- gdb/dwarf2read.c 2 Oct 2003 04:06:12 -0000
***************
*** 320,328 ****
--- 320,335 ----
unsigned int num_attrs; /* Number of attributes */
struct attribute *attrs; /* An array of attributes */
struct die_info *next_ref; /* Next die in ref hash table */
+
+ /* The dies in a compilation unit form an n-ary tree. PARENT
+ points to this die's parent; CHILD points to the first child of
+ this node; and all the children of a given node are chained
+ together via their SIBLING fields, terminated by a die whose
+ tag is zero. */
struct die_info *child; /* Its first child, if any. */
struct die_info *sibling; /* Its next sibling, if any. */
struct die_info *parent; /* Its parent, if any. */
+
struct type *type; /* Cached type information */
};