[Patch, testsuite] Skip case struct-layout-1 for targets using short enums.

Jakub Jelinek jakub@redhat.com
Thu Sep 1 06:46:00 GMT 2011


On Thu, Sep 01, 2011 at 02:32:51PM +0800, Terry Guo wrote:
> FAIL: gcc.dg/compat/struct-layout-1 c_compat_x_tst.o compile
> FAIL: gcc.dg/compat/struct-layout-1 c_compat_y_tst.o compile
> UNRESOLVED: gcc.dg/compat/struct-layout-1 c_compat_x_tst.o-c_compat_y_tst.o
> link 
> UNRESOLVED: gcc.dg/compat/struct-layout-1 c_compat_x_tst.o-c_compat_y_tst.o
> execute
> 
> On my machine, the error message is "error: width of 'a' exceeds its type".
> My GCC is cross built for arm-none-eabi based on upstream GCC 4.6. The
> command I run this case is simply as: "make check-gcc
> RUNTESTFLAGS="--target_board=arm-none-eabi-qemu/-mthumb/-mcpu=cortex-m3
> compat.exp=struct-layout-1*". Are there anything else I should do to pass
> this case? 

Look into gcc/testsuite/gcc/gcc.log, search for struct-layout-1_generate.exe
and see whether -e has been passed to it?  If not, debug the tcl bits which
are supposed to pass it, but for some reason don't, if yes, look into the
generator under debugger why it generates the large enum bitfield bitsizes
anyway (you can cut'n'paste the *generate.exe command line, compile it with
-g and rerun it under debugger...).

	Jakub



More information about the Gcc-patches mailing list