Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
From: Elena Zannoni <ezannoni@redhat.com>
To: Joel Brobecker <brobecker@gnat.com>
Cc: gdb-patches@sources.redhat.com
Subject: Re: [RFA] Improve "start" command for Ada
Date: Mon, 29 Nov 2004 02:12:00 -0000	[thread overview]
Message-ID: <16810.33941.938548.637890@localhost.redhat.com> (raw)
In-Reply-To: <20041101194703.GH27334@gnat.com>

Joel Brobecker writes:
 > Ping? (doco already approved by Eli)
 > 
 > On Thu, Oct 21, 2004 at 02:09:51PM -0700, Joel Brobecker wrote:
 > > 2004-10-20  Joel Brobecker  <brobecker@gnat.com>
 > > 
 > >         * doc/observer.texi (executable_changed): New observer.
 > >         * symtab.c: Include "observer.h".
 > >         (find_main_name): New function.
 > >         (main_name): If name_of_main is unset, then compute it
 > >         using find_main_name.
 > >         (symtab_observer_executable_changed): New function.
 > >         (_initialize_symtab): Attach executable_changed observer.
 > >         * exec.c: Include "observer.h".
 > >         (exec_file_attach): Emit executable_changed notification.
 > >         * symfile.c: Include "observer.h".
 > >         (reread_symbols): Send an executable_changed if appropriate.
 > >         * Makefile.in (exec.o): Add dependency on observer.h.
 > >         (symfile.o): Likewise.
 > >         (symtab.o): Likewise.
 > > 
 > > Tested on x86-linux. Still fixes 1 FAIL in gdb.ada/null_record.exp.
 > > 

We need a testcase where the name of the executable is changed, and
this code is exercised. Otherwise ok, except for this:


 > > +/* Deduce the name of the main procedure, and set NAME_OF_MAIN
 > > +   accordingly.  */
 > > +
 > > +static void
 > > +find_main_name (void)
 > > +{
 > > +  char *new_main_name;
 > > +
 > > +  /* Try to see if the main procedure is in Ada.  */
 > > +  new_main_name = ada_main_name ();
 > > +  if (new_main_name != NULL)
 > > +    { 
 > > +      set_main_name (new_main_name);
 > > +      return;
 > > +    }
 > > +
 > > +  /* The languages above didn't identify the name of the main procedure.
 > > +     Fallback to "main".  */
 > > +  set_main_name ("main");
 > > +}
 > > +
 > >  char *
 > >  main_name (void)
 > >  {
 > > -  if (name_of_main != NULL)
 > > -    return name_of_main;
 > > -  else
 > > -    return "main";
 > > +  if (name_of_main == NULL)
 > > +    find_main_name ();
 > > +
 > > +  return name_of_main;
 > >  }
 > >  

Can this find_main_name become an element in the language vector? I
really don't want to have a special language cases in the symtab file.


  reply	other threads:[~2004-11-29  2:12 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-10-21  3:48 Joel Brobecker
2004-10-21  5:31 ` Eli Zaretskii
2004-10-21 21:09   ` Joel Brobecker
2004-10-23 10:05     ` Eli Zaretskii
2004-11-01 19:47     ` Joel Brobecker
2004-11-29  2:12       ` Elena Zannoni [this message]
2004-12-01  3:03         ` Joel Brobecker
2005-02-09 18:22           ` Joel Brobecker
2005-03-07 19:30             ` Joel Brobecker
2005-03-07 20:59               ` Elena Zannoni
2005-03-07 21:12                 ` Joel Brobecker
2005-03-08  4:40                 ` Joel Brobecker
2004-11-22 19:10     ` Joel Brobecker

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=16810.33941.938548.637890@localhost.redhat.com \
    --to=ezannoni@redhat.com \
    --cc=brobecker@gnat.com \
    --cc=gdb-patches@sources.redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox