1 | // -*- Mode: C -*- |
---|
2 | // |
---|
3 | // Copyright (C) Glen Ditchfield 1994, 1999 |
---|
4 | // |
---|
5 | // prelude.cf -- Standard Cforall Preample |
---|
6 | // |
---|
7 | // Author : Glen Ditchfield |
---|
8 | // Created On : Sat Nov 29 07:23:41 2014 |
---|
9 | // Last Modified By : Peter A. Buhr |
---|
10 | // Last Modified On : Tue Dec 2 09:25:31 2014 |
---|
11 | // Update Count : 20 |
---|
12 | // |
---|
13 | |
---|
14 | // Following line added from stddef.h by build |
---|
15 | typedef long int ptrdiff_t; |
---|
16 | |
---|
17 | // Section numbers from: http://plg.uwaterloo.ca/~cforall/refrat.pdf |
---|
18 | |
---|
19 | // ------------------------------------------------------------ |
---|
20 | // |
---|
21 | // Section 4.1 Primary Expressions |
---|
22 | // |
---|
23 | // ------------------------------------------------------------ |
---|
24 | |
---|
25 | const int 0, 1; |
---|
26 | |
---|
27 | forall ( dtype DT ) const DT * const 0; |
---|
28 | forall ( ftype FT ) FT * const 0; |
---|
29 | |
---|
30 | // ------------------------------------------------------------ |
---|
31 | // |
---|
32 | // Section 4.2 Postfix Operators |
---|
33 | // |
---|
34 | // ------------------------------------------------------------ |
---|
35 | |
---|
36 | int ?++( int * ), ?--( int * ); |
---|
37 | unsigned ?++( unsigned * ), ?--( unsigned * ); |
---|
38 | long ?++( long * ), ?--( long * ); |
---|
39 | long unsigned ?++( long unsigned * ), ?--( long unsigned * ); |
---|
40 | float ?++( float * ), ?--( float * ); |
---|
41 | double ?++( double * ), ?--( double * ); |
---|
42 | long double ?++( long double * ), ?--( long double * ); |
---|
43 | |
---|
44 | forall( type T ) T * ?++( T ** ); |
---|
45 | forall( type T ) T * ?--( T ** ); |
---|
46 | forall( type T ) const T * ?++( const T ** ); |
---|
47 | forall( type T ) const T * ?--( const T ** ); |
---|
48 | forall( type T ) volatile T * ?++( volatile T ** ); |
---|
49 | forall( type T ) volatile T * ?--( volatile T ** ); |
---|
50 | forall( type T ) const volatile T * ?++( const volatile T ** ); |
---|
51 | forall( type T ) const volatile T * ?--( const volatile T ** ); |
---|
52 | |
---|
53 | forall( type T ) lvalue T ?[?]( T *, ptrdiff_t ); |
---|
54 | forall( type T ) const lvalue T ?[?]( const T *, ptrdiff_t ); |
---|
55 | forall( type T ) volatile lvalue T ?[?]( volatile T *, ptrdiff_t ); |
---|
56 | forall( type T ) const volatile lvalue T ?[?]( const volatile T *, ptrdiff_t ); |
---|
57 | forall( type T ) lvalue T ?[?]( ptrdiff_t, T * ); |
---|
58 | forall( type T ) const lvalue T ?[?]( ptrdiff_t, const T * ); |
---|
59 | forall( type T ) volatile lvalue T ?[?]( ptrdiff_t, volatile T * ); |
---|
60 | forall( type T ) const volatile lvalue T ?[?]( ptrdiff_t, const volatile T * ); |
---|
61 | |
---|
62 | // ------------------------------------------------------------ |
---|
63 | // |
---|
64 | // Section 4.3 Unary Operators |
---|
65 | // |
---|
66 | // ------------------------------------------------------------ |
---|
67 | |
---|
68 | int ++?( int * ), --?( int * ); |
---|
69 | unsigned ++?( unsigned * ), --?( unsigned * ); |
---|
70 | long ++?( long * ), --?( long * ); |
---|
71 | long unsigned ++?( long unsigned * ), --?( long unsigned * ); |
---|
72 | float ++?( float * ), --?( float * ); |
---|
73 | double ++?( double * ), --?( double * ); |
---|
74 | long double ++?( long double * ), --?( long double * ); |
---|
75 | |
---|
76 | forall( type T ) T * ++?( T ** ); |
---|
77 | forall( type T ) T * --?( T ** ); |
---|
78 | forall( type T ) const T * ++?( const T ** ); |
---|
79 | forall( type T ) const T * --?( const T ** ); |
---|
80 | forall( type T ) volatile T * ++?( volatile T ** ); |
---|
81 | forall( type T ) volatile T * --?( volatile T ** ); |
---|
82 | forall( type T ) const volatile T * ++?( const volatile T ** ); |
---|
83 | forall( type T ) const volatile T * --?( const volatile T ** ); |
---|
84 | |
---|
85 | forall( type T ) lvalue T *?( T * ); |
---|
86 | forall( type T ) const lvalue T *?( const T * ); |
---|
87 | forall( type T ) volatile lvalue T *?( volatile T * ); |
---|
88 | forall( type T ) const volatile lvalue T *?( const volatile T * ); |
---|
89 | forall( ftype FT ) lvalue FT *?( FT * ); |
---|
90 | |
---|
91 | int +?( int ), -?( int ), ~?( int ); |
---|
92 | unsigned +?( unsigned ), -?( unsigned ), ~?( unsigned ); |
---|
93 | unsigned long +?( unsigned long ), -?( unsigned long ), ~?( unsigned long ); |
---|
94 | long +?( long ), -?( long ), ~?( long ); |
---|
95 | float +?( float ), -?( float ); |
---|
96 | double +?( double ), -?( double ); |
---|
97 | long double +?( long double ), -?( long double ); |
---|
98 | |
---|
99 | int !?( int ), !?( unsigned ), !?( long ), !?( unsigned long ), |
---|
100 | !?( float ), !?( double ); |
---|
101 | |
---|
102 | forall ( dtype DT ) int !?( const volatile DT * ); |
---|
103 | forall ( ftype FT ) int !?( FT * ); |
---|
104 | |
---|
105 | // ------------------------------------------------------------ |
---|
106 | // |
---|
107 | // Section 4.5 Multiplicative Operators |
---|
108 | // |
---|
109 | // ------------------------------------------------------------ |
---|
110 | |
---|
111 | int ?*?( int, int ), |
---|
112 | ?/?( int, int ), |
---|
113 | ?%?( int, int ); |
---|
114 | unsigned ?*?( unsigned, unsigned ), |
---|
115 | ?/?( unsigned, unsigned ), |
---|
116 | ?%?( unsigned, unsigned ); |
---|
117 | unsigned long ?*?( unsigned long, unsigned long ), |
---|
118 | ?/?( unsigned long, unsigned long ), |
---|
119 | ?%?( unsigned long, unsigned long ); |
---|
120 | long ?*?( long, long ), |
---|
121 | ?/?( long, long ), |
---|
122 | ?%?( long, long ); |
---|
123 | float ?*?( float, float ), |
---|
124 | ?/?( float, float ); |
---|
125 | double ?*?( double, double ), |
---|
126 | ?/?( double, double ); |
---|
127 | long double ?*?( long double, long double ), |
---|
128 | ?/?( long double, long double ); |
---|
129 | |
---|
130 | // ------------------------------------------------------------ |
---|
131 | // |
---|
132 | // Section 4.6 Additive Operators |
---|
133 | // |
---|
134 | // ------------------------------------------------------------ |
---|
135 | |
---|
136 | int ?+?( int, int ), ?-?( int, int ); |
---|
137 | long ?+?( long, long ), ?-?( long, long ); |
---|
138 | unsigned ?+?( unsigned, unsigned ), ?-?( unsigned, unsigned ); |
---|
139 | long unsigned ?+?( long unsigned, long unsigned ), ?-?( long unsigned, long unsigned ); |
---|
140 | float ?+?( float, float ), ?-?( float, float ); |
---|
141 | double ?+?( double, double ), ?-?( double, double ); |
---|
142 | long double ?+?( long double, long double ), ?-?( long double, long double ); |
---|
143 | |
---|
144 | forall( type T ) T * ?+?( T *, ptrdiff_t ); |
---|
145 | forall( type T ) T * ?+?( ptrdiff_t, T * ); |
---|
146 | forall( type T ) T * ?-?( T *, ptrdiff_t ); |
---|
147 | forall( type T ) const T * ?+?( const T *, ptrdiff_t ); |
---|
148 | forall( type T ) const T * ?+?( ptrdiff_t, const T * ); |
---|
149 | forall( type T ) const T * ?-?( const T *, ptrdiff_t ); |
---|
150 | forall( type T ) volatile T * ?+?( volatile T *, ptrdiff_t ); |
---|
151 | forall( type T ) volatile T * ?+?( ptrdiff_t, volatile T * ); |
---|
152 | forall( type T ) volatile T * ?-?( volatile T *, ptrdiff_t ); |
---|
153 | forall( type T ) const volatile T * ?+?( const volatile T *, ptrdiff_t ); |
---|
154 | forall( type T ) const volatile T * ?+?( ptrdiff_t, const volatile T * ); |
---|
155 | forall( type T ) const volatile T * ?-?( const volatile T *, ptrdiff_t ); |
---|
156 | |
---|
157 | forall( type T ) ptrdiff_t ?-?( const volatile T *, const volatile T * ); |
---|
158 | |
---|
159 | // ------------------------------------------------------------ |
---|
160 | // |
---|
161 | // Section 4.7 Bitwise Shift Operators |
---|
162 | // |
---|
163 | // ------------------------------------------------------------ |
---|
164 | |
---|
165 | int ?<<?( int, int ), ?>>?( int, int ); |
---|
166 | long ?<<?( long, long ), ?>>?( long, long ); |
---|
167 | unsigned ?<<?( unsigned, unsigned ), ?>>?( unsigned, unsigned ); |
---|
168 | long unsigned ?<<?( long unsigned, long unsigned ), ?>>?( long unsigned, long unsigned ); |
---|
169 | |
---|
170 | // ------------------------------------------------------------ |
---|
171 | // |
---|
172 | // Section 4.8 Relational Operators |
---|
173 | // |
---|
174 | // ------------------------------------------------------------ |
---|
175 | |
---|
176 | int ?<?( int, int ), ?<=?( int, int ), |
---|
177 | ?>?( int, int ), ?>=?( int, int ); |
---|
178 | int ?<?( long, long ), ?<=?( long, long ), |
---|
179 | ?>?( long, long ), ?>=?( long, long ); |
---|
180 | int ?<?( unsigned, unsigned ), ?<=?( unsigned, unsigned ), |
---|
181 | ?>?( unsigned, unsigned ), ?>=?( unsigned, unsigned ); |
---|
182 | int ?<?( unsigned long, unsigned long ), ?<=?( unsigned long, unsigned long ), |
---|
183 | ?>?( unsigned long, unsigned long ), ?>=?( unsigned long, unsigned long ); |
---|
184 | int ?<?( float, float ), ?<=?( float, float ), |
---|
185 | ?>?( float, float ), ?>=?( float, float ); |
---|
186 | int ?<?( double, double ), ?<=?( double, double ), |
---|
187 | ?>?( double, double ), ?>=?( double, double ); |
---|
188 | int ?<?( long double, long double ), ?<=?( long double, long double ), |
---|
189 | ?>?( long double, long double ), ?>=?( long double, long double ); |
---|
190 | |
---|
191 | forall( dtype DT ) int ?<?( const volatile DT *, const volatile DT * ); |
---|
192 | forall( dtype DT ) int ?>?( const volatile DT *, const volatile DT * ); |
---|
193 | forall( dtype DT ) int ?<=?( const volatile DT *, const volatile DT * ); |
---|
194 | forall( dtype DT ) int ?>=?( const volatile DT *, const volatile DT * ); |
---|
195 | |
---|
196 | // ------------------------------------------------------------ |
---|
197 | // |
---|
198 | // Section 4.9 Equality Operators |
---|
199 | // |
---|
200 | // ------------------------------------------------------------ |
---|
201 | |
---|
202 | int ?==?( int, int ), ?!=?( int, int ); |
---|
203 | int ?==?( long, long ), ?!=?( long, long ); |
---|
204 | int ?==?( unsigned, unsigned ), ?!=?( unsigned, unsigned ); |
---|
205 | int ?==?( unsigned long, unsigned long ), ?!=?( unsigned long, unsigned long ); |
---|
206 | int ?==?( float, float ), ?!=?( float, float ); |
---|
207 | int ?==?( double, double ), ?!=?( double, double ); |
---|
208 | int ?==?( long double, long double ), ?!=?( long double, long double ); |
---|
209 | |
---|
210 | forall( dtype DT ) int ?==?( DT *, DT * ); |
---|
211 | forall( dtype DT ) int ?!=?( DT *, DT * ); |
---|
212 | forall( dtype DT ) int ?==?( const DT *, const DT * ); |
---|
213 | forall( dtype DT ) int ?!=?( const DT *, const DT * ); |
---|
214 | forall( dtype DT ) int ?==?( volatile DT *, volatile DT * ); |
---|
215 | forall( dtype DT ) int ?!=?( volatile DT *, volatile DT * ); |
---|
216 | forall( dtype DT ) int ?==?( const volatile DT *, const volatile DT * ); |
---|
217 | forall( dtype DT ) int ?!=?( const volatile DT *, const volatile DT * ); |
---|
218 | forall( ftype FT ) int ?==?( FT *, FT * ); |
---|
219 | forall( ftype FT ) int ?!=?( FT *, FT * ); |
---|
220 | |
---|
221 | |
---|
222 | forall( dtype DT ) int ?==?( const volatile DT *, const volatile void * ); |
---|
223 | forall( dtype DT ) int ?!=?( const volatile DT *, const volatile void * ); |
---|
224 | forall( dtype DT ) int ?==?( const volatile void *, const volatile DT * ); |
---|
225 | forall( dtype DT ) int ?!=?( const volatile void *, const volatile DT * ); |
---|
226 | |
---|
227 | forall( dtype DT ) int ?==?( const volatile DT *, forall( dtype DT2 )const DT2 * ); |
---|
228 | forall( dtype DT ) int ?!=?( const volatile DT *, forall( dtype DT2 )const DT2 * ); |
---|
229 | forall( dtype DT ) int ?==?( forall( dtype DT2 )const DT2 *, const volatile DT * ); |
---|
230 | forall( dtype DT ) int ?!=?( forall( dtype DT2 )const DT2 *, const volatile DT * ); |
---|
231 | forall( ftype FT ) int ?==?( FT *, forall( ftype FT2 )FT2 * ); |
---|
232 | forall( ftype FT ) int ?!=?( FT *, forall( ftype FT2 )FT2 * ); |
---|
233 | forall( ftype FT ) int ?==?( forall( ftype FT2 )FT2 *, FT * ); |
---|
234 | forall( ftype FT ) int ?!=?( forall( ftype FT2 )FT2 *, FT * ); |
---|
235 | |
---|
236 | // ------------------------------------------------------------ |
---|
237 | // |
---|
238 | // Section 4.10 Bitwise AND Operators |
---|
239 | // |
---|
240 | // ------------------------------------------------------------ |
---|
241 | |
---|
242 | int ?&?( int, int ); |
---|
243 | long ?&?( long, long ); |
---|
244 | unsigned ?&?( unsigned, unsigned ); |
---|
245 | unsigned long ?&?( unsigned long, unsigned long ); |
---|
246 | |
---|
247 | // ------------------------------------------------------------ |
---|
248 | // |
---|
249 | // Section 4.11 Bitwise XOR Operators |
---|
250 | // |
---|
251 | // ------------------------------------------------------------ |
---|
252 | |
---|
253 | int ?^?( int, int ); |
---|
254 | long ?^?( long, long ); |
---|
255 | unsigned ?^?( unsigned, unsigned ); |
---|
256 | unsigned long ?^?( unsigned long, unsigned long ); |
---|
257 | |
---|
258 | // ------------------------------------------------------------ |
---|
259 | // |
---|
260 | // Section 4.12 Bitwise OR Operators |
---|
261 | // |
---|
262 | // ------------------------------------------------------------ |
---|
263 | |
---|
264 | int ?|?( int, int ); |
---|
265 | long ?|?( long, long ); |
---|
266 | unsigned ?|?( unsigned, unsigned ); |
---|
267 | unsigned long ?|?( unsigned long, unsigned long ); |
---|
268 | |
---|
269 | // ------------------------------------------------------------ |
---|
270 | // |
---|
271 | // Section 4.16 Assignment Operator |
---|
272 | // |
---|
273 | // ------------------------------------------------------------ |
---|
274 | |
---|
275 | forall( ftype FT ) FT * ?=?( FT **, FT * ); |
---|
276 | forall( ftype FT ) FT * ?=?( FT * volatile *, FT * ); |
---|
277 | |
---|
278 | forall( dtype DT ) DT * ?=?( DT * *, DT * ); |
---|
279 | forall( dtype DT ) DT * ?=?( DT * volatile *, DT * ); |
---|
280 | forall( dtype DT ) const DT * ?=?( const DT * *, DT * ); |
---|
281 | forall( dtype DT ) const DT * ?=?( const DT * volatile *, DT * ); |
---|
282 | forall( dtype DT ) const DT * ?=?( const DT * *, const DT * ); |
---|
283 | forall( dtype DT ) const DT * ?=?( const DT * volatile *, const DT * ); |
---|
284 | forall( dtype DT ) volatile DT * ?=?( volatile DT * *, DT * ); |
---|
285 | forall( dtype DT ) volatile DT * ?=?( volatile DT * volatile *, DT * ); |
---|
286 | forall( dtype DT ) volatile DT * ?=?( volatile DT * *, volatile DT * ); |
---|
287 | forall( dtype DT ) volatile DT * ?=?( volatile DT * volatile *, volatile DT * ); |
---|
288 | |
---|
289 | forall( dtype DT ) const volatile DT * ?=?( const volatile DT * *, DT * ); |
---|
290 | forall( dtype DT ) const volatile DT * ?=?( const volatile DT * volatile *, DT * ); |
---|
291 | forall( dtype DT ) const volatile DT * ?=?( const volatile DT * *, const DT * ); |
---|
292 | forall( dtype DT ) const volatile DT * ?=?( const volatile DT * volatile *, const DT * ); |
---|
293 | forall( dtype DT ) const volatile DT * ?=?( const volatile DT * *, volatile DT * ); |
---|
294 | forall( dtype DT ) const volatile DT * ?=?( const volatile DT * volatile *, volatile DT * ); |
---|
295 | forall( dtype DT ) const volatile DT * ?=?( const volatile DT * *, const volatile DT * ); |
---|
296 | forall( dtype DT ) const volatile DT * ?=?( const volatile DT * volatile *, const volatile DT * ); |
---|
297 | |
---|
298 | forall( dtype DT ) DT * ?=?( DT * *, void * ); |
---|
299 | forall( dtype DT ) DT * ?=?( DT * volatile *, void * ); |
---|
300 | forall( dtype DT ) const DT * ?=?( const DT * *, void * ); |
---|
301 | forall( dtype DT ) const DT * ?=?( const DT * volatile *, void * ); |
---|
302 | forall( dtype DT ) const DT * ?=?( const DT * *, const void * ); |
---|
303 | forall( dtype DT ) const DT * ?=?( const DT * volatile *, const void * ); |
---|
304 | forall( dtype DT ) volatile DT * ?=?( volatile DT * *, void * ); |
---|
305 | forall( dtype DT ) volatile DT * ?=?( volatile DT * volatile *, void * ); |
---|
306 | forall( dtype DT ) volatile DT * ?=?( volatile DT * *, volatile void * ); |
---|
307 | forall( dtype DT ) volatile DT * ?=?( volatile DT * volatile *, volatile void * ); |
---|
308 | |
---|
309 | forall( dtype DT ) const volatile DT * ?=?( const volatile DT * *, void * ); |
---|
310 | forall( dtype DT ) const volatile DT * ?=?( const volatile DT * volatile *, void * ); |
---|
311 | forall( dtype DT ) const volatile DT * ?=?( const volatile DT * *, const void * ); |
---|
312 | forall( dtype DT ) const volatile DT * ?=?( const volatile DT * volatile *, const void * ); |
---|
313 | forall( dtype DT ) const volatile DT * ?=?( const volatile DT * *, volatile void * ); |
---|
314 | forall( dtype DT ) const volatile DT * ?=?( const volatile DT * volatile *, volatile void * ); |
---|
315 | forall( dtype DT ) const volatile DT * ?=?( const volatile DT * *, const volatile void * ); |
---|
316 | forall( dtype DT ) const volatile DT * ?=?( const volatile DT * volatile *, const volatile void * ); |
---|
317 | |
---|
318 | forall( dtype DT ) void * ?=?( void * *, DT * ); |
---|
319 | forall( dtype DT ) void * ?=?( void * volatile *, DT * ); |
---|
320 | forall( dtype DT ) const void * ?=?( const void * *, DT * ); |
---|
321 | forall( dtype DT ) const void * ?=?( const void * volatile *, DT * ); |
---|
322 | forall( dtype DT ) const void * ?=?( const void * *, const DT * ); |
---|
323 | forall( dtype DT ) const void * ?=?( const void * volatile *, const DT * ); |
---|
324 | forall( dtype DT ) volatile void * ?=?( volatile void * *, DT * ); |
---|
325 | forall( dtype DT ) volatile void * ?=?( volatile void * volatile *, DT * ); |
---|
326 | forall( dtype DT ) volatile void * ?=?( volatile void * *, volatile DT * ); |
---|
327 | forall( dtype DT ) volatile void * ?=?( volatile void * volatile *, volatile DT * ); |
---|
328 | forall( dtype DT ) const volatile void * ?=?( const volatile void * *, DT * ); |
---|
329 | forall( dtype DT ) const volatile void * ?=?( const volatile void * volatile *, DT * ); |
---|
330 | forall( dtype DT ) const volatile void * ?=?( const volatile void * *, const DT * ); |
---|
331 | forall( dtype DT ) const volatile void * ?=?( const volatile void * volatile *, const DT * ); |
---|
332 | forall( dtype DT ) const volatile void * ?=?( const volatile void * *, volatile DT * ); |
---|
333 | forall( dtype DT ) const volatile void * ?=?( const volatile void * volatile *, volatile DT * ); |
---|
334 | forall( dtype DT ) const volatile void * ?=?( const volatile void * *, const volatile DT * ); |
---|
335 | forall( dtype DT ) const volatile void * ?=?( const volatile void * volatile *, const volatile DT * ); |
---|
336 | |
---|
337 | void * ?=?( void * *, void * ); |
---|
338 | void * ?=?( void * volatile *, void * ); |
---|
339 | const void * ?=?( const void * *, void * ); |
---|
340 | const void * ?=?( const void * volatile *, void * ); |
---|
341 | const void * ?=?( const void * *, const void * ); |
---|
342 | const void * ?=?( const void * volatile *, const void * ); |
---|
343 | volatile void * ?=?( volatile void * *, void * ); |
---|
344 | volatile void * ?=?( volatile void * volatile *, void * ); |
---|
345 | volatile void * ?=?( volatile void * *, volatile void * ); |
---|
346 | volatile void * ?=?( volatile void * volatile *, volatile void * ); |
---|
347 | const volatile void * ?=?( const volatile void * *, void * ); |
---|
348 | const volatile void * ?=?( const volatile void * volatile *, void * ); |
---|
349 | const volatile void * ?=?( const volatile void * *, const void * ); |
---|
350 | const volatile void * ?=?( const volatile void * volatile *, const void * ); |
---|
351 | const volatile void * ?=?( const volatile void * *, volatile void * ); |
---|
352 | const volatile void * ?=?( const volatile void * volatile *, volatile void * ); |
---|
353 | const volatile void * ?=?( const volatile void * *, const volatile void * ); |
---|
354 | const volatile void * ?=?( const volatile void * volatile *, const volatile void * ); |
---|
355 | |
---|
356 | forall( dtype DT ) DT * ?=?( DT * *, forall( dtype DT2 ) const DT2 * ); |
---|
357 | forall( dtype DT ) DT * ?=?( DT * volatile *, forall( dtype DT2 ) const DT2 * ); |
---|
358 | forall( dtype DT ) const DT * ?=?( const DT * *, forall( dtype DT2 ) const DT2 * ); |
---|
359 | forall( dtype DT ) const DT * ?=?( const DT * volatile *, forall( dtype DT2 ) const DT2 * ); |
---|
360 | forall( dtype DT ) volatile DT * ?=?( volatile DT * *, forall( dtype DT2 ) const DT2 * ); |
---|
361 | forall( dtype DT ) volatile DT * ?=?( volatile DT * volatile *, forall( dtype DT2 ) const DT2 * ); |
---|
362 | forall( dtype DT ) const volatile DT * ?=?( const volatile DT * *, forall( dtype DT2 ) const DT2 * ); |
---|
363 | forall( dtype DT ) const volatile DT * ?=?( const volatile DT * volatile *, forall( dtype DT2 ) const DT2 * ); |
---|
364 | |
---|
365 | forall( ftype FT ) FT * ?=?( FT * *, forall( ftype FT2 ) FT2 * ); |
---|
366 | forall( ftype FT ) FT * ?=?( FT * volatile *, forall( ftype FT2 ) FT2 * ); |
---|
367 | |
---|
368 | forall( type T ) T * ?+=?( T * *, ptrdiff_t ); |
---|
369 | forall( type T ) T * ?+=?( T * volatile *, ptrdiff_t ); |
---|
370 | forall( type T ) T * ?-=?( T * *, ptrdiff_t ); |
---|
371 | forall( type T ) T * ?-=?( T * volatile *, ptrdiff_t ); |
---|
372 | forall( type T ) const T * ?+=?( const T * *, ptrdiff_t ); |
---|
373 | forall( type T ) const T * ?+=?( const T * volatile *, ptrdiff_t ); |
---|
374 | forall( type T ) const T * ?-=?( const T * *, ptrdiff_t ); |
---|
375 | forall( type T ) const T * ?-=?( const T * volatile *, ptrdiff_t ); |
---|
376 | forall( type T ) volatile T * ?+=?( volatile T * *, ptrdiff_t ); |
---|
377 | forall( type T ) volatile T * ?+=?( volatile T * volatile *, ptrdiff_t ); |
---|
378 | forall( type T ) volatile T * ?-=?( volatile T * *, ptrdiff_t ); |
---|
379 | forall( type T ) volatile T * ?-=?( volatile T * volatile *, ptrdiff_t ); |
---|
380 | forall( type T ) const volatile T * ?+=?( const volatile T * *, ptrdiff_t ); |
---|
381 | forall( type T ) const volatile T * ?+=?( const volatile T * volatile *, ptrdiff_t ); |
---|
382 | forall( type T ) const volatile T * ?-=?( const volatile T * *, ptrdiff_t ); |
---|
383 | forall( type T ) const volatile T * ?-=?( const volatile T * volatile *, ptrdiff_t ); |
---|
384 | |
---|
385 | _Bool ?=?( _Bool *, _Bool ), |
---|
386 | ?=?( volatile _Bool *, _Bool ); |
---|
387 | char ?=?( char *, char ), |
---|
388 | ?=?( volatile char *, char ); |
---|
389 | signed char ?=?( signed char *, signed char ), |
---|
390 | ?=?( volatile signed char *, signed char ); |
---|
391 | unsigned char ?=?( unsigned char *, unsigned char ), |
---|
392 | ?=?( volatile unsigned char *, unsigned char ); |
---|
393 | short ?=?( short *, short ), |
---|
394 | ?=?( volatile short *, short ); |
---|
395 | unsigned short ?=?( unsigned short *, unsigned short ), |
---|
396 | ?=?( volatile unsigned short *, unsigned short ); |
---|
397 | int ?=?( int *, int ), |
---|
398 | ?=?( volatile int *, int ); |
---|
399 | unsigned ?=?( unsigned *, unsigned ), |
---|
400 | ?=?( volatile unsigned *, unsigned ); |
---|
401 | long ?=?( long *, long ), |
---|
402 | ?=?( volatile long *, long ); |
---|
403 | unsigned long ?=?( unsigned long *, unsigned long ), |
---|
404 | ?=?( volatile unsigned long *, unsigned long ); |
---|
405 | long long ?=?( long long *, long long ), |
---|
406 | ?=?( volatile long long *, long long ); |
---|
407 | unsigned long long ?=?( unsigned long long *, unsigned long long ), |
---|
408 | ?=?( volatile unsigned long long *, unsigned long long ); |
---|
409 | |
---|
410 | _Bool ?*=?( _Bool *, _Bool ), |
---|
411 | ?*=?( volatile _Bool *, _Bool ); |
---|
412 | char ?*=?( char *, char ), |
---|
413 | ?*=?( volatile char *, char ); |
---|
414 | signed char ?*=?( signed char *, signed char ), |
---|
415 | ?*=?( volatile signed char *, signed char ); |
---|
416 | unsigned char ?*=?( unsigned char *, unsigned char ), |
---|
417 | ?*=?( volatile unsigned char *, unsigned char ); |
---|
418 | short ?*=?( short *, short ), |
---|
419 | ?*=?( volatile short *, short ); |
---|
420 | unsigned short ?*=?( unsigned short *, unsigned short ), |
---|
421 | ?*=?( volatile unsigned short *, unsigned short ); |
---|
422 | int ?*=?( int *, int ), |
---|
423 | ?*=?( volatile int *, int ); |
---|
424 | unsigned ?*=?( unsigned *, unsigned ), |
---|
425 | ?*=?( volatile unsigned *, unsigned ); |
---|
426 | long ?*=?( long *, long ), |
---|
427 | ?*=?( volatile long *, long ); |
---|
428 | unsigned long ?*=?( unsigned long *, unsigned long ), |
---|
429 | ?*=?( volatile unsigned long *, unsigned long ); |
---|
430 | long long ?*=?( long long *, long long ), |
---|
431 | ?*=?( volatile long long *, long long ); |
---|
432 | unsigned long long ?*=?( unsigned long long *, unsigned long long ), |
---|
433 | ?*=?( volatile unsigned long long *, unsigned long long ); |
---|
434 | |
---|
435 | _Bool ?/=?( _Bool *, _Bool ), |
---|
436 | ?/=?( volatile _Bool *, _Bool ); |
---|
437 | char ?/=?( char *, char ), |
---|
438 | ?/=?( volatile char *, char ); |
---|
439 | signed char ?/=?( signed char *, signed char ), |
---|
440 | ?/=?( volatile signed char *, signed char ); |
---|
441 | unsigned char ?/=?( unsigned char *, unsigned char ), |
---|
442 | ?/=?( volatile unsigned char *, unsigned char ); |
---|
443 | short ?/=?( short *, short ), |
---|
444 | ?/=?( volatile short *, short ); |
---|
445 | unsigned short ?/=?( unsigned short *, unsigned short ), |
---|
446 | ?/=?( volatile unsigned short *, unsigned short ); |
---|
447 | int ?/=?( int *, int ), |
---|
448 | ?/=?( volatile int *, int ); |
---|
449 | unsigned ?/=?( unsigned *, unsigned ), |
---|
450 | ?/=?( volatile unsigned *, unsigned ); |
---|
451 | long ?/=?( long *, long ), |
---|
452 | ?/=?( volatile long *, long ); |
---|
453 | unsigned long ?/=?( unsigned long *, unsigned long ), |
---|
454 | ?/=?( volatile unsigned long *, unsigned long ); |
---|
455 | long long ?/=?( long long *, long long ), |
---|
456 | ?/=?( volatile long long *, long long ); |
---|
457 | unsigned long long ?/=?( unsigned long long *, unsigned long long ), |
---|
458 | ?/=?( volatile unsigned long long *, unsigned long long ); |
---|
459 | |
---|
460 | _Bool ?%=?( _Bool *, _Bool ), |
---|
461 | ?%=?( volatile _Bool *, _Bool ); |
---|
462 | char ?%=?( char *, char ), |
---|
463 | ?%=?( volatile char *, char ); |
---|
464 | signed char ?%=?( signed char *, signed char ), |
---|
465 | ?%=?( volatile signed char *, signed char ); |
---|
466 | unsigned char ?%=?( unsigned char *, unsigned char ), |
---|
467 | ?%=?( volatile unsigned char *, unsigned char ); |
---|
468 | short ?%=?( short *, short ), |
---|
469 | ?%=?( volatile short *, short ); |
---|
470 | unsigned short ?%=?( unsigned short *, unsigned short ), |
---|
471 | ?%=?( volatile unsigned short *, unsigned short ); |
---|
472 | int ?%=?( int *, int ), |
---|
473 | ?%=?( volatile int *, int ); |
---|
474 | unsigned ?%=?( unsigned *, unsigned ), |
---|
475 | ?%=?( volatile unsigned *, unsigned ); |
---|
476 | long ?%=?( long *, long ), |
---|
477 | ?%=?( volatile long *, long ); |
---|
478 | unsigned long ?%=?( unsigned long *, unsigned long ), |
---|
479 | ?%=?( volatile unsigned long *, unsigned long ); |
---|
480 | long long ?%=?( long long *, long long ), |
---|
481 | ?%=?( volatile long long *, long long ); |
---|
482 | unsigned long long ?%=?( unsigned long long *, unsigned long long ), |
---|
483 | ?%=?( volatile unsigned long long *, unsigned long long ); |
---|
484 | |
---|
485 | _Bool ?+=?( _Bool *, _Bool ), |
---|
486 | ?+=?( volatile _Bool *, _Bool ); |
---|
487 | char ?+=?( char *, char ), |
---|
488 | ?+=?( volatile char *, char ); |
---|
489 | signed char ?+=?( signed char *, signed char ), |
---|
490 | ?+=?( volatile signed char *, signed char ); |
---|
491 | unsigned char ?+=?( unsigned char *, unsigned char ), |
---|
492 | ?+=?( volatile unsigned char *, unsigned char ); |
---|
493 | short ?+=?( short *, short ), |
---|
494 | ?+=?( volatile short *, short ); |
---|
495 | unsigned short ?+=?( unsigned short *, unsigned short ), |
---|
496 | ?+=?( volatile unsigned short *, unsigned short ); |
---|
497 | int ?+=?( int *, int ), |
---|
498 | ?+=?( volatile int *, int ); |
---|
499 | unsigned ?+=?( unsigned *, unsigned ), |
---|
500 | ?+=?( volatile unsigned *, unsigned ); |
---|
501 | long ?+=?( long *, long ), |
---|
502 | ?+=?( volatile long *, long ); |
---|
503 | unsigned long ?+=?( unsigned long *, unsigned long ), |
---|
504 | ?+=?( volatile unsigned long *, unsigned long ); |
---|
505 | long long ?+=?( long long *, long long ), |
---|
506 | ?+=?( volatile long long *, long long ); |
---|
507 | unsigned long long ?+=?( unsigned long long *, unsigned long long ), |
---|
508 | ?+=?( volatile unsigned long long *, unsigned long long ); |
---|
509 | |
---|
510 | _Bool ?-=?( _Bool *, _Bool ), |
---|
511 | ?-=?( volatile _Bool *, _Bool ); |
---|
512 | char ?-=?( char *, char ), |
---|
513 | ?-=?( volatile char *, char ); |
---|
514 | signed char ?-=?( signed char *, signed char ), |
---|
515 | ?-=?( volatile signed char *, signed char ); |
---|
516 | unsigned char ?-=?( unsigned char *, unsigned char ), |
---|
517 | ?-=?( volatile unsigned char *, unsigned char ); |
---|
518 | short ?-=?( short *, short ), |
---|
519 | ?-=?( volatile short *, short ); |
---|
520 | unsigned short ?-=?( unsigned short *, unsigned short ), |
---|
521 | ?-=?( volatile unsigned short *, unsigned short ); |
---|
522 | int ?-=?( int *, int ), |
---|
523 | ?-=?( volatile int *, int ); |
---|
524 | unsigned ?-=?( unsigned *, unsigned ), |
---|
525 | ?-=?( volatile unsigned *, unsigned ); |
---|
526 | long ?-=?( long *, long ), |
---|
527 | ?-=?( volatile long *, long ); |
---|
528 | unsigned long ?-=?( unsigned long *, unsigned long ), |
---|
529 | ?-=?( volatile unsigned long *, unsigned long ); |
---|
530 | long long ?-=?( long long *, long long ), |
---|
531 | ?-=?( volatile long long *, long long ); |
---|
532 | unsigned long long ?-=?( unsigned long long *, unsigned long long ), |
---|
533 | ?-=?( volatile unsigned long long *, unsigned long long ); |
---|
534 | |
---|
535 | _Bool ?<<=?( _Bool *, _Bool ), |
---|
536 | ?<<=?( volatile _Bool *, _Bool ); |
---|
537 | char ?<<=?( char *, char ), |
---|
538 | ?<<=?( volatile char *, char ); |
---|
539 | signed char ?<<=?( signed char *, signed char ), |
---|
540 | ?<<=?( volatile signed char *, signed char ); |
---|
541 | unsigned char ?<<=?( unsigned char *, unsigned char ), |
---|
542 | ?<<=?( volatile unsigned char *, unsigned char ); |
---|
543 | short ?<<=?( short *, short ), |
---|
544 | ?<<=?( volatile short *, short ); |
---|
545 | unsigned short ?<<=?( unsigned short *, unsigned short ), |
---|
546 | ?<<=?( volatile unsigned short *, unsigned short ); |
---|
547 | int ?<<=?( int *, int ), |
---|
548 | ?<<=?( volatile int *, int ); |
---|
549 | unsigned ?<<=?( unsigned *, unsigned ), |
---|
550 | ?<<=?( volatile unsigned *, unsigned ); |
---|
551 | long ?<<=?( long *, long ), |
---|
552 | ?<<=?( volatile long *, long ); |
---|
553 | unsigned long ?<<=?( unsigned long *, unsigned long ), |
---|
554 | ?<<=?( volatile unsigned long *, unsigned long ); |
---|
555 | long long ?<<=?( long long *, long long ), |
---|
556 | ?<<=?( volatile long long *, long long ); |
---|
557 | unsigned long long ?<<=?( unsigned long long *, unsigned long long ), |
---|
558 | ?<<=?( volatile unsigned long long *, unsigned long long ); |
---|
559 | |
---|
560 | _Bool ?>>=?( _Bool *, _Bool ), |
---|
561 | ?>>=?( volatile _Bool *, _Bool ); |
---|
562 | char ?>>=?( char *, char ), |
---|
563 | ?>>=?( volatile char *, char ); |
---|
564 | signed char ?>>=?( signed char *, signed char ), |
---|
565 | ?>>=?( volatile signed char *, signed char ); |
---|
566 | unsigned char ?>>=?( unsigned char *, unsigned char ), |
---|
567 | ?>>=?( volatile unsigned char *, unsigned char ); |
---|
568 | short ?>>=?( short *, short ), |
---|
569 | ?>>=?( volatile short *, short ); |
---|
570 | unsigned short ?>>=?( unsigned short *, unsigned short ), |
---|
571 | ?>>=?( volatile unsigned short *, unsigned short ); |
---|
572 | int ?>>=?( int *, int ), |
---|
573 | ?>>=?( volatile int *, int ); |
---|
574 | unsigned ?>>=?( unsigned *, unsigned ), |
---|
575 | ?>>=?( volatile unsigned *, unsigned ); |
---|
576 | long ?>>=?( long *, long ), |
---|
577 | ?>>=?( volatile long *, long ); |
---|
578 | unsigned long ?>>=?( unsigned long *, unsigned long ), |
---|
579 | ?>>=?( volatile unsigned long *, unsigned long ); |
---|
580 | long long ?>>=?( long long *, long long ), |
---|
581 | ?>>=?( volatile long long *, long long ); |
---|
582 | unsigned long long ?>>=?( unsigned long long *, unsigned long long ), |
---|
583 | ?>>=?( volatile unsigned long long *, unsigned long long ); |
---|
584 | |
---|
585 | _Bool ?&=?( _Bool *, _Bool ), |
---|
586 | ?&=?( volatile _Bool *, _Bool ); |
---|
587 | char ?&=?( char *, char ), |
---|
588 | ?&=?( volatile char *, char ); |
---|
589 | signed char ?&=?( signed char *, signed char ), |
---|
590 | ?&=?( volatile signed char *, signed char ); |
---|
591 | unsigned char ?&=?( unsigned char *, unsigned char ), |
---|
592 | ?&=?( volatile unsigned char *, unsigned char ); |
---|
593 | short ?&=?( short *, short ), |
---|
594 | ?&=?( volatile short *, short ); |
---|
595 | unsigned short ?&=?( unsigned short *, unsigned short ), |
---|
596 | ?&=?( volatile unsigned short *, unsigned short ); |
---|
597 | int ?&=?( int *, int ), |
---|
598 | ?&=?( volatile int *, int ); |
---|
599 | unsigned ?&=?( unsigned *, unsigned ), |
---|
600 | ?&=?( volatile unsigned *, unsigned ); |
---|
601 | long ?&=?( long *, long ), |
---|
602 | ?&=?( volatile long *, long ); |
---|
603 | unsigned long ?&=?( unsigned long *, unsigned long ), |
---|
604 | ?&=?( volatile unsigned long *, unsigned long ); |
---|
605 | long long ?&=?( long long *, long long ), |
---|
606 | ?&=?( volatile long long *, long long ); |
---|
607 | unsigned long long ?&=?( unsigned long long *, unsigned long long ), |
---|
608 | ?&=?( volatile unsigned long long *, unsigned long long ); |
---|
609 | |
---|
610 | _Bool ?|=?( _Bool *, _Bool ), |
---|
611 | ?|=?( volatile _Bool *, _Bool ); |
---|
612 | char ?|=?( char *, char ), |
---|
613 | ?|=?( volatile char *, char ); |
---|
614 | signed char ?|=?( signed char *, signed char ), |
---|
615 | ?|=?( volatile signed char *, signed char ); |
---|
616 | unsigned char ?|=?( unsigned char *, unsigned char ), |
---|
617 | ?|=?( volatile unsigned char *, unsigned char ); |
---|
618 | short ?|=?( short *, short ), |
---|
619 | ?|=?( volatile short *, short ); |
---|
620 | unsigned short ?|=?( unsigned short *, unsigned short ), |
---|
621 | ?|=?( volatile unsigned short *, unsigned short ); |
---|
622 | int ?|=?( int *, int ), |
---|
623 | ?|=?( volatile int *, int ); |
---|
624 | unsigned ?|=?( unsigned *, unsigned ), |
---|
625 | ?|=?( volatile unsigned *, unsigned ); |
---|
626 | long ?|=?( long *, long ), |
---|
627 | ?|=?( volatile long *, long ); |
---|
628 | unsigned long ?|=?( unsigned long *, unsigned long ), |
---|
629 | ?|=?( volatile unsigned long *, unsigned long ); |
---|
630 | long long ?|=?( long long *, long long ), |
---|
631 | ?|=?( volatile long long *, long long ); |
---|
632 | unsigned long long ?|=?( unsigned long long *, unsigned long long ), |
---|
633 | ?|=?( volatile unsigned long long *, unsigned long long ); |
---|
634 | |
---|
635 | _Bool ?^=?( _Bool *, _Bool ), |
---|
636 | ?^=?( volatile _Bool *, _Bool ); |
---|
637 | char ?^=?( char *, char ), |
---|
638 | ?^=?( volatile char *, char ); |
---|
639 | signed char ?^=?( signed char *, signed char ), |
---|
640 | ?^=?( volatile signed char *, signed char ); |
---|
641 | unsigned char ?^=?( unsigned char *, unsigned char ), |
---|
642 | ?^=?( volatile unsigned char *, unsigned char ); |
---|
643 | short ?^=?( short *, short ), |
---|
644 | ?^=?( volatile short *, short ); |
---|
645 | unsigned short ?^=?( unsigned short *, unsigned short ), |
---|
646 | ?^=?( volatile unsigned short *, unsigned short ); |
---|
647 | int ?^=?( int *, int ), |
---|
648 | ?^=?( volatile int *, int ); |
---|
649 | unsigned ?^=?( unsigned *, unsigned ), |
---|
650 | ?^=?( volatile unsigned *, unsigned ); |
---|
651 | long ?^=?( long *, long ), |
---|
652 | ?^=?( volatile long *, long ); |
---|
653 | unsigned long ?^=?( unsigned long *, unsigned long ), |
---|
654 | ?^=?( volatile unsigned long *, unsigned long ); |
---|
655 | long long ?^=?( long long *, long long ), |
---|
656 | ?^=?( volatile long long *, long long ); |
---|
657 | unsigned long long ?^=?( unsigned long long *, unsigned long long ), |
---|
658 | ?^=?( volatile unsigned long long *, unsigned long long ); |
---|
659 | |
---|
660 | |
---|
661 | float ?=?( float *, float ), |
---|
662 | ?=?( volatile float *, float ), |
---|
663 | ?*=?( float *, float ), |
---|
664 | ?*=?( volatile float *, float ), |
---|
665 | ?/=?( float *, float ), |
---|
666 | ?/=?( volatile float *, float ), |
---|
667 | ?+=?( float *, float ), |
---|
668 | ?+=?( volatile float *, float ), |
---|
669 | ?-=?( float *, float ), |
---|
670 | ?-=?( volatile float *, float ); |
---|
671 | |
---|
672 | double ?=?( double *, double ), |
---|
673 | ?=?( volatile double *, double ), |
---|
674 | ?*=?( double *, double ), |
---|
675 | ?*=?( volatile double *, double ), |
---|
676 | ?/=?( double *, double ), |
---|
677 | ?/=?( volatile double *, double ), |
---|
678 | ?+=?( double *, double ), |
---|
679 | ?+=?( volatile double *, double ), |
---|
680 | ?-=?( double *, double ), |
---|
681 | ?-=?( volatile double *, double ); |
---|
682 | |
---|
683 | long double ?=?( long double *, long double ), |
---|
684 | ?=?( volatile long double *, long double ), |
---|
685 | ?*=?( long double *, long double ), |
---|
686 | ?*=?( volatile long double *, long double ), |
---|
687 | ?/=?( long double *, long double ), |
---|
688 | ?/=?( volatile long double *, long double ), |
---|
689 | ?+=?( long double *, long double ), |
---|
690 | ?+=?( volatile long double *, long double ), |
---|
691 | ?-=?( long double *, long double ), |
---|
692 | ?-=?( volatile long double *, long double ); |
---|