|
|
1.1 root 1: /* The Plum Hall Validation Suite for C
2: * Unpublished copyright (c) 1986-1991, Chiron Systems Inc and Plum Hall Inc.
3: * VERSION: 4
4: * DATE: 1993-01-01
5: * The "ANSI" mode of the Suite corresponds to the official ANSI C, X3.159-1989.
6: * As per your license agreement, your distribution is not to be moved or copied outside the Designated Site
7: * without specific permission from Plum Hall Inc.
8: */
9:
10: #define ANSI 1 /* This file follows ANSI arithmetic rules, which may not work in non-ANSI modes */
11: #include "types.h"
12: int main()
13: {
14: extern char *Filename;
15: auto CHAR Ac = 7;
16: #if ANSI
17: auto SCHAR Asc = 8;
18: #endif
19: auto SHORT As = 9;
20: auto INT Ai = 10;
21: auto UCHAR Auc = 11;
22: auto USHORT Aus = 12;
23: auto UINT Aui = 13;
24: auto LONG Al = 14;
25: auto ULONG Aul = 15;
26: auto FLOAT Af = 16;
27: auto DOUBLE Ad = 17;
28: #if ANSI
29: auto LDOUBLE Ald = 18;
30: #endif
31: {
32: typedef union {
33: CHAR c;
34: SHORT s;
35: INT i;
36: UCHAR uc;
37: USHORT us;
38: UINT ui;
39: LONG l;
40: ULONG ul;
41: FLOAT f;
42: DOUBLE d;
43: #if ANSI
44: SCHAR sc;
45: LDOUBLE ld;
46: #endif
47: } D;
48: auto D D1;
49: #if ANSI
50: auto D D2;
51: #endif
52: auto D D3;
53: auto D D4;
54: auto D D5;
55: auto D D6;
56: auto D D7;
57: auto D D8;
58: auto D D9;
59: auto D D10;
60: auto D D11;
61: #if ANSI
62: auto D D12;
63: #endif
64: D1.c = 7;
65: #if ANSI
66: D2.sc = 8;
67: #endif
68: D3.s = 9;
69: D4.i = 10;
70: D5.uc = 11;
71: D6.us = 12;
72: D7.ui = 13;
73: D8.l = 14;
74: D9.ul = 15;
75: D10.f = 16;
76: D11.d = 17;
77: #if ANSI
78: D12.ld = 18;
79: #endif
80: {
81: int true = 1, false = 0;
82: Filename = " auto scalar auto union timeq4 ";
83: #if ANSI
84: D12.ld = 18; Aul = 15;
85: D12.ld *= Aul;
86: ldequals(__LINE__, D12.ld, (LDOUBLE)270.L);
87: D12.ld = 18;
88: ldequals(__LINE__, D12.ld *= Aul, (LDOUBLE)270.L);
89: #endif
90: Af = 16; D1.c = 7;
91: Af *= D1.c;
92: dequals(__LINE__, Af, (FLOAT)112.);
93: Af = 16;
94: dequals(__LINE__, Af *= D1.c, (FLOAT)112.);
95: D1.c = 7; Af = 16;
96: D1.c *= Af;
97: iequals(__LINE__, D1.c, (CHAR)112);
98: D1.c = 7;
99: iequals(__LINE__, D1.c *= Af, (CHAR)112);
100: #if ANSI
101: Af = 15; D2.sc = 8;
102: Af *= D2.sc;
103: dequals(__LINE__, Af, (FLOAT)120.);
104: Af = 15;
105: dequals(__LINE__, Af *= D2.sc, (FLOAT)120.);
106: D2.sc = 8; Af = 15;
107: D2.sc *= Af;
108: iequals(__LINE__, D2.sc, (SCHAR)120);
109: D2.sc = 8;
110: iequals(__LINE__, D2.sc *= Af, (SCHAR)120);
111: #endif
112: Af = 16; D3.s = 9;
113: Af *= D3.s;
114: dequals(__LINE__, Af, (FLOAT)144.);
115: Af = 16;
116: dequals(__LINE__, Af *= D3.s, (FLOAT)144.);
117: D3.s = 9; Af = 16;
118: D3.s *= Af;
119: iequals(__LINE__, D3.s, (SHORT)144);
120: D3.s = 9;
121: iequals(__LINE__, D3.s *= Af, (SHORT)144);
122: Af = 16; D4.i = 10;
123: Af *= D4.i;
124: dequals(__LINE__, Af, (FLOAT)160.);
125: Af = 16;
126: dequals(__LINE__, Af *= D4.i, (FLOAT)160.);
127: D4.i = 10; Af = 16;
128: D4.i *= Af;
129: iequals(__LINE__, D4.i, (INT)160);
130: D4.i = 10;
131: iequals(__LINE__, D4.i *= Af, (INT)160);
132: Af = 16; D5.uc = 11;
133: Af *= D5.uc;
134: dequals(__LINE__, Af, (FLOAT)176.);
135: Af = 16;
136: dequals(__LINE__, Af *= D5.uc, (FLOAT)176.);
137: D5.uc = 11; Af = 16;
138: D5.uc *= Af;
139: iequals(__LINE__, D5.uc, (UCHAR)176);
140: D5.uc = 11;
141: iequals(__LINE__, D5.uc *= Af, (UCHAR)176);
142: Af = 16; D6.us = 12;
143: Af *= D6.us;
144: dequals(__LINE__, Af, (FLOAT)192.);
145: Af = 16;
146: dequals(__LINE__, Af *= D6.us, (FLOAT)192.);
147: D6.us = 12; Af = 16;
148: D6.us *= Af;
149: iequals(__LINE__, D6.us, (USHORT)192);
150: D6.us = 12;
151: iequals(__LINE__, D6.us *= Af, (USHORT)192);
152: Af = 16; D7.ui = 13;
153: Af *= D7.ui;
154: dequals(__LINE__, Af, (FLOAT)208.);
155: Af = 16;
156: dequals(__LINE__, Af *= D7.ui, (FLOAT)208.);
157: D7.ui = 13; Af = 16;
158: D7.ui *= Af;
159: iequals(__LINE__, D7.ui, (UINT)208);
160: D7.ui = 13;
161: iequals(__LINE__, D7.ui *= Af, (UINT)208);
162: Af = 16; D8.l = 14;
163: Af *= D8.l;
164: dequals(__LINE__, Af, (FLOAT)224.);
165: Af = 16;
166: dequals(__LINE__, Af *= D8.l, (FLOAT)224.);
167: D8.l = 14; Af = 16;
168: D8.l *= Af;
169: lequals(__LINE__, D8.l, (LONG)224L);
170: D8.l = 14;
171: lequals(__LINE__, D8.l *= Af, (LONG)224L);
172: Af = 16; D9.ul = 15;
173: Af *= D9.ul;
174: dequals(__LINE__, Af, (FLOAT)240.);
175: Af = 16;
176: dequals(__LINE__, Af *= D9.ul, (FLOAT)240.);
177: D9.ul = 15; Af = 16;
178: D9.ul *= Af;
179: lequals(__LINE__, D9.ul, (ULONG)240L);
180: D9.ul = 15;
181: lequals(__LINE__, D9.ul *= Af, (ULONG)240L);
182: Af = 16; D10.f = 16;
183: Af *= D10.f;
184: dequals(__LINE__, Af, (FLOAT)256.);
185: Af = 16;
186: dequals(__LINE__, Af *= D10.f, (FLOAT)256.);
187: D10.f = 16; Af = 16;
188: D10.f *= Af;
189: dequals(__LINE__, D10.f, (FLOAT)256.);
190: D10.f = 16;
191: dequals(__LINE__, D10.f *= Af, (FLOAT)256.);
192: Af = 16; D11.d = 17;
193: Af *= D11.d;
194: dequals(__LINE__, Af, (FLOAT)272.);
195: Af = 16;
196: dequals(__LINE__, Af *= D11.d, (FLOAT)272.);
197: D11.d = 17; Af = 16;
198: D11.d *= Af;
199: dequals(__LINE__, D11.d, (DOUBLE)272.);
200: D11.d = 17;
201: dequals(__LINE__, D11.d *= Af, (DOUBLE)272.);
202: #if ANSI
203: Af = 16; D12.ld = 18;
204: Af *= D12.ld;
205: dequals(__LINE__, Af, (FLOAT)288.);
206: Af = 16;
207: dequals(__LINE__, Af *= D12.ld, (FLOAT)288.);
208: D12.ld = 18; Af = 16;
209: D12.ld *= Af;
210: ldequals(__LINE__, D12.ld, (LDOUBLE)288.L);
211: D12.ld = 18;
212: ldequals(__LINE__, D12.ld *= Af, (LDOUBLE)288.L);
213: #endif
214: Ad = 17; D1.c = 7;
215: Ad *= D1.c;
216: dequals(__LINE__, Ad, (DOUBLE)119.);
217: Ad = 17;
218: dequals(__LINE__, Ad *= D1.c, (DOUBLE)119.);
219: D1.c = 7; Ad = 17;
220: D1.c *= Ad;
221: iequals(__LINE__, D1.c, (CHAR)119);
222: D1.c = 7;
223: iequals(__LINE__, D1.c *= Ad, (CHAR)119);
224: #if ANSI
225: Ad = 15; D2.sc = 8;
226: Ad *= D2.sc;
227: dequals(__LINE__, Ad, (DOUBLE)120.);
228: Ad = 15;
229: dequals(__LINE__, Ad *= D2.sc, (DOUBLE)120.);
230: D2.sc = 8; Ad = 15;
231: D2.sc *= Ad;
232: iequals(__LINE__, D2.sc, (SCHAR)120);
233: D2.sc = 8;
234: iequals(__LINE__, D2.sc *= Ad, (SCHAR)120);
235: #endif
236: Ad = 17; D3.s = 9;
237: Ad *= D3.s;
238: dequals(__LINE__, Ad, (DOUBLE)153.);
239: Ad = 17;
240: dequals(__LINE__, Ad *= D3.s, (DOUBLE)153.);
241: D3.s = 9; Ad = 17;
242: D3.s *= Ad;
243: iequals(__LINE__, D3.s, (SHORT)153);
244: D3.s = 9;
245: iequals(__LINE__, D3.s *= Ad, (SHORT)153);
246: Ad = 17; D4.i = 10;
247: Ad *= D4.i;
248: dequals(__LINE__, Ad, (DOUBLE)170.);
249: Ad = 17;
250: dequals(__LINE__, Ad *= D4.i, (DOUBLE)170.);
251: D4.i = 10; Ad = 17;
252: D4.i *= Ad;
253: iequals(__LINE__, D4.i, (INT)170);
254: D4.i = 10;
255: iequals(__LINE__, D4.i *= Ad, (INT)170);
256: Ad = 17; D5.uc = 11;
257: Ad *= D5.uc;
258: dequals(__LINE__, Ad, (DOUBLE)187.);
259: Ad = 17;
260: dequals(__LINE__, Ad *= D5.uc, (DOUBLE)187.);
261: D5.uc = 11; Ad = 17;
262: D5.uc *= Ad;
263: iequals(__LINE__, D5.uc, (UCHAR)187);
264: D5.uc = 11;
265: iequals(__LINE__, D5.uc *= Ad, (UCHAR)187);
266: Ad = 17; D6.us = 12;
267: Ad *= D6.us;
268: dequals(__LINE__, Ad, (DOUBLE)204.);
269: Ad = 17;
270: dequals(__LINE__, Ad *= D6.us, (DOUBLE)204.);
271: D6.us = 12; Ad = 17;
272: D6.us *= Ad;
273: iequals(__LINE__, D6.us, (USHORT)204);
274: D6.us = 12;
275: iequals(__LINE__, D6.us *= Ad, (USHORT)204);
276: Ad = 17; D7.ui = 13;
277: Ad *= D7.ui;
278: dequals(__LINE__, Ad, (DOUBLE)221.);
279: Ad = 17;
280: dequals(__LINE__, Ad *= D7.ui, (DOUBLE)221.);
281: D7.ui = 13; Ad = 17;
282: D7.ui *= Ad;
283: iequals(__LINE__, D7.ui, (UINT)221);
284: D7.ui = 13;
285: iequals(__LINE__, D7.ui *= Ad, (UINT)221);
286: Ad = 17; D8.l = 14;
287: Ad *= D8.l;
288: dequals(__LINE__, Ad, (DOUBLE)238.);
289: Ad = 17;
290: dequals(__LINE__, Ad *= D8.l, (DOUBLE)238.);
291: D8.l = 14; Ad = 17;
292: D8.l *= Ad;
293: lequals(__LINE__, D8.l, (LONG)238L);
294: D8.l = 14;
295: lequals(__LINE__, D8.l *= Ad, (LONG)238L);
296: Ad = 17; D9.ul = 15;
297: Ad *= D9.ul;
298: dequals(__LINE__, Ad, (DOUBLE)255.);
299: Ad = 17;
300: dequals(__LINE__, Ad *= D9.ul, (DOUBLE)255.);
301: D9.ul = 15; Ad = 17;
302: D9.ul *= Ad;
303: lequals(__LINE__, D9.ul, (ULONG)255L);
304: D9.ul = 15;
305: lequals(__LINE__, D9.ul *= Ad, (ULONG)255L);
306: Ad = 17; D10.f = 16;
307: Ad *= D10.f;
308: dequals(__LINE__, Ad, (DOUBLE)272.);
309: Ad = 17;
310: dequals(__LINE__, Ad *= D10.f, (DOUBLE)272.);
311: D10.f = 16; Ad = 17;
312: D10.f *= Ad;
313: dequals(__LINE__, D10.f, (FLOAT)272.);
314: D10.f = 16;
315: dequals(__LINE__, D10.f *= Ad, (FLOAT)272.);
316: Ad = 17; D11.d = 17;
317: Ad *= D11.d;
318: dequals(__LINE__, Ad, (DOUBLE)289.);
319: Ad = 17;
320: dequals(__LINE__, Ad *= D11.d, (DOUBLE)289.);
321: D11.d = 17; Ad = 17;
322: D11.d *= Ad;
323: dequals(__LINE__, D11.d, (DOUBLE)289.);
324: D11.d = 17;
325: dequals(__LINE__, D11.d *= Ad, (DOUBLE)289.);
326: #if ANSI
327: Ad = 17; D12.ld = 18;
328: Ad *= D12.ld;
329: dequals(__LINE__, Ad, (DOUBLE)306.);
330: Ad = 17;
331: dequals(__LINE__, Ad *= D12.ld, (DOUBLE)306.);
332: D12.ld = 18; Ad = 17;
333: D12.ld *= Ad;
334: ldequals(__LINE__, D12.ld, (LDOUBLE)306.L);
335: D12.ld = 18;
336: ldequals(__LINE__, D12.ld *= Ad, (LDOUBLE)306.L);
337: #endif
338: #if ANSI
339: Ald = 18; D1.c = 7;
340: Ald *= D1.c;
341: ldequals(__LINE__, Ald, (LDOUBLE)126.L);
342: Ald = 18;
343: ldequals(__LINE__, Ald *= D1.c, (LDOUBLE)126.L);
344: D1.c = 7; Ald = 18;
345: D1.c *= Ald;
346: iequals(__LINE__, D1.c, (CHAR)126);
347: D1.c = 7;
348: iequals(__LINE__, D1.c *= Ald, (CHAR)126);
349: #endif
350: #if ANSI
351: Ald = 15; D2.sc = 8;
352: Ald *= D2.sc;
353: ldequals(__LINE__, Ald, (LDOUBLE)120.L);
354: Ald = 15;
355: ldequals(__LINE__, Ald *= D2.sc, (LDOUBLE)120.L);
356: D2.sc = 8; Ald = 15;
357: D2.sc *= Ald;
358: iequals(__LINE__, D2.sc, (SCHAR)120);
359: D2.sc = 8;
360: iequals(__LINE__, D2.sc *= Ald, (SCHAR)120);
361: #endif
362: #if ANSI
363: Ald = 18; D3.s = 9;
364: Ald *= D3.s;
365: ldequals(__LINE__, Ald, (LDOUBLE)162.L);
366: Ald = 18;
367: ldequals(__LINE__, Ald *= D3.s, (LDOUBLE)162.L);
368: D3.s = 9; Ald = 18;
369: D3.s *= Ald;
370: iequals(__LINE__, D3.s, (SHORT)162);
371: D3.s = 9;
372: iequals(__LINE__, D3.s *= Ald, (SHORT)162);
373: #endif
374: #if ANSI
375: Ald = 18; D4.i = 10;
376: Ald *= D4.i;
377: ldequals(__LINE__, Ald, (LDOUBLE)180.L);
378: Ald = 18;
379: ldequals(__LINE__, Ald *= D4.i, (LDOUBLE)180.L);
380: D4.i = 10; Ald = 18;
381: D4.i *= Ald;
382: iequals(__LINE__, D4.i, (INT)180);
383: D4.i = 10;
384: iequals(__LINE__, D4.i *= Ald, (INT)180);
385: #endif
386: #if ANSI
387: Ald = 18; D5.uc = 11;
388: Ald *= D5.uc;
389: ldequals(__LINE__, Ald, (LDOUBLE)198.L);
390: Ald = 18;
391: ldequals(__LINE__, Ald *= D5.uc, (LDOUBLE)198.L);
392: D5.uc = 11; Ald = 18;
393: D5.uc *= Ald;
394: iequals(__LINE__, D5.uc, (UCHAR)198);
395: D5.uc = 11;
396: iequals(__LINE__, D5.uc *= Ald, (UCHAR)198);
397: #endif
398: #if ANSI
399: Ald = 18; D6.us = 12;
400: Ald *= D6.us;
401: ldequals(__LINE__, Ald, (LDOUBLE)216.L);
402: Ald = 18;
403: ldequals(__LINE__, Ald *= D6.us, (LDOUBLE)216.L);
404: D6.us = 12; Ald = 18;
405: D6.us *= Ald;
406: iequals(__LINE__, D6.us, (USHORT)216);
407: D6.us = 12;
408: iequals(__LINE__, D6.us *= Ald, (USHORT)216);
409: #endif
410: #if ANSI
411: Ald = 18; D7.ui = 13;
412: Ald *= D7.ui;
413: ldequals(__LINE__, Ald, (LDOUBLE)234.L);
414: Ald = 18;
415: ldequals(__LINE__, Ald *= D7.ui, (LDOUBLE)234.L);
416: D7.ui = 13; Ald = 18;
417: D7.ui *= Ald;
418: iequals(__LINE__, D7.ui, (UINT)234);
419: D7.ui = 13;
420: iequals(__LINE__, D7.ui *= Ald, (UINT)234);
421: #endif
422: #if ANSI
423: Ald = 18; D8.l = 14;
424: Ald *= D8.l;
425: ldequals(__LINE__, Ald, (LDOUBLE)252.L);
426: Ald = 18;
427: ldequals(__LINE__, Ald *= D8.l, (LDOUBLE)252.L);
428: D8.l = 14; Ald = 18;
429: D8.l *= Ald;
430: lequals(__LINE__, D8.l, (LONG)252L);
431: D8.l = 14;
432: lequals(__LINE__, D8.l *= Ald, (LONG)252L);
433: #endif
434: #if ANSI
435: Ald = 18; D9.ul = 15;
436: Ald *= D9.ul;
437: ldequals(__LINE__, Ald, (LDOUBLE)270.L);
438: Ald = 18;
439: ldequals(__LINE__, Ald *= D9.ul, (LDOUBLE)270.L);
440: D9.ul = 15; Ald = 18;
441: D9.ul *= Ald;
442: lequals(__LINE__, D9.ul, (ULONG)270L);
443: D9.ul = 15;
444: lequals(__LINE__, D9.ul *= Ald, (ULONG)270L);
445: #endif
446: #if ANSI
447: Ald = 18; D10.f = 16;
448: Ald *= D10.f;
449: ldequals(__LINE__, Ald, (LDOUBLE)288.L);
450: Ald = 18;
451: ldequals(__LINE__, Ald *= D10.f, (LDOUBLE)288.L);
452: D10.f = 16; Ald = 18;
453: D10.f *= Ald;
454: dequals(__LINE__, D10.f, (FLOAT)288.);
455: D10.f = 16;
456: dequals(__LINE__, D10.f *= Ald, (FLOAT)288.);
457: #endif
458: #if ANSI
459: Ald = 18; D11.d = 17;
460: Ald *= D11.d;
461: ldequals(__LINE__, Ald, (LDOUBLE)306.L);
462: Ald = 18;
463: ldequals(__LINE__, Ald *= D11.d, (LDOUBLE)306.L);
464: D11.d = 17; Ald = 18;
465: D11.d *= Ald;
466: dequals(__LINE__, D11.d, (DOUBLE)306.);
467: D11.d = 17;
468: dequals(__LINE__, D11.d *= Ald, (DOUBLE)306.);
469: #endif
470: #if ANSI
471: Ald = 18; D12.ld = 18;
472: Ald *= D12.ld;
473: ldequals(__LINE__, Ald, (LDOUBLE)324.L);
474: Ald = 18;
475: ldequals(__LINE__, Ald *= D12.ld, (LDOUBLE)324.L);
476: D12.ld = 18; Ald = 18;
477: D12.ld *= Ald;
478: ldequals(__LINE__, D12.ld, (LDOUBLE)324.L);
479: D12.ld = 18;
480: ldequals(__LINE__, D12.ld *= Ald, (LDOUBLE)324.L);
481: #endif
482: }}
483: return report(Filename);
484: }
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.