41 #define ARRAY_SIZE(A) (sizeof (A) / sizeof ((A)[0]))
50 #define CHECK_EXP(UINON_TYPE, VALUE_TYPE, FMT) \
52 __attribute__((noinline, unused)) \
53 check_##UINON_TYPE (UINON_TYPE u, const VALUE_TYPE *v) \
58 for (i = 0; i < ARRAY_SIZE (u.a); i++) \
62 PRINTF ("%i: " FMT " != " FMT "\n", \
68 CHECK_EXP (union128i_b
, char, "%d")
69 CHECK_EXP (union128i_w
, short, "%d")
70 CHECK_EXP (union128i_d
, int, "0x%x")
71 CHECK_EXP (union128i_q
, long long, "0x%llx")
72 CHECK_EXP (union128
, float, "%f")
73 CHECK_EXP (union128d
, double, "%f")