/* Generated by ./xlat/gen.sh from ./xlat/msgctl_flags.in; do not edit. */
#if !(defined(MSG_STAT) || (defined(HAVE_DECL_MSG_STAT) && HAVE_DECL_MSG_STAT))
# define MSG_STAT 11
#endif
#if !(defined(MSG_INFO) || (defined(HAVE_DECL_MSG_INFO) && HAVE_DECL_MSG_INFO))
# define MSG_INFO 12
#endif

#ifdef IN_MPERS

extern const struct xlat msgctl_flags[];

#else

# if !(defined HAVE_M32_MPERS || defined HAVE_MX32_MPERS)
static
# endif
const struct xlat msgctl_flags[] = {
#if defined(IPC_RMID) || (defined(HAVE_DECL_IPC_RMID) && HAVE_DECL_IPC_RMID)
  XLAT(IPC_RMID),
#endif
#if defined(IPC_SET) || (defined(HAVE_DECL_IPC_SET) && HAVE_DECL_IPC_SET)
  XLAT(IPC_SET),
#endif
#if defined(IPC_STAT) || (defined(HAVE_DECL_IPC_STAT) && HAVE_DECL_IPC_STAT)
  XLAT(IPC_STAT),
#endif
#if defined(IPC_INFO) || (defined(HAVE_DECL_IPC_INFO) && HAVE_DECL_IPC_INFO)
  XLAT(IPC_INFO),
#endif
 XLAT(MSG_STAT),
 XLAT(MSG_INFO),
 XLAT_END
};

#endif /* !IN_MPERS */
