1f08c3bdfSopenharmony_ci#define __bitwise __attribute__((bitwise))
2f08c3bdfSopenharmony_ci#define __force   __attribute__((force))
3f08c3bdfSopenharmony_ci
4f08c3bdfSopenharmony_citypedef long long __bitwise bits;
5f08c3bdfSopenharmony_ci
6f08c3bdfSopenharmony_cienum a {
7f08c3bdfSopenharmony_ci	AR = (__force bits) 0,
8f08c3bdfSopenharmony_ci	AP = 0,
9f08c3bdfSopenharmony_ci	AS = (__force bits) 1,
10f08c3bdfSopenharmony_ci	AQ = 1,
11f08c3bdfSopenharmony_ci};
12f08c3bdfSopenharmony_ci_Static_assert(sizeof(AP) == sizeof(int), "is bad?");
13f08c3bdfSopenharmony_ci
14f08c3bdfSopenharmony_cienum b {
15f08c3bdfSopenharmony_ci	BP = 0,
16f08c3bdfSopenharmony_ci	BR = (__force bits) 0,
17f08c3bdfSopenharmony_ci	BQ = 1,
18f08c3bdfSopenharmony_ci	BS = (__force bits) 1,
19f08c3bdfSopenharmony_ci};
20f08c3bdfSopenharmony_ci_Static_assert(sizeof(BP) == sizeof(int), "is bad?");
21f08c3bdfSopenharmony_ci
22f08c3bdfSopenharmony_ci/*
23f08c3bdfSopenharmony_ci * check-name: enum-bitwise-mixed
24f08c3bdfSopenharmony_ci *
25f08c3bdfSopenharmony_ci * check-error-start
26f08c3bdfSopenharmony_cienum-bitwise-mixed.c:8:14: warning: mixed bitwiseness
27f08c3bdfSopenharmony_cienum-bitwise-mixed.c:16:15: warning: mixed bitwiseness
28f08c3bdfSopenharmony_ci * check-error-end
29f08c3bdfSopenharmony_ci */
30