|
|
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: /****************************************************************************
11: ** Self-checking C source code generated by EGEN component of **
12: ** The Plum Hall Validation Suite for C. **
13: ** (C) 1986-1988 Chiron Systems Inc and Plum Hall Inc **
14: ** EGEN Version 1.09.000 88/08/21 **
15: ** **
16: ** EGEN -P -R8 -V -A -N5 -Dmixed.gen ( @ @ ) @ ( @ @ ) **
17: ****************************************************************************/
18: #include "defs.h"
19:
20:
21: int main()
22: {
23: extern char *Filename;
24: static float f1;
25: auto float * pf1;
26: static long stlong1;
27: static float f2;
28: auto float * pf2;
29: static long stlong2;
30: static float f3;
31: static float * pf3;
32: auto long stlong3;
33: static float f4;
34: static float * pf4;
35: static long stlong4;
36: static double d1;
37: auto double * pd1;
38: static long stlong5;
39: static double d2;
40: static double * pd2;
41: static long stlong6;
42: auto double d3;
43: static double * pd3;
44: static long stlong7;
45: static double d4;
46: static double * pd4;
47: auto long stlong8;
48:
49: f1 = fvalue(1.100000E+000);
50: pf1 = &f1;
51: stlong1 = lvalue(1L);
52: f2 = fvalue(2.200000E+000);
53: pf2 = &f2;
54: stlong2 = lvalue(2L);
55: f3 = fvalue(3.300000E+000);
56: pf3 = &f3;
57: stlong3 = lvalue(3L);
58: f4 = fvalue(4.400000E+000);
59: pf4 = &f4;
60: stlong4 = lvalue(4L);
61: d1 = dvalue(1.100000000000000E+000);
62: pd1 = &d1;
63: stlong5 = lvalue(5L);
64: d2 = dvalue(2.200000000000000E+000);
65: pd2 = &d2;
66: stlong6 = lvalue(6L);
67: d3 = dvalue(3.300000000000000E+000);
68: pd3 = &d3;
69: stlong7 = lvalue(7L);
70: d4 = dvalue(4.400000000000000E+000);
71: pd4 = &d4;
72: stlong8 = lvalue(8L);
73: Filename = "mix8.c";
74:
75: /* 1L + 4L => 5L */
76: /* 2L /= 5L => 0L */
77: /* 3L &= 6L => 2L */
78: /* 8L /= 2L => 4L */
79: /* 0L % 4L => 0L */
80: lequals(__LINE__, ((stlong2 /= (stlong1 + stlong4)) % (stlong8 /= (stlong3 &= stlong6))), 0L);
81: lequals(__LINE__, stlong3, 2L);
82: lequals(__LINE__, stlong8, 4L);
83: lequals(__LINE__, stlong2, 0L);
84:
85: /* 0L + 2L => 2L */
86: /* 7L %= 2L => 1L */
87: /* 4L /= 1L => 4L */
88: /* 4L >>= 4L => 0L */
89: /* 1L < 0L => 0 */
90: iequals(__LINE__, ((stlong7 %= (stlong2 + stlong3)) < (stlong4 >>= (stlong8 /= stlong1))), 0);
91: lequals(__LINE__, stlong8, 4L);
92: lequals(__LINE__, stlong4, 0L);
93: lequals(__LINE__, stlong7, 1L);
94:
95: /* 1.10000000000000E+000 * 1.10000000000000E+000 => 1.21000000000000E+000 */
96: /* 1.21000000000000E+000 + 0L => 1.21000000000000E+000 */
97: /* 2.20000E+000 /= 6L => 3.66667E-001 */
98: /* 4.40000E+000 += 3.66667E-001 => 4.76667E+000 */
99: /* 1.21000E+000 - 4.76667E+000 => -3.55667E+000 */
100: fequals(__LINE__, (((d1 * d1) + stlong2) - (*pd4 += (*pf2 /= stlong6))), -3.556666666666666666666666667E+000);
101: fequals(__LINE__, f2, 3.66666666666666666666666667E-001);
102: fequals(__LINE__, d4, 4.76666666666666666666666667E+000);
103:
104: /* neg 1L => -1L */
105: /* 1L | -1L => -1L */
106: /* 6L &= 2L => 2L */
107: /* 4L <<= 2L => 16L */
108: /* -1L * 16L => -16L */
109: lequals(__LINE__, ((stlong7 | ( - stlong1)) * (stlong8 <<= (stlong6 &= stlong3))), -16L);
110: lequals(__LINE__, stlong6, 2L);
111: lequals(__LINE__, stlong8, 16L);
112:
113: /* 5L >>= 2L => 1L */
114: /* 0L >>= 1L => 0L */
115: /* 0L + 1 => 1L */
116: lequals(__LINE__, ((stlong4 >>= (stlong5 >>= stlong6)) + (d1 || ( ! f3))), 1L);
117: lequals(__LINE__, stlong5, 1L);
118: lequals(__LINE__, stlong4, 0L);
119:
120: return report(Filename);
121: }
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.