Update BAD_TYPECHECK to work on x86_64

Message-ID: <ZUhn7LOcgLOJjKZr@jupiter.tail36e24.ts.net>
This commit is contained in:
Flavio Cruz 2023-11-05 23:13:32 -05:00 committed by Samuel Thibault
parent f957f47df7
commit 5dd3bda59c

View File

@ -20,11 +20,8 @@
/* Macro used by MIG to cleanly check the type. */
#define BAD_TYPECHECK(type, check) __glibc_unlikely (({ \
union { mach_msg_type_t t; uint32_t w; } _t, _c; \
union { mach_msg_type_t t; uintptr_t w; } _t, _c; \
_t.t = *(type); _c.t = *(check);_t.w != _c.w; }))
/* TODO: add this assertion for x86_64. */
#ifndef __x86_64__
_Static_assert (sizeof (uint32_t) == sizeof (mach_msg_type_t),
"mach_msg_type_t needs to be the same size as uint32_t");
#endif
_Static_assert (sizeof (uintptr_t) == sizeof (mach_msg_type_t),
"mach_msg_type_t needs to be the same size as uintptr_t");