Mirror of the gdb mailing list
 help / color / mirror / Atom feed
From: Jim Blandy <jimb@zwingli.cygnus.com>
To: Gianni Mariani <gianni@mariani.ws>
Cc: gdb@sourceware.cygnus.com
Subject: Re: Why does C++ support in GDB suck so badly ?
Date: Thu, 06 Sep 2001 12:04:00 -0000	[thread overview]
Message-ID: <nppu94jg2g.fsf@zwingli.cygnus.com> (raw)
In-Reply-To: <3B92D5C0.5050302@mariani.ws>

Gianni Mariani <gianni@mariani.ws> writes:
> It is really bad that you can't examine a simple data structure - because
> of "virtual baseclass botch" or "Value can't be converted to integer " 
> messages.

Yep.

One problem that I know happens is this:

- GDB doesn't understand namespaces, so the name of a class like
  `a::foo' gets recorded as simply `foo'.

- When you print a value of a dynamic type (i.e., one with a virtual
  table), GDB tries to check the RTTI to find its true type.  From the
  RTTI it gets the type name `a::foo'.  Unfortunately, it can't find
  this type name in its symbol table, since it appears only under `foo'.

This is kind of silly.

> I'm willing to help - but my reseach tells me that's going to be useless:
> 
> http://gcc.gnu.org/ml/gcc/2001-03/msg00475.htm
> 
> Is gdb so bad now that it needs to be thrown out and started again - in 
> C++ ?

No, I don't think so at all.

> Lack of response to my query on August 21st also shows a real lack
> of interest from the current gdb team so I'm worried.

No, we're very interested.  What we need is a volunteer who can do a
solid job of fixing things up.  The patches that have been posted so
far have a lot of problems --- they don't show much concern for corner
cases at all.  They eagerly trade correctness for speed, which I feel
is the wrong choice.

If someone with more patience for details could tackle the problem and
put together some better patches, that would be wonderful.  The right
volunteer would be someone who can read the code and figure out how
things work for themselves --- there is no thorough internals
documentation, and we have to learn the structures afresh ourselves
each time we work on them.

> Will someone on the gdb team please let us know what your plans are
> to address the lack of C++ support - even if you have none .

Like all free software projects, we depend on contributions from
capable volunteers.  Please help us make this work better.


  parent reply	other threads:[~2001-09-06 12:04 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2001-09-02 17:58 Gianni Mariani
2001-09-05 23:39 ` Andrew Cagney
2001-09-06  0:03   ` Gianni Mariani
2001-09-06 12:04 ` Jim Blandy [this message]
2001-09-06 13:12   ` Daniel Berlin

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=nppu94jg2g.fsf@zwingli.cygnus.com \
    --to=jimb@zwingli.cygnus.com \
    --cc=gdb@sourceware.cygnus.com \
    --cc=gianni@mariani.ws \
    /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