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

#ifdef IN_MPERS

# error static const struct xlat access_flags in mpers mode

#else

static
const struct xlat access_flags[] = {
#if defined(F_OK) || (defined(HAVE_DECL_F_OK) && HAVE_DECL_F_OK)
  XLAT(F_OK),
#endif
#if defined(R_OK) || (defined(HAVE_DECL_R_OK) && HAVE_DECL_R_OK)
  XLAT(R_OK),
#endif
#if defined(W_OK) || (defined(HAVE_DECL_W_OK) && HAVE_DECL_W_OK)
  XLAT(W_OK),
#endif
#if defined(X_OK) || (defined(HAVE_DECL_X_OK) && HAVE_DECL_X_OK)
  XLAT(X_OK),
#endif
#if defined(EFF_ONLY_OK) || (defined(HAVE_DECL_EFF_ONLY_OK) && HAVE_DECL_EFF_ONLY_OK)
  XLAT(EFF_ONLY_OK),
#endif
#if defined(EX_OK) || (defined(HAVE_DECL_EX_OK) && HAVE_DECL_EX_OK)
  XLAT(EX_OK),
#endif
 XLAT_END
};

#endif /* !IN_MPERS */
