diff options
Diffstat (limited to 'lib/openat.h')
-rw-r--r-- | lib/openat.h | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/lib/openat.h b/lib/openat.h index 6639f732a..1f1990d7f 100644 --- a/lib/openat.h +++ b/lib/openat.h @@ -26,6 +26,16 @@ #include <dirent.h> #include <unistd.h> +#ifndef __attribute__ +# if __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 8) || __STRICT_ANSI__ +# define __attribute__(x) /* empty */ +# endif +#endif + +#ifndef ATTRIBUTE_NORETURN +# define ATTRIBUTE_NORETURN __attribute__ ((__noreturn__)) +#endif + #ifndef AT_FDCWD # define AT_FDCWD (-3041965) /* same value as Solaris 9 */ # define AT_SYMLINK_NOFOLLOW 4096 /* same value as Solaris 9 */ @@ -41,6 +51,11 @@ int openat (int fd, char const *file, int flags, /* mode_t mode */ ...); DIR *fdopendir (int fd); # define fstatat __OPENAT_ID (fstatat) int fstatat (int fd, char const *file, struct stat *st, int flag); +void openat_restore_die (int) ATTRIBUTE_NORETURN; +void openat_save_die (int) ATTRIBUTE_NORETURN; +# else +# define openat_restore_die(Errno) /* empty */ +# define openat_save_die(Errno) /* empty */ # endif #endif |