Commit | Line | Data |
---|---|---|
c906108c SS |
1 | |
2 | #if !defined (__STDC__) && !defined (_AIX) | |
3 | #define signed /**/ | |
4 | #endif | |
5 | ||
6 | char v_char; | |
7 | signed char v_signed_char; | |
8 | unsigned char v_unsigned_char; | |
9 | ||
10 | short v_short; | |
11 | signed short v_signed_short; | |
12 | unsigned short v_unsigned_short; | |
13 | ||
14 | int v_int; | |
15 | signed int v_signed_int; | |
16 | unsigned int v_unsigned_int; | |
17 | ||
18 | long v_long; | |
19 | signed long v_signed_long; | |
20 | unsigned long v_unsigned_long; | |
21 | ||
22 | float v_float; | |
23 | double v_double; | |
24 | ||
25 | ||
26 | ||
27 | char *v_char_pointer; | |
28 | signed char *v_signed_char_pointer; | |
29 | unsigned char *v_unsigned_char_pointer; | |
30 | ||
31 | short *v_short_pointer; | |
32 | signed short *v_signed_short_pointer; | |
33 | unsigned short *v_unsigned_short_pointer; | |
34 | ||
35 | int *v_int_pointer; | |
36 | int *v_int_pointer2; | |
37 | signed int *v_signed_int_pointer; | |
38 | unsigned int *v_unsigned_int_pointer; | |
39 | ||
40 | long *v_long_pointer; | |
41 | signed long *v_signed_long_pointer; | |
42 | unsigned long *v_unsigned_long_pointer; | |
43 | ||
44 | float *v_float_pointer; | |
45 | double *v_double_pointer; | |
46 | ||
47 | ||
48 | char v_char_array[2]; | |
49 | signed char v_signed_char_array[2]; | |
50 | unsigned char v_unsigned_char_array[2]; | |
51 | ||
52 | short v_short_array[2]; | |
53 | signed short v_signed_short_array[2]; | |
54 | unsigned short v_unsigned_short_array[2]; | |
55 | ||
56 | int v_int_array[2]; | |
57 | signed int v_signed_int_array[2]; | |
58 | unsigned int v_unsigned_int_array[2]; | |
59 | ||
60 | long v_long_array[2]; | |
61 | signed long v_signed_long_array[2]; | |
62 | unsigned long v_unsigned_long_array[2]; | |
63 | ||
64 | float v_float_array[2]; | |
65 | double v_double_array[2]; | |
66 | ||
67 | int matrix[2][3] = { { 0, 1, 2}, {3, 4, 5}}; | |
68 | int (*rptr)[3] = matrix; | |
69 | ||
70 | float ** ptr_to_ptr_to_float; | |
71 | ||
72 | int y; | |
73 | ||
f3134b88 TT |
74 | |
75 | typedef long k[5]; | |
76 | ||
77 | typedef struct { | |
78 | k array_variable; | |
79 | } S; | |
80 | ||
81 | S instance; | |
82 | ||
b9593231 KB |
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. */ | |
87 | void usevar (void *var) {} | |
88 | ||
c906108c SS |
89 | int main () |
90 | { | |
b9593231 KB |
91 | void dummy(); |
92 | int more_code(); | |
93 | ||
c906108c | 94 | dummy(); |
adf40b2e JM |
95 | |
96 | more_code (); | |
97 | ||
b9593231 KB |
98 | usevar (&v_int_pointer2); |
99 | usevar (&rptr); | |
100 | usevar (&y); | |
101 | ||
c906108c SS |
102 | return 0; |
103 | ||
104 | } | |
105 | ||
106 | void 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 | ||
adf40b2e JM |
176 | void marker1 () |
177 | { | |
178 | } | |
c906108c | 179 | |
adf40b2e JM |
180 | int 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; | |
1b3c5540 | 202 | D = -1.25E-37; |
adf40b2e JM |
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 | } |