-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
Package: g++-3.2 Version: 3.2.1-0pre4 Severity: important
GCC 3.2.1 emits the following error:
foo.cc:16: generic thunk code fails for method `virtual void B::foo(char*, ...)
' which uses `...'
when compiling the code included below. The same code compiles & runs fine with GCC 2.95. The error also does not appear if B does not subclass from A.
#include <iostream>
class A { public: virtual void foo(char* x, ...) {} virtual void bar(int x, ...) = 0; };
class B : public virtual A { public: virtual void foo(char* x, ...); virtual void bar(int x, ...); };
void B::foo(char* x, ...) { std::cout << "B::foo\n"; }
void B::bar(int x, ...) { std::cout << "B::bar\n"; }
int main() { std::cout << "hello, world\n"; B b; b.foo("x", "y", "z"); b.bar(1, 2, 3); }
AFAIK this is completely valid C++ and there is no workaround.
I am using unstable (updated this morning) on an i686.
Thanks
reed
- --
Reed Hedges VOS/Interreality Project [EMAIL PROTECTED] http://interreality.org
-----BEGIN PGP SIGNATURE----- Version: GnuPG v1.0.7 (Darwin)
iD8DBQE9tKD9FK83gN8ItOQRAsjeAJ4kWn/Eg9dSO7BuScVoIS8UynM7gwCgmGGN a3J3vrS+bES6gsbFm71BRAk= =PLDZ -----END PGP SIGNATURE-----