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

#include "gcc_compat.h"
#include "static_assert.h"

#if defined(STATX_ATTR_COMPRESSED) || (defined(HAVE_DECL_STATX_ATTR_COMPRESSED) && HAVE_DECL_STATX_ATTR_COMPRESSED)
DIAG_PUSH_IGNORE_TAUTOLOGICAL_COMPARE
static_assert((STATX_ATTR_COMPRESSED) == (0x00000004), "STATX_ATTR_COMPRESSED != 0x00000004");
DIAG_POP_IGNORE_TAUTOLOGICAL_COMPARE
#else
# define STATX_ATTR_COMPRESSED 0x00000004
#endif
#if defined(STATX_ATTR_IMMUTABLE) || (defined(HAVE_DECL_STATX_ATTR_IMMUTABLE) && HAVE_DECL_STATX_ATTR_IMMUTABLE)
DIAG_PUSH_IGNORE_TAUTOLOGICAL_COMPARE
static_assert((STATX_ATTR_IMMUTABLE) == (0x00000010), "STATX_ATTR_IMMUTABLE != 0x00000010");
DIAG_POP_IGNORE_TAUTOLOGICAL_COMPARE
#else
# define STATX_ATTR_IMMUTABLE 0x00000010
#endif
#if defined(STATX_ATTR_APPEND) || (defined(HAVE_DECL_STATX_ATTR_APPEND) && HAVE_DECL_STATX_ATTR_APPEND)
DIAG_PUSH_IGNORE_TAUTOLOGICAL_COMPARE
static_assert((STATX_ATTR_APPEND) == (0x00000020), "STATX_ATTR_APPEND != 0x00000020");
DIAG_POP_IGNORE_TAUTOLOGICAL_COMPARE
#else
# define STATX_ATTR_APPEND 0x00000020
#endif
#if defined(STATX_ATTR_NODUMP) || (defined(HAVE_DECL_STATX_ATTR_NODUMP) && HAVE_DECL_STATX_ATTR_NODUMP)
DIAG_PUSH_IGNORE_TAUTOLOGICAL_COMPARE
static_assert((STATX_ATTR_NODUMP) == (0x00000040), "STATX_ATTR_NODUMP != 0x00000040");
DIAG_POP_IGNORE_TAUTOLOGICAL_COMPARE
#else
# define STATX_ATTR_NODUMP 0x00000040
#endif
#if defined(STATX_ATTR_ENCRYPTED) || (defined(HAVE_DECL_STATX_ATTR_ENCRYPTED) && HAVE_DECL_STATX_ATTR_ENCRYPTED)
DIAG_PUSH_IGNORE_TAUTOLOGICAL_COMPARE
static_assert((STATX_ATTR_ENCRYPTED) == (0x00000800), "STATX_ATTR_ENCRYPTED != 0x00000800");
DIAG_POP_IGNORE_TAUTOLOGICAL_COMPARE
#else
# define STATX_ATTR_ENCRYPTED 0x00000800
#endif
#if defined(STATX_ATTR_AUTOMOUNT) || (defined(HAVE_DECL_STATX_ATTR_AUTOMOUNT) && HAVE_DECL_STATX_ATTR_AUTOMOUNT)
DIAG_PUSH_IGNORE_TAUTOLOGICAL_COMPARE
static_assert((STATX_ATTR_AUTOMOUNT) == (0x00001000), "STATX_ATTR_AUTOMOUNT != 0x00001000");
DIAG_POP_IGNORE_TAUTOLOGICAL_COMPARE
#else
# define STATX_ATTR_AUTOMOUNT 0x00001000
#endif
#if defined(STATX_ATTR_MOUNT_ROOT) || (defined(HAVE_DECL_STATX_ATTR_MOUNT_ROOT) && HAVE_DECL_STATX_ATTR_MOUNT_ROOT)
DIAG_PUSH_IGNORE_TAUTOLOGICAL_COMPARE
static_assert((STATX_ATTR_MOUNT_ROOT) == (0x00002000), "STATX_ATTR_MOUNT_ROOT != 0x00002000");
DIAG_POP_IGNORE_TAUTOLOGICAL_COMPARE
#else
# define STATX_ATTR_MOUNT_ROOT 0x00002000
#endif
#if defined(STATX_ATTR_VERITY) || (defined(HAVE_DECL_STATX_ATTR_VERITY) && HAVE_DECL_STATX_ATTR_VERITY)
DIAG_PUSH_IGNORE_TAUTOLOGICAL_COMPARE
static_assert((STATX_ATTR_VERITY) == (0x00100000), "STATX_ATTR_VERITY != 0x00100000");
DIAG_POP_IGNORE_TAUTOLOGICAL_COMPARE
#else
# define STATX_ATTR_VERITY 0x00100000
#endif
#ifndef STRACE_WORKAROUND_FOR_STATX_ATTR_DAX
# define STRACE_WORKAROUND_FOR_STATX_ATTR_DAX
# undef STATX_ATTR_DAX
#endif
#if defined(STATX_ATTR_DAX) || (defined(HAVE_DECL_STATX_ATTR_DAX) && HAVE_DECL_STATX_ATTR_DAX)
DIAG_PUSH_IGNORE_TAUTOLOGICAL_COMPARE
static_assert((STATX_ATTR_DAX) == (0x00200000), "STATX_ATTR_DAX != 0x00200000");
DIAG_POP_IGNORE_TAUTOLOGICAL_COMPARE
#else
# define STATX_ATTR_DAX 0x00200000
#endif
#undef XLAT_PREV_VAL

#ifndef XLAT_MACROS_ONLY

# ifdef IN_MPERS

#  error static const struct xlat statx_attrs in mpers mode

# else

