Don't use a nested function in rpmatch.
[platform/upstream/glibc.git] / io / fcntl.h
index cc978f7..cf512dd 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (C) 1991-2012 Free Software Foundation, Inc.
+/* Copyright (C) 1991-2014 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -87,7 +87,7 @@ typedef __pid_t pid_t;
 # define S_ISUID       __S_ISUID       /* Set user ID on execution.  */
 # define S_ISGID       __S_ISGID       /* Set group ID on execution.  */
 
-# if defined __USE_BSD || defined __USE_MISC || defined __USE_XOPEN
+# if defined __USE_MISC || defined __USE_XOPEN
 /* Save swapped text after use (sticky bit).  This is pretty well obsolete.  */
 #  define S_ISVTX      __S_ISVTX
 # endif
@@ -129,6 +129,12 @@ typedef __pid_t pid_t;
 # define SEEK_END      2       /* Seek from end of file.  */
 #endif /* XPG */
 
+/* The constants AT_REMOVEDIR and AT_EACCESS have the same value.  AT_EASSESS
+   is meaningful only to faccessat, while AT_REMOVEDIR is meaningful only to
+   unlinkat.  The two functions do completely different things and therefore,
+   the flags can be allowed to overlap.  For example, passing AT_REMOVEDIR to
+   faccessat would be undefined behavior and thus treating it equivalent to
+   AT_EACCESS is valid undefined behavior.  */
 #ifdef __USE_ATFILE
 # define AT_FDCWD              -100    /* Special value used to indicate
                                           the *at functions should use the