Commit | Line | Data |
---|---|---|
c906108c SS |
1 | void marker1 (void) |
2 | { | |
3 | } | |
4 | ||
5 | /* misc. function params */ | |
6 | ||
7 | int | |
8 | qux1 (const char cc, const char /*&*/ccr, const char *ccp, char *const cpc) | |
9 | { | |
10 | return 33; | |
11 | } | |
12 | ||
13 | int | |
14 | qux2 (volatile unsigned char vuc, const volatile int cvi, | |
15 | volatile short /*&*/vsr, volatile long *vlp, float *volatile fpv, | |
16 | const volatile signed char *const volatile cvscpcv) | |
17 | { | |
18 | return 400; | |
19 | } | |
20 | ||
21 | int | |
22 | main (void) | |
23 | { | |
24 | char lave = 'B'; | |
25 | unsigned char lavish = 10; | |
26 | short lax = 20; | |
27 | unsigned short lecherous = 30; | |
28 | long lechery = 40; | |
29 | unsigned long lectern = 50; | |
30 | float leeway = 60; | |
31 | double legacy = 70; | |
32 | signed char lemonade = 35; | |
33 | ||
34 | const char laconic = 'A'; | |
35 | const unsigned char laggard = 1; | |
36 | const short lagoon = 2; | |
37 | const unsigned short laity = 3; | |
38 | const long lambent = 4; | |
39 | const unsigned long laminated = 5; | |
40 | const float lampoon = 6; | |
41 | const double languid = 7; | |
42 | ||
43 | /* pointers to constant variables */ | |
44 | ||
45 | const char *legend = &lave; | |
46 | const unsigned char *legerdemain = &lavish; | |
47 | const short *leniency = &lax; | |
48 | const unsigned short *leonine = &lecherous; | |
49 | const long *lesion = &lechery; | |
50 | const unsigned long *lethal = &lectern; | |
51 | const float *lethargic = &leeway; | |
52 | const double *levity = &legacy; | |
53 | ||
54 | /* constant pointers to constant variables */ | |
55 | ||
56 | const char *const lewd = &laconic; | |
57 | const unsigned char *const lexicographer = &laggard; | |
58 | const short *const lexicon = &lagoon; | |
59 | const unsigned short *const liaison = &laity; | |
60 | const long *const libation = &lambent; | |
61 | const unsigned long *const libelous = &laminated; | |
62 | const float *const libertine = &lampoon; | |
63 | const double *const libidinous = &languid; | |
64 | ||
65 | /* this is the same as const char * legend .... */ | |
66 | ||
67 | char const *languish = &laconic; | |
68 | unsigned char const *languor = &laggard; | |
69 | short const *lank = &lagoon; | |
70 | unsigned short const *lapidary = &laity; | |
71 | long const *larceny = &lambent; | |
72 | unsigned long const *largess = &laminated; | |
73 | float const *lascivious = &lampoon; | |
74 | double const *lassitude = &languid; | |
75 | ||
76 | /* constant pointers to variable */ | |
77 | ||
78 | char *const lamprey = &lave; | |
79 | unsigned char *const lariat = &lavish; | |
80 | short *const laudanum = &lax; | |
81 | unsigned short *const lecithin = &lecherous; | |
82 | long *const leviathan = &lechery; | |
83 | unsigned long *const libretto = &lectern; | |
84 | float *const lissome = &leeway; | |
85 | double *const locust = &legacy; | |
86 | ||
2f608a3a KW |
87 | /* constant arrays */ |
88 | const char logical[2] = {laconic, laconic}; | |
89 | const unsigned char lugged[2] = {laggard, laggard}; | |
90 | const short luck[2] = {lagoon, lagoon}; | |
91 | const unsigned short lunar[2] = {laity, laity}; | |
92 | const long lumen[2] = {lambent, lambent}; | |
93 | const unsigned long lurk[2] = {laminated, laminated}; | |
94 | const float lush[2] = {lampoon, lampoon}; | |
95 | const double lynx[2] = {languid, languid}; | |
96 | ||
c906108c SS |
97 | /* volatile variables */ |
98 | ||
99 | volatile char vox = 'X'; | |
100 | volatile unsigned char victuals = 13; | |
101 | volatile short vixen = 200; | |
102 | volatile unsigned short vitriol = 300; | |
103 | volatile long vellum = 1000; | |
104 | volatile unsigned long valve = 2000; | |
105 | volatile float vacuity = 3.0; | |
106 | volatile double vertigo = 10.3; | |
107 | ||
108 | /* pointers to volatile variables */ | |
109 | ||
110 | volatile char * vampire = &vox; | |
111 | volatile unsigned char * viper = &victuals; | |
112 | volatile short * vigour = &vixen; | |
113 | volatile unsigned short * vapour = &vitriol; | |
114 | volatile long * ventricle = &vellum; | |
115 | volatile unsigned long * vigintillion = &valve; | |
116 | volatile float * vocation = &vacuity; | |
117 | volatile double * veracity = &vertigo; | |
118 | ||
119 | /* volatile pointers to volatile variables */ | |
120 | ||
121 | volatile char * volatile vapidity = &vox; | |
122 | volatile unsigned char * volatile velocity = &victuals; | |
123 | volatile short * volatile veneer = &vixen; | |
124 | volatile unsigned short * volatile video = &vitriol; | |
125 | volatile long * volatile vacuum = &vellum; | |
126 | volatile unsigned long * volatile veniality = &valve; | |
127 | volatile float * volatile vitality = &vacuity; | |
128 | volatile double * volatile voracity = &vertigo; | |
129 | ||
cf363f18 MW |
130 | /* volatile arrays */ |
131 | volatile char violent[2] = {vox, vox}; | |
132 | volatile unsigned char violet[2] = {victuals, victuals}; | |
133 | volatile short vips[2] = {vixen, vixen}; | |
134 | volatile unsigned short virgen[2] = {vitriol, vitriol}; | |
135 | volatile long vulgar[2] = {vellum, vellum}; | |
136 | volatile unsigned long vulture[2] = {valve, valve}; | |
137 | volatile float vilify[2] = {vacuity, vacuity}; | |
138 | volatile double villar[2] = {vertigo, vertigo}; | |
139 | ||
c906108c SS |
140 | /* const volatile vars */ |
141 | ||
142 | const volatile char victor = 'Y'; | |
143 | const volatile unsigned char vicar = 11; | |
144 | ||
145 | /* pointers to const volatiles */ | |
146 | ||
147 | const volatile char * victory = &victor; | |
148 | const volatile unsigned char * vicarage = &vicar; | |
149 | ||
150 | /* const pointers to volatile vars */ | |
151 | ||
152 | volatile char * const vein = &vox; | |
153 | volatile unsigned char * const vogue = &victuals; | |
154 | ||
155 | /* const pointers to const volatile vars */ | |
156 | ||
157 | const volatile char * const cavern = &victor; | |
158 | const volatile unsigned char * const coverlet = &vicar; | |
159 | ||
160 | /* volatile pointers to const vars */ | |
161 | ||
162 | const char * volatile caveat = &laconic; | |
163 | const unsigned char * volatile covenant = &laggard; | |
164 | ||
165 | /* volatile pointers to const volatile vars */ | |
166 | ||
167 | const volatile char * volatile vizier = &victor; | |
168 | const volatile unsigned char * volatile vanadium = &vicar; | |
169 | ||
170 | /* const volatile pointers */ | |
171 | ||
172 | char * const volatile vane = &lave; | |
173 | unsigned char * const volatile veldt = &lavish; | |
174 | ||
175 | /* const volatile pointers to const vars */ | |
176 | ||
177 | const char * const volatile cove = &laconic; | |
178 | const unsigned char * const volatile cavity = &laggard; | |
179 | ||
180 | /* const volatile pointers to volatile vars */ | |
181 | ||
182 | volatile char * const volatile vagus = &vox; | |
183 | volatile unsigned char * const volatile vagrancy = &victuals; | |
184 | ||
185 | /* const volatile pointers to const volatile */ | |
186 | ||
187 | const volatile char * const volatile vagary = &victor; | |
188 | const volatile unsigned char * const volatile vendor = &vicar; | |
abe1a5d0 | 189 | |
cf363f18 MW |
190 | /* const volatile arrays */ |
191 | const volatile char vindictive[2] = {victor, victor}; | |
192 | const volatile unsigned char vegetation[2] = {vicar, vicar}; | |
193 | ||
abe1a5d0 KB |
194 | /* various structs with const members */ |
195 | ||
67609209 FR |
196 | struct crass { char * const ptr; } crass = { lamprey }; |
197 | struct crisp { char * const *ptr; } crisp = { &lamprey }; | |
c906108c | 198 | |
f0df251a DJ |
199 | /* Reference the structs so that they are not discarded. */ |
200 | struct crass *creed = &crass; | |
201 | struct crisp *crow = &crisp; | |
202 | ||
c906108c SS |
203 | /* misc. references */ |
204 | /* | |
205 | const char & radiation = laconic; | |
206 | volatile signed char & remuneration = lemonade; | |
207 | */ | |
c906108c SS |
208 | marker1 (); |
209 | ||
210 | ||
211 | return 0; | |
212 | } |