|
|
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 timeq1 "; ! 83: Ac = 7; D1.c = 7; ! 84: Ac *= D1.c; ! 85: iequals(__LINE__, Ac, (CHAR)49); ! 86: Ac = 7; ! 87: iequals(__LINE__, Ac *= D1.c, (CHAR)49); ! 88: D1.c = 7; Ac = 7; ! 89: D1.c *= Ac; ! 90: iequals(__LINE__, D1.c, (CHAR)49); ! 91: D1.c = 7; ! 92: iequals(__LINE__, D1.c *= Ac, (CHAR)49); ! 93: #if ANSI ! 94: Ac = 7; D2.sc = 8; ! 95: Ac *= D2.sc; ! 96: iequals(__LINE__, Ac, (CHAR)56); ! 97: Ac = 7; ! 98: iequals(__LINE__, Ac *= D2.sc, (CHAR)56); ! 99: D2.sc = 8; Ac = 7; ! 100: D2.sc *= Ac; ! 101: iequals(__LINE__, D2.sc, (SCHAR)56); ! 102: D2.sc = 8; ! 103: iequals(__LINE__, D2.sc *= Ac, (SCHAR)56); ! 104: #endif ! 105: Ac = 7; D3.s = 9; ! 106: Ac *= D3.s; ! 107: iequals(__LINE__, Ac, (CHAR)63); ! 108: Ac = 7; ! 109: iequals(__LINE__, Ac *= D3.s, (CHAR)63); ! 110: D3.s = 9; Ac = 7; ! 111: D3.s *= Ac; ! 112: iequals(__LINE__, D3.s, (SHORT)63); ! 113: D3.s = 9; ! 114: iequals(__LINE__, D3.s *= Ac, (SHORT)63); ! 115: Ac = 7; D4.i = 10; ! 116: Ac *= D4.i; ! 117: iequals(__LINE__, Ac, (CHAR)70); ! 118: Ac = 7; ! 119: iequals(__LINE__, Ac *= D4.i, (CHAR)70); ! 120: D4.i = 10; Ac = 7; ! 121: D4.i *= Ac; ! 122: iequals(__LINE__, D4.i, (INT)70); ! 123: D4.i = 10; ! 124: iequals(__LINE__, D4.i *= Ac, (INT)70); ! 125: Ac = 7; D5.uc = 11; ! 126: Ac *= D5.uc; ! 127: iequals(__LINE__, Ac, (CHAR)77); ! 128: Ac = 7; ! 129: iequals(__LINE__, Ac *= D5.uc, (CHAR)77); ! 130: D5.uc = 11; Ac = 7; ! 131: D5.uc *= Ac; ! 132: iequals(__LINE__, D5.uc, (UCHAR)77); ! 133: D5.uc = 11; ! 134: iequals(__LINE__, D5.uc *= Ac, (UCHAR)77); ! 135: Ac = 7; D6.us = 12; ! 136: Ac *= D6.us; ! 137: iequals(__LINE__, Ac, (CHAR)84); ! 138: Ac = 7; ! 139: iequals(__LINE__, Ac *= D6.us, (CHAR)84); ! 140: D6.us = 12; Ac = 7; ! 141: D6.us *= Ac; ! 142: iequals(__LINE__, D6.us, (USHORT)84); ! 143: D6.us = 12; ! 144: iequals(__LINE__, D6.us *= Ac, (USHORT)84); ! 145: Ac = 7; D7.ui = 13; ! 146: Ac *= D7.ui; ! 147: iequals(__LINE__, Ac, (CHAR)91); ! 148: Ac = 7; ! 149: iequals(__LINE__, Ac *= D7.ui, (CHAR)91); ! 150: D7.ui = 13; Ac = 7; ! 151: D7.ui *= Ac; ! 152: iequals(__LINE__, D7.ui, (UINT)91); ! 153: D7.ui = 13; ! 154: iequals(__LINE__, D7.ui *= Ac, (UINT)91); ! 155: Ac = 7; D8.l = 14; ! 156: Ac *= D8.l; ! 157: iequals(__LINE__, Ac, (CHAR)98); ! 158: Ac = 7; ! 159: iequals(__LINE__, Ac *= D8.l, (CHAR)98); ! 160: D8.l = 14; Ac = 7; ! 161: D8.l *= Ac; ! 162: lequals(__LINE__, D8.l, (LONG)98L); ! 163: D8.l = 14; ! 164: lequals(__LINE__, D8.l *= Ac, (LONG)98L); ! 165: Ac = 7; D9.ul = 15; ! 166: Ac *= D9.ul; ! 167: iequals(__LINE__, Ac, (CHAR)105); ! 168: Ac = 7; ! 169: iequals(__LINE__, Ac *= D9.ul, (CHAR)105); ! 170: D9.ul = 15; Ac = 7; ! 171: D9.ul *= Ac; ! 172: lequals(__LINE__, D9.ul, (ULONG)105L); ! 173: D9.ul = 15; ! 174: lequals(__LINE__, D9.ul *= Ac, (ULONG)105L); ! 175: Ac = 7; D10.f = 16; ! 176: Ac *= D10.f; ! 177: iequals(__LINE__, Ac, (CHAR)112); ! 178: Ac = 7; ! 179: iequals(__LINE__, Ac *= D10.f, (CHAR)112); ! 180: D10.f = 16; Ac = 7; ! 181: D10.f *= Ac; ! 182: dequals(__LINE__, D10.f, (FLOAT)112.); ! 183: D10.f = 16; ! 184: dequals(__LINE__, D10.f *= Ac, (FLOAT)112.); ! 185: Ac = 7; D11.d = 17; ! 186: Ac *= D11.d; ! 187: iequals(__LINE__, Ac, (CHAR)119); ! 188: Ac = 7; ! 189: iequals(__LINE__, Ac *= D11.d, (CHAR)119); ! 190: D11.d = 17; Ac = 7; ! 191: D11.d *= Ac; ! 192: dequals(__LINE__, D11.d, (DOUBLE)119.); ! 193: D11.d = 17; ! 194: dequals(__LINE__, D11.d *= Ac, (DOUBLE)119.); ! 195: #if ANSI ! 196: Ac = 7; D12.ld = 18; ! 197: Ac *= D12.ld; ! 198: iequals(__LINE__, Ac, (CHAR)126); ! 199: Ac = 7; ! 200: iequals(__LINE__, Ac *= D12.ld, (CHAR)126); ! 201: D12.ld = 18; Ac = 7; ! 202: D12.ld *= Ac; ! 203: ldequals(__LINE__, D12.ld, (LDOUBLE)126.L); ! 204: D12.ld = 18; ! 205: ldequals(__LINE__, D12.ld *= Ac, (LDOUBLE)126.L); ! 206: #endif ! 207: #if ANSI ! 208: Asc = 8; D1.c = 7; ! 209: Asc *= D1.c; ! 210: iequals(__LINE__, Asc, (SCHAR)56); ! 211: Asc = 8; ! 212: iequals(__LINE__, Asc *= D1.c, (SCHAR)56); ! 213: D1.c = 7; Asc = 8; ! 214: D1.c *= Asc; ! 215: iequals(__LINE__, D1.c, (CHAR)56); ! 216: D1.c = 7; ! 217: iequals(__LINE__, D1.c *= Asc, (CHAR)56); ! 218: #endif ! 219: #if ANSI ! 220: Asc = 8; D2.sc = 8; ! 221: Asc *= D2.sc; ! 222: iequals(__LINE__, Asc, (SCHAR)64); ! 223: Asc = 8; ! 224: iequals(__LINE__, Asc *= D2.sc, (SCHAR)64); ! 225: D2.sc = 8; Asc = 8; ! 226: D2.sc *= Asc; ! 227: iequals(__LINE__, D2.sc, (SCHAR)64); ! 228: D2.sc = 8; ! 229: iequals(__LINE__, D2.sc *= Asc, (SCHAR)64); ! 230: #endif ! 231: #if ANSI ! 232: Asc = 8; D3.s = 9; ! 233: Asc *= D3.s; ! 234: iequals(__LINE__, Asc, (SCHAR)72); ! 235: Asc = 8; ! 236: iequals(__LINE__, Asc *= D3.s, (SCHAR)72); ! 237: D3.s = 9; Asc = 8; ! 238: D3.s *= Asc; ! 239: iequals(__LINE__, D3.s, (SHORT)72); ! 240: D3.s = 9; ! 241: iequals(__LINE__, D3.s *= Asc, (SHORT)72); ! 242: #endif ! 243: #if ANSI ! 244: Asc = 8; D4.i = 10; ! 245: Asc *= D4.i; ! 246: iequals(__LINE__, Asc, (SCHAR)80); ! 247: Asc = 8; ! 248: iequals(__LINE__, Asc *= D4.i, (SCHAR)80); ! 249: D4.i = 10; Asc = 8; ! 250: D4.i *= Asc; ! 251: iequals(__LINE__, D4.i, (INT)80); ! 252: D4.i = 10; ! 253: iequals(__LINE__, D4.i *= Asc, (INT)80); ! 254: #endif ! 255: #if ANSI ! 256: Asc = 8; D5.uc = 11; ! 257: Asc *= D5.uc; ! 258: iequals(__LINE__, Asc, (SCHAR)88); ! 259: Asc = 8; ! 260: iequals(__LINE__, Asc *= D5.uc, (SCHAR)88); ! 261: D5.uc = 11; Asc = 8; ! 262: D5.uc *= Asc; ! 263: iequals(__LINE__, D5.uc, (UCHAR)88); ! 264: D5.uc = 11; ! 265: iequals(__LINE__, D5.uc *= Asc, (UCHAR)88); ! 266: #endif ! 267: #if ANSI ! 268: Asc = 8; D6.us = 12; ! 269: Asc *= D6.us; ! 270: iequals(__LINE__, Asc, (SCHAR)96); ! 271: Asc = 8; ! 272: iequals(__LINE__, Asc *= D6.us, (SCHAR)96); ! 273: D6.us = 12; Asc = 8; ! 274: D6.us *= Asc; ! 275: iequals(__LINE__, D6.us, (USHORT)96); ! 276: D6.us = 12; ! 277: iequals(__LINE__, D6.us *= Asc, (USHORT)96); ! 278: #endif ! 279: #if ANSI ! 280: Asc = 8; D7.ui = 13; ! 281: Asc *= D7.ui; ! 282: iequals(__LINE__, Asc, (SCHAR)104); ! 283: Asc = 8; ! 284: iequals(__LINE__, Asc *= D7.ui, (SCHAR)104); ! 285: D7.ui = 13; Asc = 8; ! 286: D7.ui *= Asc; ! 287: iequals(__LINE__, D7.ui, (UINT)104); ! 288: D7.ui = 13; ! 289: iequals(__LINE__, D7.ui *= Asc, (UINT)104); ! 290: #endif ! 291: #if ANSI ! 292: Asc = 8; D8.l = 14; ! 293: Asc *= D8.l; ! 294: iequals(__LINE__, Asc, (SCHAR)112); ! 295: Asc = 8; ! 296: iequals(__LINE__, Asc *= D8.l, (SCHAR)112); ! 297: D8.l = 14; Asc = 8; ! 298: D8.l *= Asc; ! 299: lequals(__LINE__, D8.l, (LONG)112L); ! 300: D8.l = 14; ! 301: lequals(__LINE__, D8.l *= Asc, (LONG)112L); ! 302: #endif ! 303: #if ANSI ! 304: Asc = 8; D9.ul = 15; ! 305: Asc *= D9.ul; ! 306: iequals(__LINE__, Asc, (SCHAR)120); ! 307: Asc = 8; ! 308: iequals(__LINE__, Asc *= D9.ul, (SCHAR)120); ! 309: D9.ul = 15; Asc = 8; ! 310: D9.ul *= Asc; ! 311: lequals(__LINE__, D9.ul, (ULONG)120L); ! 312: D9.ul = 15; ! 313: lequals(__LINE__, D9.ul *= Asc, (ULONG)120L); ! 314: #endif ! 315: #if ANSI ! 316: Asc = 8; D10.f = 15; ! 317: Asc *= D10.f; ! 318: iequals(__LINE__, Asc, (SCHAR)120); ! 319: Asc = 8; ! 320: iequals(__LINE__, Asc *= D10.f, (SCHAR)120); ! 321: D10.f = 15; Asc = 8; ! 322: D10.f *= Asc; ! 323: dequals(__LINE__, D10.f, (FLOAT)120.); ! 324: D10.f = 15; ! 325: dequals(__LINE__, D10.f *= Asc, (FLOAT)120.); ! 326: #endif ! 327: #if ANSI ! 328: Asc = 8; D11.d = 15; ! 329: Asc *= D11.d; ! 330: iequals(__LINE__, Asc, (SCHAR)120); ! 331: Asc = 8; ! 332: iequals(__LINE__, Asc *= D11.d, (SCHAR)120); ! 333: D11.d = 15; Asc = 8; ! 334: D11.d *= Asc; ! 335: dequals(__LINE__, D11.d, (DOUBLE)120.); ! 336: D11.d = 15; ! 337: dequals(__LINE__, D11.d *= Asc, (DOUBLE)120.); ! 338: #endif ! 339: #if ANSI ! 340: Asc = 8; D12.ld = 15; ! 341: Asc *= D12.ld; ! 342: iequals(__LINE__, Asc, (SCHAR)120); ! 343: Asc = 8; ! 344: iequals(__LINE__, Asc *= D12.ld, (SCHAR)120); ! 345: D12.ld = 15; Asc = 8; ! 346: D12.ld *= Asc; ! 347: ldequals(__LINE__, D12.ld, (LDOUBLE)120.L); ! 348: D12.ld = 15; ! 349: ldequals(__LINE__, D12.ld *= Asc, (LDOUBLE)120.L); ! 350: #endif ! 351: As = 9; D1.c = 7; ! 352: As *= D1.c; ! 353: iequals(__LINE__, As, (SHORT)63); ! 354: As = 9; ! 355: iequals(__LINE__, As *= D1.c, (SHORT)63); ! 356: D1.c = 7; As = 9; ! 357: D1.c *= As; ! 358: iequals(__LINE__, D1.c, (CHAR)63); ! 359: D1.c = 7; ! 360: iequals(__LINE__, D1.c *= As, (CHAR)63); ! 361: #if ANSI ! 362: As = 9; D2.sc = 8; ! 363: As *= D2.sc; ! 364: iequals(__LINE__, As, (SHORT)72); ! 365: As = 9; ! 366: iequals(__LINE__, As *= D2.sc, (SHORT)72); ! 367: D2.sc = 8; As = 9; ! 368: D2.sc *= As; ! 369: iequals(__LINE__, D2.sc, (SCHAR)72); ! 370: D2.sc = 8; ! 371: iequals(__LINE__, D2.sc *= As, (SCHAR)72); ! 372: #endif ! 373: As = 9; D3.s = 9; ! 374: As *= D3.s; ! 375: iequals(__LINE__, As, (SHORT)81); ! 376: As = 9; ! 377: iequals(__LINE__, As *= D3.s, (SHORT)81); ! 378: D3.s = 9; As = 9; ! 379: D3.s *= As; ! 380: iequals(__LINE__, D3.s, (SHORT)81); ! 381: D3.s = 9; ! 382: iequals(__LINE__, D3.s *= As, (SHORT)81); ! 383: As = 9; D4.i = 10; ! 384: As *= D4.i; ! 385: iequals(__LINE__, As, (SHORT)90); ! 386: As = 9; ! 387: iequals(__LINE__, As *= D4.i, (SHORT)90); ! 388: D4.i = 10; As = 9; ! 389: D4.i *= As; ! 390: iequals(__LINE__, D4.i, (INT)90); ! 391: D4.i = 10; ! 392: iequals(__LINE__, D4.i *= As, (INT)90); ! 393: As = 9; D5.uc = 11; ! 394: As *= D5.uc; ! 395: iequals(__LINE__, As, (SHORT)99); ! 396: As = 9; ! 397: iequals(__LINE__, As *= D5.uc, (SHORT)99); ! 398: D5.uc = 11; As = 9; ! 399: D5.uc *= As; ! 400: iequals(__LINE__, D5.uc, (UCHAR)99); ! 401: D5.uc = 11; ! 402: iequals(__LINE__, D5.uc *= As, (UCHAR)99); ! 403: As = 9; D6.us = 12; ! 404: As *= D6.us; ! 405: iequals(__LINE__, As, (SHORT)108); ! 406: As = 9; ! 407: iequals(__LINE__, As *= D6.us, (SHORT)108); ! 408: D6.us = 12; As = 9; ! 409: D6.us *= As; ! 410: iequals(__LINE__, D6.us, (USHORT)108); ! 411: D6.us = 12; ! 412: iequals(__LINE__, D6.us *= As, (USHORT)108); ! 413: }} ! 414: return report(Filename); ! 415: }
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.