[Bug target/11982] New: [3.2/3.3 regression] [powerpc] generic thunk code fails

debian-gcc at lists dot debian dot org gcc-bugzilla@gcc.gnu.org
Tue Aug 19 18:22:00 GMT 2003


PLEASE REPLY TO gcc-bugzilla@gcc.gnu.org ONLY, *NOT* gcc-bugs@gcc.gnu.org.

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=11982

           Summary: [3.2/3.3 regression] [powerpc] generic thunk code fails
           Product: gcc
           Version: 3.3.2
            Status: UNCONFIRMED
          Severity: critical
          Priority: P2
         Component: target
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: debian-gcc at lists dot debian dot org
                CC: gcc-bugs at gcc dot gnu dot org
 GCC build triplet: powerpc-linux
  GCC host triplet: powerpc-linux
GCC target triplet: powerpc-linux

[forwarded from http://bugs.debian.org/205404]

seen with 3.2.3 and 3.3 CVS 20030812,
regression from 2.95.3, fixed in HEAD 20030815

$ g++ bug-205404.cc 
foo.cc:35: error: generic thunk code fails for method `virtual void 
   Virt::p(const char*, ...)' which uses `...'

----------
#include <stdio.h>
#include <stdarg.h>
class Base
{
public:
        Base() { }
                virtual void p(const char *format, ...)=0;
        };

class Der1: public virtual Base
        {
        public:
         Der1():Base() { }
        virtual void p(const char *format, ...)=0;
        };

class Der2: public virtual Base
        {
        public:
        Der2():Base() { }
        virtual void p(const char *format, ...)=0;
        };

class Virt:public virtual Der1, public virtual Der2
        {
        public:
        Virt():Der1(),Der2() { }
        virtual void p(const char *format, ...)
       {
               va_list arglist;
               va_start(arglist,format);
               vprintf(format, arglist);
               va_end(arglist);
        }
        };

int main(int argc, char *argv[])
{
       Virt v;
       v.p("Hello %d\n", 10);
}
----------



More information about the Gcc-bugs mailing list