From: Tom Tromey <tromey@redhat.com>
To: Joel Brobecker <brobecker@adacore.com>
Cc: Project Archer <archer@sourceware.org>
Subject: Re: [Archer] C++ draft
Date: Wed, 29 Jun 2011 19:55:00 -0000 [thread overview]
Message-ID: <m37h84xvj0.fsf@fleche.redhat.com> (raw)
In-Reply-To: <20110627212246.GJ11080@adacore.com> (Joel Brobecker's message of "Mon, 27 Jun 2011 14:22:46 -0700")
Joel> - Not having access to a good C++ compiler on some of the exotic
Joel> platforms out there. Getting a g++ installed by some of us at
Joel> AdaCore who know GCC will take me a bit of time.
[...]
Joel> I think "FUD" #1 can be dismissed as AdaCore's problem, and we'll
Joel> take care of that.
I definitely wouldn't put it that way. If you ship on hosts where this
is a problem, it is best to confront it in advance.
Could you say what hosts you are worried about?
Joel> - The debugging situation; how well can we debug C++? I'm pretty
Joel> sure that we've given up on stabs, but we're still doing work
Joel> on eliminating stabs from platforms such as AIX for instance.
Joel> It's tough to say how far we are, except that we're hoping that
Joel> we're getting closer (Tristan is working on and off on that).
Joel> I'd like to be reassured that Fear #2 is unjustified, and that you
Joel> will have reasonable functionality even with GCC 4.5 (that's what
Joel> we use at AdaCore, and we'll probably stay with that for another
Joel> 18months).
Actually, debugging GDB will improve. Hard to believe, but I think it
is true.
The first thing to remember is that it is a slow transition. GDB will
start using some C++ features, but it will take a long time -- honestly,
probably forever -- to transition to fully idiomatic C++.
I think GDB can handle C-like C++ perfectly well. It handles some of
the simpler language additions -- e.g., classes -- quite well.
We have pretty-printing for basically everything in the STL. This means
that printing collections will actually improve. E.g., right now,
printing a hash table is difficult because the slots are just void*.
With STL and pretty-printing you will see a more obvious display.
Another improvement is exception handling. Right now, GDB doesn't work
with longjmp on most Linux distros[*]. But, GCC 4.5 shipped with
_Unwind_DebugHook, so if you have debuginfo for libgcc, then "next" over
a throw in C++ will do the right thing -- take you to where the
exception lands.
[*] We fixed this in Fedora -- but with a local glibc patch and with the
as-yet unmerged SystemTap probe patch for GDB.
There are still a lot of C++ constructs that GDB doesn't handle well.
You can see a reasonably complete list on the roadmap, see the
"Expression Parsing" list:
http://sourceware.org/gdb/wiki/ProjectArcher
Much of this stuff is not very important, though. I doubt a program
like GDB would run into most of these.
Tom
next prev parent reply other threads:[~2011-06-29 19:55 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-06-27 21:08 Tom Tromey
2011-06-27 21:23 ` [Archer] " Joel Brobecker
2011-06-29 19:55 ` Tom Tromey [this message]
2011-06-29 21:47 ` [Archer] " Joel Brobecker
2011-06-28 4:33 ` Matt Rice
2011-06-28 8:21 ` Yao Qi
2011-06-28 12:21 ` Gary Benson
2011-06-28 17:08 ` Matt Rice
2011-06-28 17:36 ` Jan Kratochvil
2011-06-29 20:08 ` Tom Tromey
2011-06-29 20:06 ` Tom Tromey
2011-06-30 6:06 ` Yao Qi
2011-09-26 21:01 ` Jim Blandy
2011-06-29 18:52 ` Stan Shebs
2011-06-29 19:03 ` [Archer] " 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=m37h84xvj0.fsf@fleche.redhat.com \
--to=tromey@redhat.com \
--cc=archer@sourceware.org \
--cc=brobecker@adacore.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;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).