This is the mail archive of the
cygwin
mailing list for the Cygwin project.
1.5.24,XP: time.h + mrtd switch in gcc conflicting types
- From: "Angel Robert Lynas" <a dot r dot lynas at tees dot ac dot uk>
- To: cygwin at cygwin dot com
- Date: Fri, 27 Apr 2007 14:20:03 +0100
- Subject: 1.5.24,XP: time.h + mrtd switch in gcc conflicting types
- Reply-to: a dot r dot lynas at tees dot ac dot uk
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/