opt_bs.c revision 1.5 1 /* $NetBSD: opt_bs.c,v 1.5 2021/10/26 20:37:26 rillig Exp $ */
2 /* $FreeBSD$ */
3
4 /*
5 * Tests for the options '-bs' and '-nbs'.
6 *
7 * The option '-bs' forces a space after the keyword 'sizeof'.
8 *
9 * The option '-nbs' removes all whitespace after the keyword 'sizeof', unless
10 * the next token is a word as well.
11 */
12
13 #indent input
14 void
15 example(int i)
16 {
17 print(sizeof(i));
18 print(sizeof(int));
19
20 print(sizeof i);
21 print(sizeof (i));
22 print(sizeof (int));
23
24 print(sizeof i);
25 print(sizeof (i));
26 print(sizeof (int));
27 }
28 #indent end
29
30 #indent run -bs
31 void
32 example(int i)
33 {
34 print(sizeof (i));
35 print(sizeof (int));
36
37 print(sizeof i);
38 print(sizeof (i));
39 print(sizeof (int));
40
41 print(sizeof i);
42 print(sizeof (i));
43 print(sizeof (int));
44 }
45 #indent end
46
47 #indent run -nbs
48 void
49 example(int i)
50 {
51 print(sizeof(i));
52 print(sizeof(int));
53
54 print(sizeof i);
55 print(sizeof(i));
56 print(sizeof(int));
57
58 print(sizeof i);
59 print(sizeof(i));
60 print(sizeof(int));
61 }
62 #indent end
63
64 /*
65 * The option '-bs' only affects 'sizeof', not 'offsetof', even though these
66 * two keywords are syntactically similar.
67 */
68 #indent input
69 int sizeof_type = sizeof (int);
70 int sizeof_type = sizeof(int);
71 int sizeof_expr = sizeof (0);
72 int sizeof_expr = sizeof(0);
73 int sizeof_expr = sizeof 0;
74
75 int offset = offsetof(struct s, member);
76 int offset = offsetof (struct s, member);
77 #indent end
78
79 #indent run -pcs -di0
80 int sizeof_type = sizeof (int);
81 int sizeof_type = sizeof (int);
82 int sizeof_expr = sizeof (0);
83 int sizeof_expr = sizeof (0);
84 int sizeof_expr = sizeof 0;
85
86 int offset = offsetof (struct s, member);
87 int offset = offsetof (struct s, member);
88 #indent end
89
90 #indent run -npcs -di0
91 int sizeof_type = sizeof(int);
92 int sizeof_type = sizeof(int);
93 int sizeof_expr = sizeof(0);
94 int sizeof_expr = sizeof(0);
95 int sizeof_expr = sizeof 0;
96
97 int offset = offsetof(struct s, member);
98 int offset = offsetof(struct s, member);
99 #indent end
100
101
102 /* Ensure that there is no blank before 'sizeof(' if there is a '\n' between. */
103 #indent input
104 int sizeof_newline = sizeof
105 (0);
106 #indent end
107
108 #indent run-equals-input -di0 -bs
109 #indent run-equals-input -di0 -nbs
110
111
112 /* Ensure that only the first '(' after 'sizeof' gets a blank. */
113 #indent input
114 int sizeof_parenthesized = sizeof((0));
115 #indent end
116
117 #indent run -di0 -bs
118 int sizeof_parenthesized = sizeof ((0));
119 #indent end
120
121 #indent run-equals-input -di0 -nbs
122