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

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

#if defined(F_OWNER_TID) || (defined(HAVE_DECL_F_OWNER_TID) && HAVE_DECL_F_OWNER_TID)
DIAG_PUSH_IGNORE_TAUTOLOGICAL_COMPARE
static_assert((F_OWNER_TID) == (0), "F_OWNER_TID != 0");
DIAG_POP_IGNORE_TAUTOLOGICAL_COMPARE
#else
# define F_OWNER_TID 0
#endif
#if defined(F_OWNER_PID) || (defined(HAVE_DECL_F_OWNER_PID) && HAVE_DECL_F_OWNER_PID)
DIAG_PUSH_IGNORE_TAUTOLOGICAL_COMPARE
static_assert((F_OWNER_PID) == (1), "F_OWNER_PID != 1");
DIAG_POP_IGNORE_TAUTOLOGICAL_COMPARE
#else
# define F_OWNER_PID 1
#endif
#if defined(F_OWNER_PGRP) || (defined(HAVE_DECL_F_OWNER_PGRP) && HAVE_DECL_F_OWNER_PGRP)
DIAG_PUSH_IGNORE_TAUTOLOGICAL_COMPARE
static_assert((F_OWNER_PGRP) == (2), "F_OWNER_PGRP != 2");
DIAG_POP_IGNORE_TAUTOLOGICAL_COMPARE
#else
# define F_OWNER_PGRP 2
#endif

#ifndef XLAT_MACROS_ONLY

# ifdef IN_MPERS

#  error static const struct xlat f_owner_types in mpers mode

# else

static
const struct xlat f_owner_types[] = {
 XLAT(F_OWNER_TID),
 XLAT(F_OWNER_PID),
 XLAT(F_OWNER_PGRP),
 XLAT_END
};

# endif /* !IN_MPERS */

#endif /* !XLAT_MACROS_ONLY */
