1f08c3bdfSopenharmony_ci#define __packed __attribute__((packed)) 2f08c3bdfSopenharmony_ci 3f08c3bdfSopenharmony_citypedef __UINT32_TYPE__ u32; 4f08c3bdfSopenharmony_ci 5f08c3bdfSopenharmony_cistruct s { 6f08c3bdfSopenharmony_ci u32 a:5; 7f08c3bdfSopenharmony_ci u32 f:30; 8f08c3bdfSopenharmony_ci u32 z:5; 9f08c3bdfSopenharmony_ci} __packed; 10f08c3bdfSopenharmony_ci_Static_assert(sizeof(struct s) == 5); 11f08c3bdfSopenharmony_ci 12f08c3bdfSopenharmony_cistatic int ld(struct s *s) 13f08c3bdfSopenharmony_ci{ 14f08c3bdfSopenharmony_ci return s->f; 15f08c3bdfSopenharmony_ci} 16f08c3bdfSopenharmony_ci 17f08c3bdfSopenharmony_ci/* 18f08c3bdfSopenharmony_ci * check-name: packed-bitfield5 19f08c3bdfSopenharmony_ci * check-description: is check_access() OK with 'overlapping' packed bitfields? 20f08c3bdfSopenharmony_ci */ 21