xref: /netbsd-src/tests/usr.bin/xlint/lint1/msg_005.c (revision d16b7486a53dcb8072b60ec6fcb4373a2d0c27b7)
1 /*	$NetBSD: msg_005.c,v 1.5 2022/06/17 18:54:53 rillig Exp $	*/
2 # 3 "msg_005.c"
3 
4 // Test for message: modifying typedef with '%s'; only qualifiers allowed [5]
5 
6 typedef int number;
7 
8 /* expect+1: warning: modifying typedef with 'signed'; only qualifiers allowed [5] */
9 typedef number signed signed_number;
10 
11 /* expect+1: warning: modifying typedef with 'unsigned'; only qualifiers allowed [5] */
12 typedef number unsigned unsigned_number;
13 
14 /* expect+1: warning: modifying typedef with 'short'; only qualifiers allowed [5] */
15 typedef number short short_number;
16 
17 /* expect+1: warning: modifying typedef with 'long'; only qualifiers allowed [5] */
18 typedef number long long_number;
19 
20 /*
21  * If the type qualifier comes first, the following name is interpreted as a
22  * new name, not as the one referring to the typedef.  This makes the above
23  * type modifications even more obscure.
24  */
25 /* expect+1: error: syntax error 'prefix_long_number' [249] */
26 typedef long number prefix_long_number;
27 
28 /* Type qualifiers are OK. */
29 typedef number const const_number;
30