This is the mail archive of the gdb-patches@sources.redhat.com mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: RFA: [dwarf2read.c] Avoid using section index if not yet set


Jim Blandy wrote:
> 
> This patch is not approved.
> 
> At the moment, GDB isn't really designed to read debug info from .o
> files.  I have no objection to enhancing GDB to provide this support,
> but it's ridiculous to try to do it by running GDB, looking to see
> where it crashes, and adding `if' statements to keep that code from
> being executed.
> 
> The author of the patch needs to provide a complete story explaining
> how loading .o files will work.  In particular, I want to know how
> they will provide values for undefined symbols referenced in the .o
> file.  The absence of a coherent answer to that question is the
> underlying cause of the crash this patch attempts to plaster over.
> 

Thank you Jim.  I did not have the necessary knowledge to appraise this
contributed patch.  I will get back to the originator and ask for more
details.

Reagrds,
Fernando


> >       * dwarf2read.c (new_symbol): Do not attempt to use the section
> >       index of a symbol if it is not yet set.
> >
> > Index: dwarf2read.c
> > ===================================================================
> > RCS file: /cvs/src/src/gdb/dwarf2read.c,v
> > retrieving revision 1.24
> > diff -c -p -r1.24 dwarf2read.c
> > *** dwarf2read.c      2001/04/30 10:30:27     1.24
> > --- dwarf2read.c      2001/05/10 23:06:28
> > *************** new_symbol (struct die_info *die, struct
> > *** 4195,4203 ****
> >                 if (SYMBOL_VALUE_ADDRESS (sym))
> >                   {
> >                     fixup_symbol_section (sym, objfile);
> > !                   SYMBOL_VALUE_ADDRESS (sym) +=
> > !                     ANOFFSET (objfile->section_offsets,
> > !                               SYMBOL_SECTION (sym));
> >                     SYMBOL_CLASS (sym) = LOC_STATIC;
> >                   }
> >                 else
> > --- 4195,4204 ----
> >                 if (SYMBOL_VALUE_ADDRESS (sym))
> >                   {
> >                     fixup_symbol_section (sym, objfile);
> > !                       if (SYMBOL_SECTION (sym) != -1)
> > !                     SYMBOL_VALUE_ADDRESS (sym) +=
> > !                       ANOFFSET (objfile->section_offsets,
> > !                                 SYMBOL_SECTION (sym));
> >                     SYMBOL_CLASS (sym) = LOC_STATIC;
> >                   }
> >                 else

-- 
Fernando Nasser
Red Hat Canada Ltd.                     E-Mail:  fnasser@redhat.com
2323 Yonge Street, Suite #300
Toronto, Ontario   M4P 2C9


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]