1
2#if !defined (__STDC__) && !defined (_AIX)
3#define signed  /**/
4#endif
5
6char		v_char;
7signed char	v_signed_char;
8unsigned char	v_unsigned_char;
9
10short		v_short;
11signed short	v_signed_short;
12unsigned short	v_unsigned_short;
13
14int		v_int;
15signed int	v_signed_int;
16unsigned int	v_unsigned_int;
17
18long		v_long;
19signed long	v_signed_long;
20unsigned long	v_unsigned_long;
21
22float		v_float;
23double		v_double;
24
25
26
27char		*v_char_pointer;
28signed char	*v_signed_char_pointer;
29unsigned char	*v_unsigned_char_pointer;
30
31short		*v_short_pointer;
32signed short	*v_signed_short_pointer;
33unsigned short	*v_unsigned_short_pointer;
34
35int		*v_int_pointer;
36int             *v_int_pointer2;
37signed int	*v_signed_int_pointer;
38unsigned int	*v_unsigned_int_pointer;
39
40long		*v_long_pointer;
41signed long	*v_signed_long_pointer;
42unsigned long	*v_unsigned_long_pointer;
43
44float		*v_float_pointer;
45double		*v_double_pointer;
46
47
48char		v_char_array[2];
49signed char	v_signed_char_array[2];
50unsigned char	v_unsigned_char_array[2];
51
52short		v_short_array[2];
53signed short	v_signed_short_array[2];
54unsigned short	v_unsigned_short_array[2];
55
56int		v_int_array[2];
57signed int	v_signed_int_array[2];
58unsigned int	v_unsigned_int_array[2];
59
60long		v_long_array[2];
61signed long	v_signed_long_array[2];
62unsigned long	v_unsigned_long_array[2];
63
64float		v_float_array[2];
65double		v_double_array[2];
66
67int matrix[2][3] = { { 0, 1, 2}, {3, 4, 5}};
68int (*rptr)[3] = matrix;
69
70float ** ptr_to_ptr_to_float;
71
72int y;
73
74
75typedef long k[5];
76
77typedef struct {
78  k array_variable;
79} S;
80
81S instance;
82
83/* Do nothing function used for forcing some of the above variables to
84   be referenced by the program source.  If the variables are not
85   referenced, some linkers will remove the symbol from the symbol
86   table making it impossible to refer to the variable in gdb.  */
87void usevar (void *var) {}
88
89int main ()
90{
91  void dummy();
92  int more_code();
93
94  dummy();
95
96  more_code ();
97
98  usevar (&v_int_pointer2);
99  usevar (&rptr);
100  usevar (&y);
101
102  return 0;
103
104}
105
106void dummy()
107{
108
109
110  v_char = 0;
111  v_signed_char = 1;
112  v_unsigned_char = 2;
113
114  v_short = 3;
115  v_signed_short = 4;
116  v_unsigned_short = 5;
117
118  v_int = 6;
119  v_signed_int = 7;
120  v_unsigned_int = 8;
121
122  v_long = 9;
123  v_signed_long = 10;
124  v_unsigned_long = 11;
125
126  v_float = 100.0;
127  v_double = 200.0;
128
129
130
131  v_char_pointer = &v_char;
132  v_signed_char_pointer = &v_signed_char;
133  v_unsigned_char_pointer = &v_unsigned_char;
134
135  v_short_pointer = &v_short;
136  v_signed_short_pointer = &v_signed_short;
137  v_unsigned_short_pointer = &v_unsigned_short;
138
139  v_int_pointer = &v_int;
140  v_signed_int_pointer = &v_signed_int;
141  v_unsigned_int_pointer = &v_unsigned_int;
142
143  v_long_pointer = &v_long;
144  v_signed_long_pointer = &v_signed_long;
145  v_unsigned_long_pointer = &v_unsigned_long;
146
147  v_float_pointer = &v_float;
148  v_double_pointer = &v_double;
149
150  ptr_to_ptr_to_float = &v_float_pointer;
151
152
153  v_char_array[0] = v_char;
154  v_signed_char_array[0] = v_signed_char;
155  v_unsigned_char_array[0] = v_unsigned_char;
156
157  v_short_array[0] = v_short;
158  v_signed_short_array[0] = v_signed_short;
159  v_unsigned_short_array[0] = v_unsigned_short;
160
161  v_int_array[0] = v_int;
162  v_int_array[1] = v_int * 3;
163
164  v_signed_int_array[0] = v_signed_int;
165  v_unsigned_int_array[0] = v_unsigned_int;
166
167  v_long_array[0] = v_long;
168  v_signed_long_array[0] = v_signed_long;
169  v_unsigned_long_array[0] = v_unsigned_long;
170
171  v_float_array[0] = v_float;
172  v_double_array[0] = v_double;
173
174}
175
176void marker1 ()
177{
178}
179
180int more_code()
181{
182    char C, *pC, **ppC, ***pppC, ****ppppC, *****pppppC, ******ppppppC;
183    unsigned char UC, *pUC;
184    short S, *pS;
185    unsigned short US, *pUS;
186    int I, *pI;
187    unsigned int UI, *pUI;
188    long L, *pL;
189    unsigned long UL, *pUL;
190    float F, *pF;
191    double D, *pD;
192
193    C = 'A';
194    UC = 21;
195    S = -14;
196    US = 7;
197    I = 102;
198    UI = 1002;
199    L = -234;
200    UL = 234;
201    F = 1.25E10;
202    D = -1.25E-37;
203    pC = &C;
204    ppC = &pC;
205    pppC = &ppC;
206    ppppC = &pppC;
207    pppppC = &ppppC;
208    ppppppC = &pppppC;
209    pUC = &UC;
210    pS = &S;
211    pUS = &US;
212    pI = &I;
213    pUI = &UI;
214    pL = &L;
215    pUL = &UL;
216    pF = &F;
217    pD = &D;
218
219    marker1();
220    return 0;
221}
222