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