|
|
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.