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

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

#if defined(RUSAGE_SELF) || (defined(HAVE_DECL_RUSAGE_SELF) && HAVE_DECL_RUSAGE_SELF)
DIAG_PUSH_IGNORE_TAUTOLOGICAL_COMPARE
static_assert((RUSAGE_SELF) == (0), "RUSAGE_SELF != 0");
DIAG_POP_IGNORE_TAUTOLOGICAL_COMPARE
#else
# define RUSAGE_SELF 0
#endif
#if defined(RUSAGE_CHILDREN) || (defined(HAVE_DECL_RUSAGE_CHILDREN) && HAVE_DECL_RUSAGE_CHILDREN)
DIAG_PUSH_IGNORE_TAUTOLOGICAL_COMPARE
static_assert((RUSAGE_CHILDREN) == ((-1)), "RUSAGE_CHILDREN != (-1)");
DIAG_POP_IGNORE_TAUTOLOGICAL_COMPARE
#else
# define RUSAGE_CHILDREN (-1)
#endif
#if defined(RUSAGE_BOTH) || (defined(HAVE_DECL_RUSAGE_BOTH) && HAVE_DECL_RUSAGE_BOTH)
DIAG_PUSH_IGNORE_TAUTOLOGICAL_COMPARE
static_assert((RUSAGE_BOTH) == ((-2)), "RUSAGE_BOTH != (-2)");
DIAG_POP_IGNORE_TAUTOLOGICAL_COMPARE
#else
# define RUSAGE_BOTH (-2)
#endif
#if defined(RUSAGE_THREAD) || (defined(HAVE_DECL_RUSAGE_THREAD) && HAVE_DECL_RUSAGE_THREAD)
DIAG_PUSH_IGNORE_TAUTOLOGICAL_COMPARE
static_assert((RUSAGE_THREAD) == (1), "RUSAGE_THREAD != 1");
DIAG_POP_IGNORE_TAUTOLOGICAL_COMPARE
#else
# define RUSAGE_THREAD 1
#endif

#ifndef XLAT_MACROS_ONLY

# ifdef IN_MPERS

#  error static const struct xlat usagewho in mpers mode

# else

static const struct xlat_data usagewho_xdata[] = {
 XLAT(RUSAGE_SELF),
 #define XLAT_VAL_0 ((unsigned) (RUSAGE_SELF))
 #define XLAT_STR_0 STRINGIFY(RUSAGE_SELF)
 XLAT(RUSAGE_CHILDREN),
 #define XLAT_VAL_1 ((unsigned) (RUSAGE_CHILDREN))
 #define XLAT_STR_1 STRINGIFY(RUSAGE_CHILDREN)
 XLAT(RUSAGE_BOTH),
 #define XLAT_VAL_2 ((unsigned) (RUSAGE_BOTH))
 #define XLAT_STR_2 STRINGIFY(RUSAGE_BOTH)
 XLAT(RUSAGE_THREAD),
 #define XLAT_VAL_3 ((unsigned) (RUSAGE_THREAD))
 #define XLAT_STR_3 STRINGIFY(RUSAGE_THREAD)
};
static
const struct xlat usagewho[1] = { {
 .data = usagewho_xdata,
 .size = ARRAY_SIZE(usagewho_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
  ,
 .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
  ,
} };

#  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
# endif /* !IN_MPERS */

#endif /* !XLAT_MACROS_ONLY */
