This is the mail archive of the mailing list for the GCC project.

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

Re: [PATCH] Fix outputting of debug info for things marked *INTERNAL* (fwd)

chastain> Does the abstract constructor have a blob of object code
chastain> associated with it?

jason> Never.

Good, that is helpful.

jason> Currently, abstract [cd]tors are the only things marked *INTERNAL*.  But
jason> again, that's an, er, internal detail that shouldn't be making it into
jason> the debug info.  It's not a defined interface by any means.

I thought you needed it for dwarf2 debug info (similar to the info for
an inline function).

I'm going to play with the demangler and see what happens if I
discard ctors and dtors marked " *INTERNAL* ".

> Certainly.  But should they both show up in GDB's concept of the type, or
> just via demangling symbols we see?

I think that all the symbols have to appear to the user.  But I think it
is OK if "ptype" discards the abstract constructor and the base class

> What is GDB's representation of structs used for, other than the ptype
> output?

It's used for method calling.  Again, Daniel knows this part better than
I do.

I think if a user calls "A::A", or gdb itself wants to construct an "A"
object, that it should always use a complete constructor anyways.  I think
the base class constructors should be called only by target program code,
never directly by gdb.  Does that sound right?


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