DIAG_PUSH_IGNORE_TAUTOLOGICAL_CONSTANT_COMPARE
static const struct xlat_data statx_attrs_xdata[] = {
 XLAT(STATX_ATTR_COMPRESSED),
 #define XLAT_VAL_0 ((unsigned) (STATX_ATTR_COMPRESSED))
 #define XLAT_STR_0 STRINGIFY(STATX_ATTR_COMPRESSED)
 XLAT(STATX_ATTR_IMMUTABLE),
 #define XLAT_VAL_1 ((unsigned) (STATX_ATTR_IMMUTABLE))
 #define XLAT_STR_1 STRINGIFY(STATX_ATTR_IMMUTABLE)
 XLAT(STATX_ATTR_APPEND),
 #define XLAT_VAL_2 ((unsigned) (STATX_ATTR_APPEND))
 #define XLAT_STR_2 STRINGIFY(STATX_ATTR_APPEND)
 XLAT(STATX_ATTR_NODUMP),
 #define XLAT_VAL_3 ((unsigned) (STATX_ATTR_NODUMP))
 #define XLAT_STR_3 STRINGIFY(STATX_ATTR_NODUMP)
 XLAT(STATX_ATTR_ENCRYPTED),
 #define XLAT_VAL_4 ((unsigned) (STATX_ATTR_ENCRYPTED))
 #define XLAT_STR_4 STRINGIFY(STATX_ATTR_ENCRYPTED)
 XLAT(STATX_ATTR_AUTOMOUNT),
 #define XLAT_VAL_5 ((unsigned) (STATX_ATTR_AUTOMOUNT))
 #define XLAT_STR_5 STRINGIFY(STATX_ATTR_AUTOMOUNT)
 XLAT(STATX_ATTR_MOUNT_ROOT),
 #define XLAT_VAL_6 ((unsigned) (STATX_ATTR_MOUNT_ROOT))
 #define XLAT_STR_6 STRINGIFY(STATX_ATTR_MOUNT_ROOT)
 XLAT(STATX_ATTR_VERITY),
 #define XLAT_VAL_7 ((unsigned) (STATX_ATTR_VERITY))
 #define XLAT_STR_7 STRINGIFY(STATX_ATTR_VERITY)
#ifndef STRACE_WORKAROUND_FOR_STATX_ATTR_DAX
# define STRACE_WORKAROUND_FOR_STATX_ATTR_DAX
/*
* Linux kernel commit v5.10-rc6-63-g72d1249e2ffdbc344e465031ec5335fa3489d62e
* has changed the value of STATX_ATTR_DAX constant introduced by commit
* v5.8-rc1~51^2~9 because the old value was already used by
* STATX_ATTR_MOUNT_ROOT.
*/
# undef STATX_ATTR_DAX
#endif
 XLAT(STATX_ATTR_DAX),
 #define XLAT_VAL_8 ((unsigned) (STATX_ATTR_DAX))
 #define XLAT_STR_8 STRINGIFY(STATX_ATTR_DAX)
};
static
const struct xlat statx_attrs[1] = { {
 .data = statx_attrs_xdata,
 .size = ARRAY_SIZE(statx_attrs_xdata),
 .type = XT_NORMAL,
 .flags_mask = 0
#  ifdef XLAT_VAL_0
  | XLAT_VAL_0
#  endif
#  ifdef XLAT_VAL_1
  | XLAT_VAL_1
#  endif
#  ifdef XLAT_VAL_2
  | XLAT_VAL_2
#  endif
#  ifdef XLAT_VAL_3
  | XLAT_VAL_3
#  endif
#  ifdef XLAT_VAL_4
  | XLAT_VAL_4
#  endif
#  ifdef XLAT_VAL_5
  | XLAT_VAL_5
#  endif
#  ifdef XLAT_VAL_6
  | XLAT_VAL_6
#  endif
#  ifdef XLAT_VAL_7
  | XLAT_VAL_7
#  endif
#  ifdef XLAT_VAL_8
  | XLAT_VAL_8
#  endif
  ,
 .flags_strsz = 0
#  ifdef XLAT_STR_0
  + sizeof(XLAT_STR_0)
#  endif
#  ifdef XLAT_STR_1
  + sizeof(XLAT_STR_1)
#  endif
#  ifdef XLAT_STR_2
  + sizeof(XLAT_STR_2)
#  endif
#  ifdef XLAT_STR_3
  + sizeof(XLAT_STR_3)
#  endif
#  ifdef XLAT_STR_4
  + sizeof(XLAT_STR_4)
#  endif
#  ifdef XLAT_STR_5
  + sizeof(XLAT_STR_5)
#  endif
#  ifdef XLAT_STR_6
  + sizeof(XLAT_STR_6)
#  endif
#  ifdef XLAT_STR_7
  + sizeof(XLAT_STR_7)
#  endif
#  ifdef XLAT_STR_8
  + sizeof(XLAT_STR_8)
#  endif
  ,
} };
DIAG_POP_IGNORE_TAUTOLOGICAL_CONSTANT_COMPARE

#  undef XLAT_STR_0
#  undef XLAT_VAL_0
#  undef XLAT_STR_1
#  undef XLAT_VAL_1
#  undef XLAT_STR_2
#  undef XLAT_VAL_2
#  undef XLAT_STR_3
#  undef XLAT_VAL_3
#  undef XLAT_STR_4
#  undef XLAT_VAL_4
#  undef XLAT_STR_5
#  undef XLAT_VAL_5
#  undef XLAT_STR_6
#  undef XLAT_VAL_6
#  undef XLAT_STR_7
#  undef XLAT_VAL_7
#  undef XLAT_STR_8
#  undef XLAT_VAL_8
# endif /* !IN_MPERS */

#endif /* !XLAT_MACROS_ONLY */
