I've seen this twice now on both alpha and sparc64. It looks to be related to the ENDIAN macro changes:
===> usr.bin/ldd /arch/sparc64/hosted/bin/gcc -O -pipe -Wall -c /home/john/work/p4/sparc64/usr.bin/ldd/ldd.c In file included from /home/john/work/p4/sparc64/usr.bin/ldd/ldd.c:36: /usr/include/sys/wait.h:114: duplicate member `w_Filler' /usr/include/sys/wait.h:115: duplicate member `w_Retcode' /usr/include/sys/wait.h:116: duplicate member `w_Coredump' /usr/include/sys/wait.h:117: duplicate member `w_Termsig' /usr/include/sys/wait.h:132: duplicate member `w_Filler' /usr/include/sys/wait.h:133: duplicate member `w_Stopsig' /usr/include/sys/wait.h:134: duplicate member `w_Stopval' /home/john/work/p4/sparc64/usr.bin/ldd/ldd.c: In function `main': /home/john/work/p4/sparc64/usr.bin/ldd/ldd.c:141: warning: implicit declaration of function `ntohl' *** Error code 1 Stop in /home/john/work/p4/sparc64/usr.bin/ldd. *** Error code 1 Stop in /home/john/work/p4/sparc64/usr.bin. *** Error code 1 Stop in /home/john/work/p4/sparc64. *** Error code 1 In sys/wait.h: union wait { int w_status; /* used in syscall */ /* * Terminated process status. */ struct { #if BYTE_ORDER == LITTLE_ENDIAN unsigned int w_Termsig:7, /* termination signal */ w_Coredump:1, /* core dump indicator */ w_Retcode:8, /* exit code if w_termsig==0 */ w_Filler:16; /* upper bits filler */ #endif #if BYTE_ORDER == BIG_ENDIAN unsigned int w_Filler:16, /* upper bits filler */ w_Retcode:8, /* exit code if w_termsig==0 */ w_Coredump:1, /* core dump indicator */ w_Termsig:7; /* termination signal */ #endif } w_T; I guess all of those symbols are not defined or something and so have values of 0 and 0 == 0? sys/wait.h includes machine/endian.h right before it defines this union, so something must be broke in there. -- John Baldwin <[EMAIL PROTECTED]> <>< http://www.FreeBSD.org/~jhb/ "Power Users Use the Power to Serve!" - http://www.FreeBSD.org/ To Unsubscribe: send mail to [EMAIL PROTECTED] with "unsubscribe freebsd-current" in the body of the message