On Thu, Mar 15, 2012 at 01:01:04AM +0100, Andreas Färber wrote:
> Am 15.03.2012 01:16, schrieb q...@buildbot.b1-systems.de:
> > The Buildbot has detected a new failure on builder default_s390 while 
> > building qemu.
> > Full details are available at:
> >  http://buildbot.b1-systems.de/qemu/builders/default_s390/builds/190
> > 
> > Buildbot URL: http://buildbot.b1-systems.de/qemu/
> > 
> > Buildslave for this Build: qemu-s390.opensuse.org
> > 
> > Build Reason: The Nightly scheduler named 'nightly_default' triggered this 
> > build
> > Build Source Stamp: [branch master] HEAD
> > Blamelist: 
> > 
> > BUILD FAILED: failed compile
> 
> Sorry...
> 
>   CC    lm32-softmmu/arch_init.o
> In file included from /home/build/qemu/default_s390/build/qemu-common.h:123,
>                  from /home/build/qemu/default_s390/build/monitor.h:4,
>                  from /home/build/qemu/default_s390/build/arch_init.c:32:
> /home/build/qemu/default_s390/build/target-lm32/cpu.h:185: error:
> redefinition of typedef 'CPULM32State'
> /home/build/qemu/default_s390/build/target-lm32/cpu.h:31: error:
> previous declaration of 'CPULM32State' was here
> make[1]: *** [arch_init.o] Error 1
> make: *** [subdir-lm32-softmmu] Error 2
> 
> My GCC handles the following code fine:
> 
> typedef struct CPULM32State CPULM32State;
> 
> typedef struct CPULM32State {
>     // ...
> } CPULM32State;
> 
> Solutions would be to
> a) drop the second typedef,
> b) use struct CPULM32State,
> c) move the function using it to after the second typedef.

I vote for a)

Multiple/unecessary typedefs is funky.

> 
> Andreas
> 
> -- 
> SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany
> GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer; HRB 16746 AG Nürnberg
> 

Reply via email to