C++程序  |  50行  |  1.32 KB

/* Generated by ./xlat/gen.sh from ./xlat/open_access_modes.in; do not edit. */

#include "gcc_compat.h"
#include "static_assert.h"

#if defined(O_RDONLY) || (defined(HAVE_DECL_O_RDONLY) && HAVE_DECL_O_RDONLY)
DIAG_PUSH_IGNORE_TAUTOLOGICAL_COMPARE
static_assert((O_RDONLY) == (0), "O_RDONLY != 0");
DIAG_POP_IGNORE_TAUTOLOGICAL_COMPARE
#else
# define O_RDONLY 0
#endif
#if defined(O_WRONLY) || (defined(HAVE_DECL_O_WRONLY) && HAVE_DECL_O_WRONLY)
DIAG_PUSH_IGNORE_TAUTOLOGICAL_COMPARE
static_assert((O_WRONLY) == (1), "O_WRONLY != 1");
DIAG_POP_IGNORE_TAUTOLOGICAL_COMPARE
#else
# define O_WRONLY 1
#endif
#if defined(O_RDWR) || (defined(HAVE_DECL_O_RDWR) && HAVE_DECL_O_RDWR)
DIAG_PUSH_IGNORE_TAUTOLOGICAL_COMPARE
static_assert((O_RDWR) == (2), "O_RDWR != 2");
DIAG_POP_IGNORE_TAUTOLOGICAL_COMPARE
#else
# define O_RDWR 2
#endif
#if defined(O_ACCMODE) || (defined(HAVE_DECL_O_ACCMODE) && HAVE_DECL_O_ACCMODE)
DIAG_PUSH_IGNORE_TAUTOLOGICAL_COMPARE
static_assert((O_ACCMODE) == (3), "O_ACCMODE != 3");
DIAG_POP_IGNORE_TAUTOLOGICAL_COMPARE
#else
# define O_ACCMODE 3
#endif

#ifndef XLAT_MACROS_ONLY

# ifndef IN_MPERS

const struct xlat open_access_modes[] = {
 [O_RDONLY] = XLAT(O_RDONLY),
 [O_WRONLY] = XLAT(O_WRONLY),
 [O_RDWR] = XLAT(O_RDWR),
 [O_ACCMODE] = XLAT(O_ACCMODE),
 XLAT_END
};

# endif /* !IN_MPERS */

#endif /* !XLAT_MACROS_ONLY */