1.5.24,XP: time.h + mrtd switch in gcc conflicting types

Angel Robert Lynas a.r.lynas@tees.ac.uk
Fri Apr 27 13:21:00 GMT 2007


Cygwin version 1.5.24-2, gcc version 3.4.4
Windows XP

Hi all. There seems to be an issue with "time.h" under some circumstances
with a new Cygwin version. Using a simple test program ( called t.c):

#include <time.h>
main() {}

The problem arises when compilation is attempted with the -mrtd switch,
the following errors arising:

             ------------------------------------
In file included from t.c:1:
/usr/include/time.h:150: error: conflicting types for 'clock_getres'
/usr/include/cygwin/time.h:20: error: previous declaration of
'clock_getres' was here
/usr/include/time.h:150: error: conflicting types for 'clock_getres'
/usr/include/cygwin/time.h:20: error: previous declaration of
'clock_getres' was here
/usr/include/time.h:171: error: conflicting types for 'nanosleep'
/usr/include/cygwin/time.h:18: error: previous declaration of 'nanosleep'
was here
/usr/include/time.h:171: error: conflicting types for 'nanosleep'
/usr/include/cygwin/time.h:18: error: previous declaration of 'nanosleep'
was here
             ------------------------------------

However the problem is absent from an earlier version of Cygwin (1.5.18 --
July 2005), as is the file /usr/include/cygwin/time.h (same version of
gcc, though). Running the "program" under both versions with gcc's -M
switch to show header dependencies revealed these differences at the end:

             ------------------------------------
$ diff headers headers-new
10,11c10,11
<   /usr/include/signal.h /usr/include/sys/signal.h \
<   /usr/include/cygwin/signal.h
---
>   /usr/include/endian.h /usr/include/cygwin/time.h /usr/include/signal.h\ 
>   /usr/include/sys/signal.h /usr/include/cygwin/signal.h
             ------------------------------------

The newer version includes two new headers here, with an apparently
surplus-to-requirements "time.h". Compilation without the switch produces
no errors.

Apologies for absence of a cygcheck output (not my machine).


-- 
  Angel Robert Lynas
   University of Teesside
   Formal Methods & Programming Research Group
   Room: T2.01A   Tel: ext 3719

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/



More information about the Cygwin mailing list