|
|
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 -R1 -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 = "mix1.c";
74:
75: /* post++ 5L => 4L */
76: /* 4L && 7L => 1 */
77: /* 5L / 3L => 1L */
78: /* 2L < 1L => 0 */
79: /* 1 << 0 => 1 */
80: iequals(__LINE__, ((((stlong4)++ ) && stlong7) << (stlong2 < (stlong5 / stlong3))), 1);
81: lequals(__LINE__, stlong4, 5L);
82:
83: /* pre++ 4.40000E+000 => 5.40000E+000 */
84: /* 8L - 5.40000E+000 => 2.60000E+000 */
85: /* 5L >>= 3L => 0L */
86: /* 6L >>= 0L => 6L */
87: /* 2.60000E+000 != 6L => 1 */
88: iequals(__LINE__, ((stlong8 - ( ++ f4)) != (stlong6 >>= (stlong4 >>= stlong3))), 1);
89: lequals(__LINE__, stlong4, 0L);
90: lequals(__LINE__, stlong6, 6L);
91: fequals(__LINE__, f4, 5.40000E+000);
92:
93: /* 0L + 6L => 6L */
94: /* 3L |= 6L => 7L */
95: /* pre-- 5L => 4L */
96: /* 1L * 4L => 4L */
97: /* 7L >> 4L => 0L */
98: lequals(__LINE__, ((stlong3 |= (stlong4 + stlong6)) >> (stlong1 * ( -- stlong5))), 0L);
99: lequals(__LINE__, stlong5, 4L);
100: lequals(__LINE__, stlong3, 7L);
101:
102: /* 1L % 4L => 1L */
103: /* 1L + 3.30000E+000 => 4.30000E+000 */
104: /* 8L / 7L => 1L */
105: /* 1L | 1L => 1L */
106: /* 4.30000E+000 / 1L => 4.30000E+000 */
107: fequals(__LINE__, (((stlong1 % stlong5) + f3) / ((stlong8 / stlong3) | stlong1)), 4.30000E+000);
108:
109: /* 2L != 7L => 1 */
110: /* 1L *= 1 => 1L */
111: /* 2L ^ 7L => 5L */
112: /* 5L ^ 2L => 7L */
113: /* 1L | 7L => 7L */
114: lequals(__LINE__, ((stlong1 *= (stlong2 != stlong3)) | ((stlong2 ^ stlong7) ^ stlong2)), 7L);
115: lequals(__LINE__, stlong1, 1L);
116:
117: return report(Filename);
118: }
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.