This is the mail archive of the gdb-patches@sources.redhat.com mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: RFA: abstract C++ ABI dependencies




On 24 Apr 2001, Jim Blandy wrote:

>
> Thanks for reading so carefully (and promptly!).  I thought I'd been
> careful, but clearly there's a bunch of stuff botched.  I'll post a
> revision in a bit.
>
> I've answered your questions below.
>
> David Taylor <taylor@candd.org> writes:
> > cp-abi.h -- includes defs.h and value.h; this is contrary to the value
> > of the macro definition of cp_abi_h in Makefile.in.
> >
> > While I dislike having include files include other include files and I
> > don't wish to reopen that debate, I must ask -- why does cp-abi.h
> > include defs.h?
> >
> > Your definition of cp_abi_h is simply cp-abi.h -- however, cp-abi.h
> > includes other header files -- OOPS!
>
> I share your preference.  In the next rev of this patch, cp-abi.h will
> no longer #include any other files.

>
> >     2001-04-24  Jim Blandy  <jimb@redhat.com>
> >
> > 	    (Changes from Daniel Berlin, with revisions by Jim Blandy.)
> >
> > 	    Abstract out operations specific to particular C++ ABI's, and
> > 	    invoke them through a function table.  This removes the C++ ABI
> > 	    dependencies scattered throughout the code, and allows us to
> > 	    cleanly add support for new C++ ABI's.
> >
> > 	    * cp-abi.h, cp-abi.h, gnu-v2-abi.c, hpacc-abi.c: New files.
> >
> > *NONE* of these files initialize the rtti_type field within the
> > cp_abi_ops structure; they all let it default to 0.

This is normal, actually.
gnuv-2's rtti type is broken
Until the HP stuff is verified to work, it  avoids problems.

the v3 abi stuff defines an rtti_type that works okay.

> >
> > 	    * c-typeprint.c, c-valprint.c, dbxread.c, eval.c, gdbtypes.c,
> > 	    jv-typeprint.c, linespec.c, symtab.c, typeprint.c, valops.c:
> > 	    #include "cp-abi.h".
> >
> > For c-valprint.c, eval.c, typeprint.c, and valops.c, it is unclear to
> > me why you are including cp-abi.h.
>
> Because they use functions which used to be declared elsewhere, but
> are now declared in cp-abi.h.  I've clarified the ChangeLog entry.
>


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]