* [Fwd: Re: c++/1512: no canonical way to output names of C++ types]
@ 2004-01-15 16:18 Andrew Cagney
2004-01-15 16:25 ` Daniel Jacobowitz
0 siblings, 1 reply; 4+ messages in thread
From: Andrew Cagney @ 2004-01-15 16:18 UTC (permalink / raw)
To: gdb
[-- Attachment #1: Type: text/plain, Size: 536 bytes --]
> Fixes for this are in progress on drow-cplus-branch. All the necessary
> code is there, it just needs to be hooked up :) I think I've gotten
> derailed on some other problems first, though. The basic problem is
> that we want to canonicalize the names before adding them to the symbol
> table, and that increases startup time. I'm looking for ways to shave
> startup time elsewhere. I have a few ideas.
If it is going to be so expensive, can it be put off until later, when
the canonical value is needed?
enjoy,
Andrew
[-- Attachment #2: Re: c++/1512: no canonical way to output names of C++ types --]
[-- Type: message/rfc822, Size: 3926 bytes --]
From: Daniel Jacobowitz <drow@mvista.com>
To: nobody@sources.redhat.com
Cc: gdb-prs@sources.redhat.com,
Subject: Re: c++/1512: no canonical way to output names of C++ types
Date: 14 Jan 2004 23:18:00 -0000
Message-ID: <20040114231800.3737.qmail@sources.redhat.com>
The following reply was made to PR c++/1512; it has been noted by GNATS.
From: Daniel Jacobowitz <drow@mvista.com>
To: carlton@bactrian.org
Cc: gdb-gnats@sources.redhat.com
Subject: Re: c++/1512: no canonical way to output names of C++ types
Date: Wed, 14 Jan 2004 18:12:13 -0500
On Wed, Jan 14, 2004 at 06:26:13PM -0000, carlton@bactrian.org wrote:
>
> >Number: 1512
> >Category: c++
> >Synopsis: no canonical way to output names of C++ types
> >Confidential: no
> >Severity: serious
> >Priority: medium
> >Responsible: unassigned
> >State: open
> >Class: change-request
> >Submitter-Id: net
> >Arrival-Date: Wed Jan 14 18:28:00 UTC 2004
> >Closed-Date:
> >Last-Modified:
> >Originator: carlton@bactrian.org
> >Release: 2004-01-14-cvs
> >Organization:
> >Environment:
> any
> >Description:
> We currently don't have any canonical way to output
> names of C++ types. E.g. const char * vs.
> char const *; more subtleties arise when dealing with
> templates.
>
> This is, of course, less important than the fact that
> we don't know how to recognize different names
> of types as equivalent when doing input, but it's
> still unfortunate.
Fixes for this are in progress on drow-cplus-branch. All the necessary
code is there, it just needs to be hooked up :) I think I've gotten
derailed on some other problems first, though. The basic problem is
that we want to canonicalize the names before adding them to the symbol
table, and that increases startup time. I'm looking for ways to shave
startup time elsewhere. I have a few ideas.
--
Daniel Jacobowitz
MontaVista Software Debian GNU/Linux Developer
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [Fwd: Re: c++/1512: no canonical way to output names of C++ types]
2004-01-15 16:18 [Fwd: Re: c++/1512: no canonical way to output names of C++ types] Andrew Cagney
@ 2004-01-15 16:25 ` Daniel Jacobowitz
2004-01-15 16:33 ` Andrew Cagney
0 siblings, 1 reply; 4+ messages in thread
From: Daniel Jacobowitz @ 2004-01-15 16:25 UTC (permalink / raw)
To: gdb
On Thu, Jan 15, 2004 at 11:18:22AM -0500, Andrew Cagney wrote:
> > Fixes for this are in progress on drow-cplus-branch. All the necessary
> > code is there, it just needs to be hooked up :) I think I've gotten
> > derailed on some other problems first, though. The basic problem is
> > that we want to canonicalize the names before adding them to the symbol
> > table, and that increases startup time. I'm looking for ways to shave
> > startup time elsewhere. I have a few ideas.
>
> If it is going to be so expensive, can it be put off until later, when
> the canonical value is needed?
Possibly. We search for the canonical form in the symbol table, which
means we need to canonicalize before adding them to the (partial, full,
maybe minimal also) symbol table. The trick will be delaying the
add-to-symbol-table until the symbol is needed, using a clever trick
suggested by Ian - keeping a list of pending symbols by basename,
basically.
There are some complications. Particuarly, the code to infer classes'
fully qualified names depends on having the canonical demangled name
available. I may be able to do something about this but I'm not sure
what yet.
--
Daniel Jacobowitz
MontaVista Software Debian GNU/Linux Developer
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [Fwd: Re: c++/1512: no canonical way to output names of C++ types]
2004-01-15 16:25 ` Daniel Jacobowitz
@ 2004-01-15 16:33 ` Andrew Cagney
2004-01-15 16:47 ` Daniel Jacobowitz
0 siblings, 1 reply; 4+ messages in thread
From: Andrew Cagney @ 2004-01-15 16:33 UTC (permalink / raw)
To: Daniel Jacobowitz; +Cc: gdb
>
> Possibly. We search for the canonical form in the symbol table, which
> means we need to canonicalize before adding them to the (partial, full,
> maybe minimal also) symbol table. The trick will be delaying the
> add-to-symbol-table until the symbol is needed, using a clever trick
> suggested by Ian - keeping a list of pending symbols by basename,
> basically.
Is there a pointer to this thread?
Andrew
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [Fwd: Re: c++/1512: no canonical way to output names of C++ types]
2004-01-15 16:33 ` Andrew Cagney
@ 2004-01-15 16:47 ` Daniel Jacobowitz
0 siblings, 0 replies; 4+ messages in thread
From: Daniel Jacobowitz @ 2004-01-15 16:47 UTC (permalink / raw)
To: gdb
On Thu, Jan 15, 2004 at 11:33:35AM -0500, Andrew Cagney wrote:
> >
> >Possibly. We search for the canonical form in the symbol table, which
> >means we need to canonicalize before adding them to the (partial, full,
> >maybe minimal also) symbol table. The trick will be delaying the
> >add-to-symbol-table until the symbol is needed, using a clever trick
> >suggested by Ian - keeping a list of pending symbols by basename,
> >basically.
>
> Is there a pointer to this thread?
Yes, it was on gcc-patches:
http://gcc.gnu.org/ml/gcc-patches/2003-12/msg02174.html
and followups.
--
Daniel Jacobowitz
MontaVista Software Debian GNU/Linux Developer
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2004-01-15 16:47 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2004-01-15 16:18 [Fwd: Re: c++/1512: no canonical way to output names of C++ types] Andrew Cagney
2004-01-15 16:25 ` Daniel Jacobowitz
2004-01-15 16:33 ` Andrew Cagney
2004-01-15 16:47 ` Daniel Jacobowitz
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox