]> sourceware.org Git - newlib-cygwin.git/commitdiff
* include/sys/stat.h (_S_IFLNK, S_IFLNK, _S_ISLNK, S_ISLNK, _lstat,
authorEarnie Boyd <earnie@users.sf.net>
Tue, 11 Jan 2005 13:34:42 +0000 (13:34 +0000)
committerEarnie Boyd <earnie@users.sf.net>
Tue, 11 Jan 2005 13:34:42 +0000 (13:34 +0000)
lstat): Conditionalize defines for __STRICT_ANSI__.

winsup/mingw/ChangeLog
winsup/mingw/include/sys/stat.h

index a1d193e8c12356111608f2ee69da0630a51dc22b..e1cff4af5d8214e431fe6c59ec9953032dabdc5f 100644 (file)
@@ -1,3 +1,8 @@
+2005-01-11  Earnie Boyd  <earnie@users.sf.net>
+
+       * include/sys/stat.h (_S_IFLNK, S_IFLNK, _S_ISLNK, S_ISLNK, _lstat,
+       lstat): Conditionalize defines for __STRICT_ANSI__.
+
 2005-01-10  Earnie Boyd  <earnie@users.sf.net>
 
        * include/errno.h (ELOOP): Add definition.
index 0908b4968352ab89cac256318ce3924f9a3fa06c..8220e8047021133e955123dcd76894be913756f5 100644 (file)
@@ -26,7 +26,9 @@
 /*
  * Constants for the stat st_mode member.
  */
+#ifndef __STRICT_ANSI__
 #define _S_IFLNK       0xF000  /* Pretend */
+#endif
 #define        _S_IFIFO        0x1000  /* FIFO */
 #define        _S_IFCHR        0x2000  /* Character */
 #define        _S_IFBLK        0x3000  /* Block: Is this ever set under w32? */
 #define        _S_ISCHR(m)     (((m) & _S_IFMT) == _S_IFCHR)
 #define        _S_ISBLK(m)     (((m) & _S_IFMT) == _S_IFBLK)
 #define        _S_ISREG(m)     (((m) & _S_IFMT) == _S_IFREG)
-#define _S_ISLNK(m)    (((m) & _S_IFMT) == _S_IFLNK) /* Should always be zero.*/
+#ifndef __STRICT_ANSI__
+# define _S_ISLNK(m)   (((m) & _S_IFMT) == _S_IFLNK) /* Should always be zero.*/
+#endif
 
 #ifndef _NO_OLDNAMES
 
+#ifndef __STRICT_ANSI__
 #define S_IFLNK                _S_IFLNK
+#endif
 #define        S_IFIFO         _S_IFIFO
 #define        S_IFCHR         _S_IFCHR
 #define        S_IFBLK         _S_IFBLK
@@ -73,7 +79,9 @@
 #define        S_ISCHR(m)      (((m) & S_IFMT) == S_IFCHR)
 #define        S_ISBLK(m)      (((m) & S_IFMT) == S_IFBLK)
 #define        S_ISREG(m)      (((m) & S_IFMT) == S_IFREG)
+#ifndef __STRICT_ANSI__
 #define S_ISLNK(m)     (((m) & S_IFMT) == S_IFLNK) /* Should always be zero.*/
+#endif
 
 #endif /* Not _NO_OLDNAMES */
 
@@ -159,7 +167,15 @@ extern "C" {
 _CRTIMP int __cdecl    _fstat (int, struct _stat*);
 _CRTIMP int __cdecl    _chmod (const char*, int);
 _CRTIMP int __cdecl    _stat (const char*, struct _stat*);
+/*
+ * FIXME: Should we use something MinGW specific such as __NO_POSIX_EMULATION__
+ * instead of __STRICT_ANSI__?  I.E.: Do other things break because of -ansi
+ * being specified to the compiler?  Of particular interest is the ACE/TAO
+ * project which the lstat define broke the build of.
+ */
+#ifndef __STRICT_ANSI__
 #define _lstat _stat
+#endif
 
 #ifndef        _NO_OLDNAMES
 
@@ -167,7 +183,9 @@ _CRTIMP int __cdecl _stat (const char*, struct _stat*);
 _CRTIMP int __cdecl    fstat (int, struct stat*);
 _CRTIMP int __cdecl    chmod (const char*, int);
 _CRTIMP int __cdecl    stat (const char*, struct stat*);
+#ifndef __STRICT_ANSI__
 #define lstat stat
+#endif
 
 #endif /* Not _NO_OLDNAMES */
 
This page took 0.043143 seconds and 5 git commands to generate.