(__S_TYPEISMQ, __S_TYPEISSEM, __S_TYPEISSHM): Rewrite to enforce correct use the macros. They still always return zero.

This commit is contained in:
Ulrich Drepper 2001-03-05 18:28:43 +00:00
parent 278689e8b5
commit 368cfb949f
8 changed files with 49 additions and 41 deletions

View File

@ -1,4 +1,4 @@
/* Copyright (C) 1996, 1997, 1998, 1999, 2000 Free Software Foundation, Inc. /* Copyright (C) 1996,1997,1998,1999,2000,2001 Free Software Foundation, Inc.
This file is part of the GNU C Library. This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or The GNU C Library is free software; you can redistribute it and/or
@ -101,10 +101,11 @@ struct stat64
#define __S_IFLNK 0120000 /* Symbolic link. */ #define __S_IFLNK 0120000 /* Symbolic link. */
#define __S_IFSOCK 0140000 /* Socket. */ #define __S_IFSOCK 0140000 /* Socket. */
/* POSIX.1b objects. */ /* POSIX.1b objects. Note that these macros always evaluate to zero. But
#define __S_TYPEISMQ(buf) (0) they do it by enforcing the correct use of the macros. */
#define __S_TYPEISSEM(buf) (0) #define __S_TYPEISMQ(buf) ((buf)->st_mode - (buf)->st_mode)
#define __S_TYPEISSHM(buf) (0) #define __S_TYPEISSEM(buf) ((buf)->st_mode - (buf)->st_mode)
#define __S_TYPEISSHM(buf) ((buf)->st_mode - (buf)->st_mode)
/* Protection bits. */ /* Protection bits. */

View File

@ -1,4 +1,4 @@
/* Copyright (C) 1992, 95, 96, 97, 98, 99, 2000 Free Software Foundation, Inc. /* Copyright (C) 1992,95,96,97,98,99,2000,2001 Free Software Foundation, Inc.
This file is part of the GNU C Library. This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or The GNU C Library is free software; you can redistribute it and/or
@ -118,10 +118,11 @@ struct stat64
#define __S_IFLNK 0120000 /* Symbolic link. */ #define __S_IFLNK 0120000 /* Symbolic link. */
#define __S_IFSOCK 0140000 /* Socket. */ #define __S_IFSOCK 0140000 /* Socket. */
/* POSIX.1b objects. */ /* POSIX.1b objects. Note that these macros always evaluate to zero. But
#define __S_TYPEISMQ(buf) (0) they do it by enforcing the correct use of the macros. */
#define __S_TYPEISSEM(buf) (0) #define __S_TYPEISMQ(buf) ((buf)->st_mode - (buf)->st_mode)
#define __S_TYPEISSHM(buf) (0) #define __S_TYPEISSEM(buf) ((buf)->st_mode - (buf)->st_mode)
#define __S_TYPEISSHM(buf) ((buf)->st_mode - (buf)->st_mode)
/* Protection bits. */ /* Protection bits. */

View File

@ -1,4 +1,4 @@
/* Copyright (C) 1999, 2000 Free Software Foundation, Inc. /* Copyright (C) 1999, 2000, 2001 Free Software Foundation, Inc.
This file is part of the GNU C Library. This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or The GNU C Library is free software; you can redistribute it and/or
@ -92,10 +92,11 @@ struct stat64
#define __S_IFLNK 0120000 /* Symbolic link. */ #define __S_IFLNK 0120000 /* Symbolic link. */
#define __S_IFSOCK 0140000 /* Socket. */ #define __S_IFSOCK 0140000 /* Socket. */
/* POSIX.1b objects. */ /* POSIX.1b objects. Note that these macros always evaluate to zero. But
#define __S_TYPEISMQ(buf) (0) they do it by enforcing the correct use of the macros. */
#define __S_TYPEISSEM(buf) (0) #define __S_TYPEISMQ(buf) ((buf)->st_mode - (buf)->st_mode)
#define __S_TYPEISSHM(buf) (0) #define __S_TYPEISSEM(buf) ((buf)->st_mode - (buf)->st_mode)
#define __S_TYPEISSHM(buf) ((buf)->st_mode - (buf)->st_mode)
/* Protection bits. */ /* Protection bits. */

View File

@ -1,4 +1,4 @@
/* Copyright (C) 1992, 95, 96, 97, 98, 99, 2000 Free Software Foundation, Inc. /* Copyright (C) 1992,95,96,97,98,99,2000,2001 Free Software Foundation, Inc.
This file is part of the GNU C Library. This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or The GNU C Library is free software; you can redistribute it and/or
@ -118,10 +118,11 @@ struct stat64
#define __S_IFLNK 0120000 /* Symbolic link. */ #define __S_IFLNK 0120000 /* Symbolic link. */
#define __S_IFSOCK 0140000 /* Socket. */ #define __S_IFSOCK 0140000 /* Socket. */
/* POSIX.1b objects. */ /* POSIX.1b objects. Note that these macros always evaluate to zero. But
#define __S_TYPEISMQ(buf) (0) they do it by enforcing the correct use of the macros. */
#define __S_TYPEISSEM(buf) (0) #define __S_TYPEISMQ(buf) ((buf)->st_mode - (buf)->st_mode)
#define __S_TYPEISSHM(buf) (0) #define __S_TYPEISSEM(buf) ((buf)->st_mode - (buf)->st_mode)
#define __S_TYPEISSHM(buf) ((buf)->st_mode - (buf)->st_mode)
/* Protection bits. */ /* Protection bits. */

View File

