Daniel Richard G. wrote: > I found that adding the following line makes the problem go away: > > ----begin sig2str.c snippet---- > #include <config.h> > > #include <limits.h> > #include <sys/types.h> <---- skadoosh > #include <signal.h> > #include <stdlib.h> > #include <stdio.h> > #include <string.h> > > #include "sig2str.h" > ----end sig2str.c snippet----
This looked weird enough that I looked into it as well. I found the culprit to be the <sys/select.h> override in gnulib. This file is being included from the system's <sys/types.h> and <sys/time.h> and itself includes <sys/types.h> and <sys/time.h>, leading to some half-included files. I'm applying this fix. Thanks for the report! > The only conclusion I draw is that Tru64 is a PITA to deal with :-) Well, this time, gnulib was at fault. Bruno 2008-12-15 Bruno Haible <br...@clisp.org> Fix compilation error on OSF/1 4.0. * lib/sys_select.in.h: When invoked from OSF/1 <sys/types.h> or <sys/time.h>, simply delegate to the system header. Reported by Daniel Richard G. <o...@teragram.com>. *** lib/sys_select.in.h.orig 2008-12-15 13:39:04.000000000 +0100 --- lib/sys_select.in.h 2008-12-15 13:36:20.000000000 +0100 *************** *** 15,28 **** along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ - #ifndef _GL_SYS_SELECT_H - - #if @HAVE_SYS_SELECT_H@ - # if __GNUC__ >= 3 @PRAGMA_SYSTEM_HEADER@ # endif /* On many platforms, <sys/select.h> assumes prior inclusion of <sys/types.h>. */ # include <sys/types.h> --- 15,42 ---- along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ # if __GNUC__ >= 3 @PRAGMA_SYSTEM_HEADER@ # endif + /* On OSF/1, <sys/types.h> and <sys/time.h> include <sys/select.h>. + Simply delegate to the system's header in this case. */ + #if @HAVE_SYS_SELECT_H@ && defined __osf__ && (defined _SYS_TYPES_H_ && !defined _GL_SYS_SELECT_H_REDIRECT_FROM_SYS_TYPES_H) && defined _OSF_SOURCE + + # define _GL_SYS_SELECT_H_REDIRECT_FROM_SYS_TYPES_H + # @INCLUDE_NEXT@ @NEXT_SYS_SELECT_H@ + + #elif @HAVE_SYS_SELECT_H@ && defined __osf__ && (defined _SYS_TIME_H_ && !defined _GL_SYS_SELECT_H_REDIRECT_FROM_SYS_TIME_H) && defined _OSF_SOURCE + + # define _GL_SYS_SELECT_H_REDIRECT_FROM_SYS_TIME_H + # @INCLUDE_NEXT@ @NEXT_SYS_SELECT_H@ + + #else + + #ifndef _GL_SYS_SELECT_H + + #if @HAVE_SYS_SELECT_H@ + /* On many platforms, <sys/select.h> assumes prior inclusion of <sys/types.h>. */ # include <sys/types.h> *************** *** 76,78 **** --- 90,93 ---- #endif /* _GL_SYS_SELECT_H */ #endif /* _GL_SYS_SELECT_H */ + #endif /* OSF/1 */