Do not attempt to outguess system headers by (re)defining errno.
authorYann Dirson <ydirson@altern.org>
Thu, 17 Jan 2008 23:18:35 +0000 (00:18 +0100)
committerYann Dirson <ydirson@free.fr>
Sun, 29 Sep 2013 13:39:24 +0000 (15:39 +0200)
Recent glibc define error as a cpp macro expanding to a function
call.  Thus, "extern int errno" should cause a link-time undefined
symbol when errno.h is not included.  Here it is, and gcc complains
with the following cryptic warning:

../../gnushogi/sysdeps.c: In function 'ElapsedTime_FIONREAD':
../../gnushogi/sysdeps.c:97: warning: function declaration isn't a prototype

gnushogi/sysdeps.c

index c1e43cf..a8f8bd4 100644 (file)
@@ -91,7 +91,6 @@ ElapsedTime_FIONREAD(ElapsedTime_mode iop)
     int  nchar;
 
     struct timeval tv;
-    extern int errno;
 
     if ((i = ioctl((int) 0, FIONREAD, &nchar)))
     {
@@ -227,9 +226,6 @@ ElapsedTime_FIONREAD(ElapsedTime_mode iop)
     int  nchar;
     int  i;
 
-    extern int errno;
-
-
     if ((i = ioctl((int) 0, FIONREAD, &nchar)))
     {
         perror("FIONREAD");