1*1424dfb3Schristos /* This test program is part of GDB, the GNU debugger.
2*1424dfb3Schristos 
3*1424dfb3Schristos    Copyright 2019-2020 Free Software Foundation, Inc.
4*1424dfb3Schristos 
5*1424dfb3Schristos    This program is free software; you can redistribute it and/or modify
6*1424dfb3Schristos    it under the terms of the GNU General Public License as published by
7*1424dfb3Schristos    the Free Software Foundation; either version 3 of the License, or
8*1424dfb3Schristos    (at your option) any later version.
9*1424dfb3Schristos 
10*1424dfb3Schristos    This program is distributed in the hope that it will be useful,
11*1424dfb3Schristos    but WITHOUT ANY WARRANTY; without even the implied warranty of
12*1424dfb3Schristos    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13*1424dfb3Schristos    GNU General Public License for more details.
14*1424dfb3Schristos 
15*1424dfb3Schristos    You should have received a copy of the GNU General Public License
16*1424dfb3Schristos    along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
17*1424dfb3Schristos 
18*1424dfb3Schristos const char            laconic = 'A';
19*1424dfb3Schristos const char           *const lewd=&laconic;
20*1424dfb3Schristos 
21*1424dfb3Schristos /* volatile variables */
22*1424dfb3Schristos 
23*1424dfb3Schristos volatile char vox = 'B';
24*1424dfb3Schristos volatile unsigned char victuals = 'C';
25*1424dfb3Schristos volatile short vixen = 200;
26*1424dfb3Schristos volatile unsigned short vitriol = 300;
27*1424dfb3Schristos volatile long vellum = 1000;
28*1424dfb3Schristos volatile unsigned long valve = 2000;
29*1424dfb3Schristos volatile float vacuity = 3.0;
30*1424dfb3Schristos volatile double vertigo = 10;
31*1424dfb3Schristos 
32*1424dfb3Schristos /* pointers to volatile variables */
33*1424dfb3Schristos 
34*1424dfb3Schristos volatile char           * vampire = &vox;
35*1424dfb3Schristos volatile unsigned char  * viper  = &victuals;
36*1424dfb3Schristos volatile short          * vigour = &vixen;
37*1424dfb3Schristos volatile unsigned short * vapour = &vitriol;
38*1424dfb3Schristos volatile long           * ventricle = &vellum;
39*1424dfb3Schristos volatile unsigned long  * vigintillion = &valve;
40*1424dfb3Schristos volatile float          * vocation = &vacuity;
41*1424dfb3Schristos volatile double         * veracity = &vertigo;
42*1424dfb3Schristos 
43*1424dfb3Schristos /* volatile pointers to volatile variables */
44*1424dfb3Schristos 
45*1424dfb3Schristos volatile char           * volatile vapidity = &vox;
46*1424dfb3Schristos volatile unsigned char  * volatile velocity = &victuals;
47*1424dfb3Schristos volatile short          * volatile veneer = &vixen;
48*1424dfb3Schristos volatile unsigned short * volatile video = &vitriol;
49*1424dfb3Schristos volatile long           * volatile vacuum = &vellum;
50*1424dfb3Schristos volatile unsigned long  * volatile veniality = &valve;
51*1424dfb3Schristos volatile float          * volatile vitality = &vacuity;
52*1424dfb3Schristos volatile double         * volatile voracity = &vertigo;
53*1424dfb3Schristos 
54*1424dfb3Schristos /* volatile arrays */
55*1424dfb3Schristos 
56*1424dfb3Schristos volatile char violent[2];
57*1424dfb3Schristos volatile unsigned char violet[2];
58*1424dfb3Schristos volatile short vips[2];
59*1424dfb3Schristos volatile unsigned short virgen[2];
60*1424dfb3Schristos volatile long vulgar[2];
61*1424dfb3Schristos volatile unsigned long vulture[2];
62*1424dfb3Schristos volatile float vilify[2];
63*1424dfb3Schristos volatile double villar[2];
64*1424dfb3Schristos 
65*1424dfb3Schristos /* const volatile vars */
66*1424dfb3Schristos 
67*1424dfb3Schristos const volatile char           victor = 'Y';
68*1424dfb3Schristos 
69*1424dfb3Schristos /* pointers to const volatiles */
70*1424dfb3Schristos 
71*1424dfb3Schristos const volatile char              * victory = &victor;
72*1424dfb3Schristos 
73*1424dfb3Schristos /* const pointers to const volatile vars */
74*1424dfb3Schristos 
75*1424dfb3Schristos const volatile char              * const cavern = &victor;
76*1424dfb3Schristos 
77*1424dfb3Schristos /* volatile pointers to const vars */
78*1424dfb3Schristos 
79*1424dfb3Schristos const char                       * volatile caveat = &laconic;
80*1424dfb3Schristos const unsigned char              * volatile covenant;
81*1424dfb3Schristos 
82*1424dfb3Schristos /* volatile pointers to const volatile vars */
83*1424dfb3Schristos 
84*1424dfb3Schristos const volatile char              * volatile vizier = &victor;
85*1424dfb3Schristos const volatile unsigned char     * volatile vanadium;
86*1424dfb3Schristos 
87*1424dfb3Schristos /* const volatile pointers */
88*1424dfb3Schristos 
89*1424dfb3Schristos char                             * const volatile vane;
90*1424dfb3Schristos unsigned char                    * const volatile veldt;
91*1424dfb3Schristos 
92*1424dfb3Schristos /* const volatile pointers to const vars */
93*1424dfb3Schristos 
94*1424dfb3Schristos const char                       * const volatile cove;
95*1424dfb3Schristos const unsigned char              * const volatile cavity;
96*1424dfb3Schristos 
97*1424dfb3Schristos /* const volatile pointers to volatile vars */
98*1424dfb3Schristos 
99*1424dfb3Schristos volatile char                    * const volatile vagus;
100*1424dfb3Schristos volatile unsigned char           * const volatile vagrancy;
101*1424dfb3Schristos 
102*1424dfb3Schristos /* const volatile pointers to const volatile */
103*1424dfb3Schristos 
104*1424dfb3Schristos const volatile char              * const volatile vagary;
105*1424dfb3Schristos const volatile unsigned char     * const volatile vendor;
106*1424dfb3Schristos 
107*1424dfb3Schristos /* const volatile arrays */
108*1424dfb3Schristos 
109*1424dfb3Schristos const volatile char vindictive[2];
110*1424dfb3Schristos const volatile unsigned char vegetation[2];
111*1424dfb3Schristos 
112*1424dfb3Schristos int
main(void)113*1424dfb3Schristos main (void)
114*1424dfb3Schristos {
115*1424dfb3Schristos   return 0;
116*1424dfb3Schristos }
117