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

#ifdef IN_MPERS

# error static const struct xlat ipc_msg_flags in mpers mode

#else

static
const struct xlat ipc_msg_flags[] = {
#if defined(MSG_NOERROR) || (defined(HAVE_DECL_MSG_NOERROR) && HAVE_DECL_MSG_NOERROR)
  XLAT(MSG_NOERROR),
#endif
#if defined(MSG_EXCEPT) || (defined(HAVE_DECL_MSG_EXCEPT) && HAVE_DECL_MSG_EXCEPT)
  XLAT(MSG_EXCEPT),
#endif
#if defined(IPC_NOWAIT) || (defined(HAVE_DECL_IPC_NOWAIT) && HAVE_DECL_IPC_NOWAIT)
  XLAT(IPC_NOWAIT),
#endif
 XLAT_END
};

#endif /* !IN_MPERS */
