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

static const struct xlat loop_flags_options[] = {
#if defined(LO_FLAGS_READ_ONLY) || (defined(HAVE_DECL_LO_FLAGS_READ_ONLY) && HAVE_DECL_LO_FLAGS_READ_ONLY)
 XLAT(LO_FLAGS_READ_ONLY),
#endif
#if defined(LO_FLAGS_AUTOCLEAR) || (defined(HAVE_DECL_LO_FLAGS_AUTOCLEAR) && HAVE_DECL_LO_FLAGS_AUTOCLEAR)
 XLAT(LO_FLAGS_AUTOCLEAR),
#endif
#if defined(LO_FLAGS_PARTSCAN) || (defined(HAVE_DECL_LO_FLAGS_PARTSCAN) && HAVE_DECL_LO_FLAGS_PARTSCAN)
 XLAT(LO_FLAGS_PARTSCAN),
#endif
 XLAT_END
};
