1f08c3bdfSopenharmony_ci#define bos(O, T)	__builtin_object_size(O, T)
2f08c3bdfSopenharmony_ci
3f08c3bdfSopenharmony_cistruct s {
4f08c3bdfSopenharmony_ci	char arr[8];
5f08c3bdfSopenharmony_ci	__INT32_TYPE__ i;
6f08c3bdfSopenharmony_ci	__INT32_TYPE__ padding;
7f08c3bdfSopenharmony_ci};
8f08c3bdfSopenharmony_ci
9f08c3bdfSopenharmony_cistatic struct s s;
10f08c3bdfSopenharmony_ci
11f08c3bdfSopenharmony_ciint obj_int1(void) { return bos(&s.i, 1) == 4; }
12f08c3bdfSopenharmony_ciint obj_arr1(void) { return bos(&s.arr[1], 1) == 7; }
13f08c3bdfSopenharmony_ci
14f08c3bdfSopenharmony_ci/*
15f08c3bdfSopenharmony_ci * check-name: builtin-objsize1
16f08c3bdfSopenharmony_ci * check-command: test-linearize -Wno-decl $file
17f08c3bdfSopenharmony_ci * check-known-to-fail
18f08c3bdfSopenharmony_ci *
19f08c3bdfSopenharmony_ci * check-output-ignore
20f08c3bdfSopenharmony_ci * check-output-returns: 1
21f08c3bdfSopenharmony_ci */
22