Hi, continuing on the OpenBSD theme, I am seeing a couple of compilation failures with sys/time.h, gettimeofday, and timeval very similar to one reported recently for cygwin [1] (coincidentally I am also investigating on behalf of Octave).
In a barebones project using gnulib-tool --with-tests --with-tests-c++ and including the gettimeofday and select modules: $ cd tests $ gmake -k test-sys_select test-sys_time test-sys_time-c++ CC test-sys_select.o test-sys_select.c:44: error: size of array 'verify_tv_sec_type' is negative gmake: *** [test-sys_select.o] Error 1 gmake: Target `test-sys_select' not remade because of errors. CC test-sys_time.o test-sys_time.c:27: error: size of array 'verify_tv_sec_type' is negative gmake: *** [test-sys_time.o] Error 1 gmake: Target `test-sys_time' not remade because of errors. CXX test-sys_time-c++.o In file included from ../libgnu/sys/select.h:86, from /usr/include/sys/types.h:221, from ../libgnu/sys/types.h:27, from /usr/include/sys/time.h:38, from ../libgnu/sys/time.h:38, from test-sys_time-c++.cc:22: ../libgnu/sys/time.h:419: error: '::gettimeofday' has not been declared In file included from /usr/include/sys/types.h:221, from ../libgnu/sys/types.h:27, from /usr/include/sys/time.h:38, from ../libgnu/sys/time.h:38, from test-sys_time-c++.cc:22: ../libgnu/sys/select.h:597: error: invalid conversion from 'int (*)(int, fd_set*, fd_set*, fd_set*, timeval*)' to 'int (*)(int, fd_set*, fd_set*, fd_set*, gnulib::timeval*)' test-sys_time-c++.cc:28: error: invalid conversion from 'int (*)(gnulib::timeval*, void*)' to 'int (*)(timeval*, void*)' gmake: *** [test-sys_time-c++.o] Error 1 gmake: Target `test-sys_time-c++' not remade because of errors. There is a circular inclusion loop between sys/select.h and sys/time.h in the system headers. [1] https://lists.gnu.org/archive/html/bug-gnulib/2013-03/msg00000.html -- mike