This is the mail archive of the
gdb@sourceware.org
mailing list for the GDB project.
Re: Get versioned minsyms from dynamic symtab (Was: Re: How to call operator<< functions?)
Le jeudi 31 aoÃt 2006 Ã 12:57 -0400, Daniel Jacobowitz a Ãcrit :
> > GDB tries to compare to incomplete types and of
> > course it fails...
>
> This is a problem with GDB, that I've always been amazed we didn't
> hit more often. It's a very difficult problem and I don't really know
> what we should be doing about it. I don't know if there's a standard
> term for this, but I've called it type unification in the past.
>
> We need some way to figure out that these are the same type, to the
> best of our knowledge.
In the case of C++ classes (not POD objects, but classes with methods),
the One Definition Rule gives us a way to identify those, doesn't it? I
mean both classes are named basic_ostream<char,std::char_traits<char> >
and live in the std namespace. All this is clearly described by the
Dwarf tree structure.
Of course in this case, we're speaking about incomplete types here, and
we don't know they're really not simple structures. Thus applying this
unification logic would is a bit dangerous.