From: Daniel Jacobowitz <drow@mvista.com>
To: David Carlton <carlton@kealia.com>
Cc: gdb-patches@sources.redhat.com
Subject: Re: [rfa] function overloading and namespaces
Date: Mon, 02 Feb 2004 20:09:00 -0000 [thread overview]
Message-ID: <20040202200917.GA6423@nevyn.them.org> (raw)
In-Reply-To: <m31xphpbd6.fsf@coconut.kealia.com>
On Fri, Jan 30, 2004 at 09:58:13AM -0800, David Carlton wrote:
> This teaches GDB's function overloading code about namespaces. It
> also tries to clean up the existing code a bit, primarily by breaking
> up largish, messy functions into smaller, messy functions. :-( There's
> still a lot of cruft there, and it's by no means a perfect
> implementation of C++'s overloading rules (Koening lookup? Template
> deduction? Hah!), but it's an improvement over what we've got.
I have some deep reservations about this overload resolution code. It
is, as you say, wildly inaccurate at its best. It would be nice to
punt more reliably when it gets confused. If we get an efficient
search-symbol-table-by-basename mechanism we may be able to do this.
However, before any of that can be a reality, the existing code needs
to be cleaned up.
> Tested on i686-pc-linux-gnu, four different GCC version/options; no
> regressions, the new tests pass on all of them (even stabs, since the
> information that we need is generated by buildsym.c). OK to commit?
OK. A couple of general comments:
> * cp-support.c (cp_func_name): New.
I am really sick of the number of variants of this C++ name parsing we
are spawning. While the rest of the branch will be some time yet
maturing, I will try to merge the relevant pieces of drow-cplus-branch
in the very near future. Then we can dispense with this function.
I'm also pretty tired of the growth of functions which concatenate
names with "::", or tear them apart with cp_find_next_component. We
need to use some more efficient structure for describing namespaces
than this. My personal hope is that we can un-flatten the symbol table
eventually, and have dictionaries per scope.
Do I sound bitter? I blame the C++ language.
--
Daniel Jacobowitz
MontaVista Software Debian GNU/Linux Developer
next prev parent reply other threads:[~2004-02-02 20:09 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-01-30 17:58 David Carlton
2004-01-31 7:54 ` Eli Zaretskii
2004-02-02 16:32 ` David Carlton
2004-02-02 20:09 ` Daniel Jacobowitz [this message]
2004-02-02 20:44 ` David Carlton
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=20040202200917.GA6423@nevyn.them.org \
--to=drow@mvista.com \
--cc=carlton@kealia.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