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