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

static const struct xlat fan_init_flags[] = {
#if !(defined(FAN_CLOEXEC) || (defined(HAVE_DECL_FAN_CLOEXEC) && HAVE_DECL_FAN_CLOEXEC))
# define FAN_CLOEXEC 0x00000001
#endif
 XLAT(FAN_CLOEXEC),
#if !(defined(FAN_NONBLOCK) || (defined(HAVE_DECL_FAN_NONBLOCK) && HAVE_DECL_FAN_NONBLOCK))
# define FAN_NONBLOCK 0x00000002
#endif
 XLAT(FAN_NONBLOCK),
#if !(defined(FAN_UNLIMITED_QUEUE) || (defined(HAVE_DECL_FAN_UNLIMITED_QUEUE) && HAVE_DECL_FAN_UNLIMITED_QUEUE))
# define FAN_UNLIMITED_QUEUE 0x00000010
#endif
 XLAT(FAN_UNLIMITED_QUEUE),
#if !(defined(FAN_UNLIMITED_MARKS) || (defined(HAVE_DECL_FAN_UNLIMITED_MARKS) && HAVE_DECL_FAN_UNLIMITED_MARKS))
# define FAN_UNLIMITED_MARKS 0x00000020
#endif
 XLAT(FAN_UNLIMITED_MARKS),
 XLAT_END
};