@ -1,4 +1,4 @@
/* Copyright (C) 1992, 95, 96, 97, 98, 99, 2000 Free Software Foundation, Inc. /* Copyright (C) 1992,95,96,97,98,99,2000,2001 Free Software Foundation, Inc.
This file is part of the GNU C Library. This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or The GNU C Library is free software; you can redistribute it and/or
@ -124,10 +124,11 @@ struct stat64
#define __S_IFLNK 0120000 /* Symbolic link. */ #define __S_IFLNK 0120000 /* Symbolic link. */
#define __S_IFSOCK 0140000 /* Socket. */ #define __S_IFSOCK 0140000 /* Socket. */
/* POSIX.1b objects. */ /* POSIX.1b objects. Note that these macros always evaluate to zero. But
#define __S_TYPEISMQ(buf) (0) they do it by enforcing the correct use of the macros. */
#define __S_TYPEISSEM(buf) (0) #define __S_TYPEISMQ(buf) ((buf)->st_mode - (buf)->st_mode)
#define __S_TYPEISSHM(buf) (0) #define __S_TYPEISSEM(buf) ((buf)->st_mode - (buf)->st_mode)
#define __S_TYPEISSHM(buf) ((buf)->st_mode - (buf)->st_mode)
/* Protection bits. */ /* Protection bits. */

View File

@ -1,4 +1,4 @@
/* Copyright (C) 1992, 95, 96, 97, 98, 99, 2000 Free Software Foundation, Inc. /* Copyright (C) 1992,95,96,97,98,99,2000,2001 Free Software Foundation, Inc.
This file is part of the GNU C Library. This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or The GNU C Library is free software; you can redistribute it and/or
@ -113,10 +113,11 @@ struct stat64
#define __S_IFLNK 0120000 /* Symbolic link. */ #define __S_IFLNK 0120000 /* Symbolic link. */
#define __S_IFSOCK 0140000 /* Socket. */ #define __S_IFSOCK 0140000 /* Socket. */
/* POSIX.1b objects. */ /* POSIX.1b objects. Note that these macros always evaluate to zero. But
#define __S_TYPEISMQ(buf) (0) they do it by enforcing the correct use of the macros. */
#define __S_TYPEISSEM(buf) (0) #define __S_TYPEISMQ(buf) ((buf)->st_mode - (buf)->st_mode)
#define __S_TYPEISSHM(buf) (0) #define __S_TYPEISSEM(buf) ((buf)->st_mode - (buf)->st_mode)
#define __S_TYPEISSHM(buf) ((buf)->st_mode - (buf)->st_mode)
/* Protection bits. */ /* Protection bits. */

View File

@ -1,4 +1,4 @@
/* Copyright (C) 1992, 95, 96, 97, 98, 99, 2000 Free Software Foundation, Inc. /* Copyright (C) 1992,95,96,97,98,99,2000,2001 Free Software Foundation, Inc.
This file is part of the GNU C Library. This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or The GNU C Library is free software; you can redistribute it and/or
@ -118,10 +118,11 @@ struct stat64
#define __S_IFLNK 0120000 /* Symbolic link. */ #define __S_IFLNK 0120000 /* Symbolic link. */
#define __S_IFSOCK 0140000 /* Socket. */ #define __S_IFSOCK 0140000 /* Socket. */
/* POSIX.1b objects. */ /* POSIX.1b objects. Note that these macros always evaluate to zero. But
#define __S_TYPEISMQ(buf) (0) they do it by enforcing the correct use of the macros. */
#define __S_TYPEISSEM(buf) (0) #define __S_TYPEISMQ(buf) ((buf)->st_mode - (buf)->st_mode)
#define __S_TYPEISSHM(buf) (0) #define __S_TYPEISSEM(buf) ((buf)->st_mode - (buf)->st_mode)
#define __S_TYPEISSHM(buf) ((buf)->st_mode - (buf)->st_mode)
/* Protection bits. */ /* Protection bits. */

View File

@ -1,4 +1,4 @@
/* Copyright (C) 1992, 95, 96, 97, 98, 99, 2000 Free Software Foundation, Inc. /* Copyright (C) 1992,95,96,97,98,99,2000,2001 Free Software Foundation, Inc.
This file is part of the GNU C Library. This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or The GNU C Library is free software; you can redistribute it and/or
@ -76,7 +76,7 @@ struct stat64
__dev_t st_dev; /* Device. */ __dev_t st_dev; /* Device. */
#if __WORDSIZE == 64 #if __WORDSIZE == 64
unsigned short int __pad1; unsigned short int __pad1;
#endif #endif
__ino64_t st_ino; /* File serial number. */ __ino64_t st_ino; /* File serial number. */
__mode_t st_mode; /* File mode. */ __mode_t st_mode; /* File mode. */
__nlink_t st_nlink; /* Link count. */ __nlink_t st_nlink; /* Link count. */
@ -116,10 +116,11 @@ struct stat64
#define __S_IFLNK 0120000 /* Symbolic link. */ #define __S_IFLNK 0120000 /* Symbolic link. */
#define __S_IFSOCK 0140000 /* Socket. */ #define __S_IFSOCK 0140000 /* Socket. */
/* POSIX.1b objects. */ /* POSIX.1b objects. Note that these macros always evaluate to zero. But
#define __S_TYPEISMQ(buf) (0) they do it by enforcing the correct use of the macros. */
#define __S_TYPEISSEM(buf) (0) #define __S_TYPEISMQ(buf) ((buf)->st_mode - (buf)->st_mode)
#define __S_TYPEISSHM(buf) (0) #define __S_TYPEISSEM(buf) ((buf)->st_mode - (buf)->st_mode)
#define __S_TYPEISSHM(buf) ((buf)->st_mode - (buf)->st_mode)
/* Protection bits. */ /* Protection bits. */