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

#ifndef IN_MPERS

const struct xlat open_access_modes[] = {
#if defined(O_RDONLY) || (defined(HAVE_DECL_O_RDONLY) && HAVE_DECL_O_RDONLY)
  XLAT(O_RDONLY),
#endif
#if defined(O_WRONLY) || (defined(HAVE_DECL_O_WRONLY) && HAVE_DECL_O_WRONLY)
  XLAT(O_WRONLY),
#endif
#if defined(O_RDWR) || (defined(HAVE_DECL_O_RDWR) && HAVE_DECL_O_RDWR)
  XLAT(O_RDWR),
#endif
#if defined(O_ACCMODE) || (defined(HAVE_DECL_O_ACCMODE) && HAVE_DECL_O_ACCMODE)
  XLAT(O_ACCMODE),
#endif
 XLAT_END
};

#endif /* !IN_MPERS */
