Annotation of researchv10no/cmd/lcc/ph/int3.c, revision 1.1

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 -R3 -V -A -N5 -Dinteger.gen ( @ @ ) @ ( @ @ )               **
        !            17:  ****************************************************************************/
        !            18: #include "defs.h"
        !            19: 
        !            20: 
        !            21: int main()
        !            22:        {
        !            23:        extern char *Filename;
        !            24:        auto unsigned int ui;
        !            25:        static unsigned int * pui;
        !            26:        auto unsigned int ** ppui;
        !            27:        auto int i;
        !            28:        static int * pi;
        !            29:        auto int ** ppi;
        !            30:        auto unsigned short us;
        !            31:        static unsigned short * pus;
        !            32:        auto unsigned short ** ppus;
        !            33:        auto short s;
        !            34:        static short * ps;
        !            35:        auto short ** pps;
        !            36:        auto unsigned char uc;
        !            37:        static unsigned char * puc;
        !            38:        auto unsigned char ** ppuc;
        !            39:        auto char c;
        !            40:        static char * pc;
        !            41:        auto char ** ppc;
        !            42:        auto unsigned long ul;
        !            43:        static unsigned long * pul;
        !            44:        auto unsigned long ** ppul;
        !            45:        auto long l;
        !            46:        static long * pl;
        !            47:        auto long ** ppl;
        !            48:        register int rint1;
        !            49:        register int rint2;
        !            50:        register int rint3;
        !            51:        register int rint4;
        !            52:        register int rint5;
        !            53: 
        !            54:        ui = ivalue(100);
        !            55:        pui = &ui;
        !            56:        ppui = &pui;
        !            57:        i = ivalue(10);
        !            58:        pi = &i;
        !            59:        ppi = π
        !            60:        us = lvalue(33000);
        !            61:        pus = &us;
        !            62:        ppus = &pus;
        !            63:        s = ivalue(13);
        !            64:        ps = &s;
        !            65:        pps = &ps;
        !            66:        uc = ivalue(128);
        !            67:        puc = &uc;
        !            68:        ppuc = &puc;
        !            69:        c = ivalue(20);
        !            70:        pc = &c;
        !            71:        ppc = &pc;
        !            72:        ul = lvalue(65000L);
        !            73:        pul = &ul;
        !            74:        ppul = &pul;
        !            75:        l = lvalue(97L);
        !            76:        pl = &l;
        !            77:        ppl = &pl;
        !            78:        rint1 = ivalue(1);
        !            79:        rint2 = ivalue(2);
        !            80:        rint3 = ivalue(3);
        !            81:        rint4 = ivalue(4);
        !            82:        rint5 = ivalue(5);
        !            83:        Filename = "int3.c";
        !            84: 
        !            85:        /* 0x80 & 0xfde8L => 0x80L */
        !            86:        /* 13 &= 0x80L => 0 */
        !            87:        /* 10 == 128 => 0 */
        !            88:        /* 5 |= 0 => 5 */
        !            89:        /* 0 <= 5 => 1 */
        !            90:        iequals(__LINE__, ((*ps &= (uc & ul)) <= (rint5 |= (*pi == uc))), 1);
        !            91:        iequals(__LINE__, rint5, 5);
        !            92:        iequals(__LINE__, s, 0);
        !            93: 
        !            94:        /* ! 0xfde8L => 0 */
        !            95:        /* 0 | 0x80 => 128 */
        !            96:        /* 0x80e8 - 0x80 => 0x8068 */
        !            97:        /* 0xfde8L < 0x8068 => 0 */
        !            98:        /* 128 >> 0 => 128 */
        !            99:        iequals(__LINE__, ((( ! ul) | *puc) >> (*pul < (**ppus - uc))), 128);
        !           100: 
        !           101:        /* post-- 2 => 3 */
        !           102:        /* 0x80e8 != 3 => 1 */
        !           103:        /* 0x64 / 0xfde8L => 0x0L */
        !           104:        /* 1 + 0x0L => 0x1L */
        !           105:        /* 1 ^ 0x1L => 0x0L */
        !           106:        lequals(__LINE__, ((**ppus != ((rint3)-- )) ^ (rint1 + (**ppui / **ppul))), 0x0L);
        !           107:        iequals(__LINE__, rint3, 2);
        !           108: 
        !           109:        /* 97L - 0x64 => -3L */
        !           110:        /* 0x64 ^ -3L => -103L */
        !           111:        /* 10 *= 2 => 20 */
        !           112:        /* 1 ^= 20 => 21 */
        !           113:        /* -103L == 21 => 0 */
        !           114:        iequals(__LINE__, ((**ppui ^ (*pl - ui)) == (rint1 ^= (i *= rint3))), 0);
        !           115:        iequals(__LINE__, i, 20);
        !           116:        iequals(__LINE__, rint1, 21);
        !           117: 
        !           118:        /* pre-- 0 => -1 */
        !           119:        /* 0xfde8L %= -1 => 0xfde8L */
        !           120:        /* ! 97L => 0 */
        !           121:        /* 0 - 20 => -20 */
        !           122:        /* 0xfde8L * -20 => 0xffec29e0L */
        !           123: /*     lequals(__LINE__, ((ul %= ( -- *ps)) * (( ! *pl) - **ppc)), 0xffec29e0L); DELETED: NON-PORTABLE */
        !           124: /*     iequals(__LINE__, s, -1); DELETED: NON-PORTABLE */
        !           125: /*     lequals(__LINE__, ul, 65000L); DELETED: NON-PORTABLE */
        !           126: 
        !           127:        return  report(Filename);
        !           128:        }

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.