1 /*        $NetBSD: msg_011.c,v 1.8 2024/06/08 06:37:06 rillig Exp $   */
2 # 3 "msg_011.c"
3 
4 // Test for message: bit-field initializer out of range [11]
5 
6 /* lint1-extra-flags: -X 351 */
7 
8 void
example(void)9 example(void)
10 {
11           struct {
12                     signed int si: 3;
13                     unsigned int ui: 3;
14           /* expect+1: warning: 's' set but not used in function 'example' [191] */
15           } s[] = {
16                     /* expect+2: warning: bit-field initializer out of range [11] */
17                     /* expect+1: warning: initialization of unsigned type 'unsigned int:3' with negative constant -8 [221] */
18                     { -8, -8 },
19 
20                     /* expect+2: warning: bit-field initializer out of range [11] */
21                     /* expect+1: warning: initialization of unsigned type 'unsigned int:3' with negative constant -7 [221] */
22                     { -7, -7 },
23 
24                     /* expect+1: warning: initialization of unsigned type 'unsigned int:3' with negative constant -4 [221] */
25                     { -4, -4 },
26 
27                     /* expect+1: warning: initialization of unsigned type 'unsigned int:3' with negative constant -3 [221] */
28                     { -3, -3 },
29 
30                     { 3, 3 },
31 
32                     /* expect+1: warning: bit-field initializer out of range [11] */
33                     { 4, 4 },
34 
35                     /* expect+1: warning: bit-field initializer out of range [11] */
36                     { 7, 7 },
37 
38                     /* expect+2: warning: bit-field initializer does not fit [180] */
39                     /* expect+1: warning: bit-field initializer does not fit [180] */
40                     { 8, 8 },
41           };
42 }
43