This is the mail archive of the gcc-bugs@gcc.gnu.org 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: Virtual Base Bug


On Nov  8, 1999, Mike Bird <mgb@yosemite.net> wrote:

> Meanwhile, wouldn't Linux 2.4 be a wonderful opportunity to switch GCC and
> Glibc back to a working class layout?

Nope, the kernel version has nothing to do with glibc or gcc.  This is
mostly a glibc issue, that unfortunately happens to affect gcc to, to
the point of requiring some coordination to switch the representation
of vtables of both projects at once.

Anyway, an ABI change is planned for GCC in the not-so-distant future,
and, if nobody finishes Martin's fix for the vtable problem by then,
that would be a good moment to switch back to the slower yet fully
correct implementation.  I.e., since we're going to have to face a
large binary incompatibility problem, let's face it just once.

Even though it is not clear whether the I/O performance attained with
the thunks representation of vtables outweights the benefit of getting
a virtual dispatch of a virtual method invoked during construction or
destruction correct, I believe the glibc maintainers didn't know about
the vtable-thunks bug when they decided to adopt that representation
for the I/O internals of glibc (but vtable-thunks were probably still
experimental at that time).  When they learned about the problem, it
was probably too late to switch back, because of the huge
binary-compatibility problem.  So the best we can do is to work to fix
the bug in time for the release that will enable the new ABI by
default.  Maybe you're willing to contribute some time and/or money to
help make it happen?  http://egcs.cygnus.com/faq.html#support

-- 
Alexandre Oliva http://www.ic.unicamp.br/~oliva IC-Unicamp, Bra[sz]il
oliva@{lsd.ic.unicamp.br,guarana.{org,com}} aoliva@{acm,computer}.org
oliva@{gnu.org,kaffe.org,{egcs,sourceware}.cygnus.com,samba.org}
** I may forward mail about projects to mailing lists; please use them


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