[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#295457: gcc-snapshot: FTBFS on amd64: /usr/include/pthread.h:655: error: array type has incomplete element type



Package: gcc-snapshot
Version: 20050212-1

Hi,

The package failed to build with the following error on amd64:
./xgcc -B./ -B/usr/lib/gcc-snapshot/x86_64-linux-gnu/bin/ -isystem /usr/lib/gcc-snapshot/x86_64-linux-gnu/include -isystem /usr/lib/gcc-snapshot/x86_64-linux-gnu/sys-include -L/usr/src/gcc-snapshot-20050212/build/gcc/../ld -O2  -DIN_GCC
-W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition  -isystem ./include  -fPIC -g -DHAVE_GTHR_DEFAULT -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED  -I. -I. -I../../src/gcc -I../../src/gcc/. -I../../src/gcc/../include -I../../src/gcc/../libcpp/include  -fvisibility=hidden -DHIDE_EXPORTS -fexceptions -c ../../src/gcc/unwind-dw2.c -o libgcc/./unwind-dw2.o
In file included from ../../src/gcc/gthr-posix.h:43,
                 from ./gthr-default.h:1,
                 from ../../src/gcc/gthr.h:114,
                 from ../../src/gcc/unwind-dw2.c:42:
/usr/include/pthread.h:655: error: array type has incomplete element type
make[5]: *** [libgcc/./unwind-dw2.o] Error 1

/usr/include/pthread.h line 654-655 say:
struct __jmp_buf_tag;
extern int __sigsetjmp (struct __jmp_buf_tag __env[1], int __savemask) __THROW;

Note that on amd64 we do not have linuxthread and only
have NPTL so we have an other pthread.h than the other
arches.

struct __jmp_buf_tag is defined in <setjmp.h> and if I
include that it builds fine.

I don't see sigsetjmp being used in the preprocessed
unwind-dw2.c file.

The following 2 lines also generate the same error
message:
struct x;
int y(struct x z[1]);

Other versions of the compiler like 3.3 and 3.4 do not
generate that error on functions that aren't used.

I think what glibc is doing there is wrong, and if you
agree, can you please clone and reassign this to glibc?


Kurt




Reply to: