/* Generated by ./xlat/gen.sh from ./xlat/sync_file_range_flags.in; do not edit. */
#if !(defined(SYNC_FILE_RANGE_WAIT_BEFORE) || (defined(HAVE_DECL_SYNC_FILE_RANGE_WAIT_BEFORE) && HAVE_DECL_SYNC_FILE_RANGE_WAIT_BEFORE))
# define SYNC_FILE_RANGE_WAIT_BEFORE 1
#endif
#if !(defined(SYNC_FILE_RANGE_WRITE) || (defined(HAVE_DECL_SYNC_FILE_RANGE_WRITE) && HAVE_DECL_SYNC_FILE_RANGE_WRITE))
# define SYNC_FILE_RANGE_WRITE 2
#endif
#if !(defined(SYNC_FILE_RANGE_WAIT_AFTER) || (defined(HAVE_DECL_SYNC_FILE_RANGE_WAIT_AFTER) && HAVE_DECL_SYNC_FILE_RANGE_WAIT_AFTER))
# define SYNC_FILE_RANGE_WAIT_AFTER 4
#endif

#ifdef IN_MPERS

# error static const struct xlat sync_file_range_flags in mpers mode

#else

static
const struct xlat sync_file_range_flags[] = {
 XLAT(SYNC_FILE_RANGE_WAIT_BEFORE),
 XLAT(SYNC_FILE_RANGE_WRITE),
 XLAT(SYNC_FILE_RANGE_WAIT_AFTER),
 XLAT_END
};

#endif /* !IN_MPERS */
