Annotation of researchv10no/cmd/lcc/ph/capacity.c, revision 1.1.1.1

1.1       root        1: /* The Plum Hall Validation Suite for C
                      2:  * Published copyright (c) 1986-1991, Chiron Systems Inc and Plum Hall Inc.
                      3:  * VERSION: 4
                      4:  * DATE: 1993-01-01
                      5:  * The contents of this file may be shown to any persons, provided 
                      6:  * that no copies are transfered to any persons not licensed to receive such copies.
                      7:  * Successful compilation and execution of this program satisfies 2.2.4.1 of the C Standard
                      8:  */
                      9: 
                     10: /* b2241.c -- test translation limits (2.2.4.1) */
                     11: #define verify(ln, expr) { if (!(expr)) printf("execution fails, line %d\n", ln), ++errs; }
                     12: 
                     13: #ifndef FREESTANDING
                     14: extern int printf(const char *format, ...);
                     15: #else
                     16: /* FREESTANDING validation must provide some means of printing  string  */
                     17: static int Zero = 0; /* needed in sdutil.h */
                     18: #include "sdutil.h"
                     19: int printf(const char *string, int n)
                     20:        {
                     21:        pr_ok(string); /* bare-bones, adequate if no errors from  verify  */
                     22:        }
                     23: #endif /* FREESTANDING */
                     24: 
                     25: void cat31(char *s, int dummy,
                     26:        char  c0,char  c1,char  c2,char  c3,char  c4,char  c5,char  c6,char  c7,char  c8,char  c9,
                     27:        char c10,char c11,char c12,char c13,char c14,char c15,char c16,char c17,char c18,char c19,
                     28:        char c20,char c21,char c22,char c23,char c24,char c25,char c26,char c27,char c28)
                     29:        {
                     30:        s[0]=c0; s[1]=c1; s[2]=c2; s[3]=c3; s[4]=c4; s[5]=c5; s[6]=c6; s[7]=c7; s[8]=c8; s[9]=c9;
                     31:        s[10]=c10; s[11]=c11; s[12]=c12; s[13]=c13; s[14]=c14; s[15]=c15; s[16]=c16; s[17]=c17; s[18]=c18; s[19]=c19;
                     32:        s[20]=c20; s[21]=c21; s[22]=c22; s[23]=c23; s[24]=c24; s[25]=c25; s[26]=c26; s[27]=c27; s[28]=c28;
                     33:        s[29] = '\0';
                     34:        }
                     35: 
                     36: int str_cmp(const char *s1, const char *s2)
                     37:        {
                     38:        for (; *s1 == *s2; ++s1, ++s2)
                     39:                if (*s1 == '\0')
                     40:                        return 0;
                     41:        return 1;
                     42:        }
                     43: 
                     44: /* #7: 6 significant characters in an external identifier */
                     45: short e23456 = 6;
                     46: short e2345  = 5;
                     47: 
                     48: /* str_len -- used here to avoid need for  size_t  definition */
                     49: int str_len(s)
                     50:        char *s;
                     51:        {
                     52:        int i;
                     53: 
                     54:        for (i = 0; s[i] != '\0'; ++i)
                     55:                ;
                     56:        return i;
                     57:        }
                     58: 
                     59: /* #8: 511 external identifiers in one source file */
                     60: /* e2345 e23456 str_len main str_cmp cat31 printf errs, plus 503 here */
                     61: char i000=0,i001=0,i002=0,i003=0,i004=0,i005=0,i006=0,i007=0,i008=0,i009=0;
                     62: char i010=0,i011=0,i012=0,i013=0,i014=0,i015=0,i016=0,i017=0,i018=0,i019=0;
                     63: char i020=0,i021=0,i022=0,i023=0,i024=0,i025=0,i026=0,i027=0,i028=0,i029=0;
                     64: char i030=0,i031=0,i032=0,i033=0,i034=0,i035=0,i036=0,i037=0,i038=0,i039=0;
                     65: char i040=0,i041=0,i042=0,i043=0,i044=0,i045=0,i046=0,i047=0,i048=0,i049=0;
                     66: char i050=0,i051=0,i052=0,i053=0,i054=0,i055=0,i056=0,i057=0,i058=0,i059=0;
                     67: char i060=0,i061=0,i062=0,i063=0,i064=0,i065=0,i066=0,i067=0,i068=0,i069=0;
                     68: char i070=0,i071=0,i072=0,i073=0,i074=0,i075=0,i076=0,i077=0,i078=0,i079=0;
                     69: char i080=0,i081=0,i082=0,i083=0,i084=0,i085=0,i086=0,i087=0,i088=0,i089=0;
                     70: char i090=0,i091=0,i092=0,i093=0,i094=0,i095=0,i096=0,i097=0,i098=0,i099=0;
                     71: char i100=0,i101=0,i102=0,i103=0,i104=0,i105=0,i106=0,i107=0,i108=0,i109=0;
                     72: char i110=0,i111=0,i112=0,i113=0,i114=0,i115=0,i116=0,i117=0,i118=0,i119=0;
                     73: char i120=0,i121=0,i122=0,i123=0,i124=0,i125=0,i126=0,i127=0,i128=0,i129=0;
                     74: char i130=0,i131=0,i132=0,i133=0,i134=0,i135=0,i136=0,i137=0,i138=0,i139=0;
                     75: char i140=0,i141=0,i142=0,i143=0,i144=0,i145=0,i146=0,i147=0,i148=0,i149=0;
                     76: char i150=0,i151=0,i152=0,i153=0,i154=0,i155=0,i156=0,i157=0,i158=0,i159=0;
                     77: char i160=0,i161=0,i162=0,i163=0,i164=0,i165=0,i166=0,i167=0,i168=0,i169=0;
                     78: char i170=0,i171=0,i172=0,i173=0,i174=0,i175=0,i176=0,i177=0,i178=0,i179=0;
                     79: char i180=0,i181=0,i182=0,i183=0,i184=0,i185=0,i186=0,i187=0,i188=0,i189=0;
                     80: char i190=0,i191=0,i192=0,i193=0,i194=0,i195=0,i196=0,i197=0,i198=0,i199=0;
                     81: char i200=0,i201=0,i202=0,i203=0,i204=0,i205=0,i206=0,i207=0,i208=0,i209=0;
                     82: char i210=0,i211=0,i212=0,i213=0,i214=0,i215=0,i216=0,i217=0,i218=0,i219=0;
                     83: char i220=0,i221=0,i222=0,i223=0,i224=0,i225=0,i226=0,i227=0,i228=0,i229=0;
                     84: char i230=0,i231=0,i232=0,i233=0,i234=0,i235=0,i236=0,i237=0,i238=0,i239=0;
                     85: char i240=0,i241=0,i242=0,i243=0,i244=0,i245=0,i246=0,i247=0,i248=0,i249=0;
                     86: char i250=0,i251=0,i252=0,i253=0,i254=0,i255=0,i256=0,i257=0,i258=0,i259=0;
                     87: char i260=0,i261=0,i262=0,i263=0,i264=0,i265=0,i266=0,i267=0,i268=0,i269=0;
                     88: char i270=0,i271=0,i272=0,i273=0,i274=0,i275=0,i276=0,i277=0,i278=0,i279=0;
                     89: char i280=0,i281=0,i282=0,i283=0,i284=0,i285=0,i286=0,i287=0,i288=0,i289=0;
                     90: char i290=0,i291=0,i292=0,i293=0,i294=0,i295=0,i296=0,i297=0,i298=0,i299=0;
                     91: char i300=0,i301=0,i302=0,i303=0,i304=0,i305=0,i306=0,i307=0,i308=0,i309=0;
                     92: char i310=0,i311=0,i312=0,i313=0,i314=0,i315=0,i316=0,i317=0,i318=0,i319=0;
                     93: char i320=0,i321=0,i322=0,i323=0,i324=0,i325=0,i326=0,i327=0,i328=0,i329=0;
                     94: char i330=0,i331=0,i332=0,i333=0,i334=0,i335=0,i336=0,i337=0,i338=0,i339=0;
                     95: char i340=0,i341=0,i342=0,i343=0,i344=0,i345=0,i346=0,i347=0,i348=0,i349=0;
                     96: char i350=0,i351=0,i352=0,i353=0,i354=0,i355=0,i356=0,i357=0,i358=0,i359=0;
                     97: char i360=0,i361=0,i362=0,i363=0,i364=0,i365=0,i366=0,i367=0,i368=0,i369=0;
                     98: char i370=0,i371=0,i372=0,i373=0,i374=0,i375=0,i376=0,i377=0,i378=0,i379=0;
                     99: char i380=0,i381=0,i382=0,i383=0,i384=0,i385=0,i386=0,i387=0,i388=0,i389=0;
                    100: char i390=0,i391=0,i392=0,i393=0,i394=0,i395=0,i396=0,i397=0,i398=0,i399=0;
                    101: char i400=0,i401=0,i402=0,i403=0,i404=0,i405=0,i406=0,i407=0,i408=0,i409=0;
                    102: char i410=0,i411=0,i412=0,i413=0,i414=0,i415=0,i416=0,i417=0,i418=0,i419=0;
                    103: char i420=0,i421=0,i422=0,i423=0,i424=0,i425=0,i426=0,i427=0,i428=0,i429=0;
                    104: char i430=0,i431=0,i432=0,i433=0,i434=0,i435=0,i436=0,i437=0,i438=0,i439=0;
                    105: char i440=0,i441=0,i442=0,i443=0,i444=0,i445=0,i446=0,i447=0,i448=0,i449=0;
                    106: char i450=0,i451=0,i452=0,i453=0,i454=0,i455=0,i456=0,i457=0,i458=0,i459=0;
                    107: char i460=0,i461=0,i462=0,i463=0,i464=0,i465=0,i466=0,i467=0,i468=0,i469=0;
                    108: char i470=0,i471=0,i472=0,i473=0,i474=0,i475=0,i476=0,i477=0,i478=0,i479=0;
                    109: char i480=0,i481=0,i482=0,i483=0,i484=0,i485=0,i486=0,i487=0,i488=0,i489=0;
                    110: char i490=0,i491=0,i492=0,i493=0,i494=0,i495=0,i496=0,i497=0,i498=0,i499=0;
                    111: char i500=0,i501=0,i502=0;
                    112: 
                    113: int errs = 0;
                    114: 
                    115: int main()
                    116: {
                    117: 
                    118: /* verify the 6 significant chars on extern */
                    119:     verify(__LINE__, e2345 == 5);
                    120: 
                    121: /* verify that the externals are accessible and distinct */
                    122:        i450+=i451+=i452+=i453+=i454+=i455+=i456+=i457+=i458+=i459+=1;
                    123:        i460+=i461+=i462+=i463+=i464+=i465+=i466+=i467+=i468+=i469+=1;
                    124:        i470+=i471+=i472+=i473+=i474+=i475+=i476+=i477+=i478+=i479+=1;
                    125:        i480+=i481+=i482+=i483+=i484+=i485+=i486+=i487+=i488+=i489+=1;
                    126:        i490+=i491+=i492+=i493+=i494+=i495+=i496+=i497+=i498+=i499+=1;
                    127:     verify(__LINE__, i450 == 1);
                    128:     
                    129: /* #1: 15 nesting levels of compound statements and selection control */
                    130:     if(i451){if(i452){if(i453){if(i454){if(i455){
                    131:     if(i456){if(i457){if(i458){if(i459){if(i460){
                    132:     if(i461){if(i462){if(i463){if(i464){if(i465)
                    133:         i100 = 1;
                    134:     else
                    135:         i100 = 0;
                    136:         } } } } } } } } } } } } } } 
                    137:     /*  1 2 3 4 5 6 7 8 9 0 1 2 3 4 */
                    138:     verify(__LINE__, i100 == 1);
                    139:     
                    140: /* #2: 8 nesting levels in conditional compilation */
                    141: #define NEST_OK 0
                    142: #if 1
                    143: #if 2
                    144: #if 3
                    145: #if 4
                    146: #if 5
                    147: #if 6
                    148: #if 7
                    149: #if 8
                    150: #undef NEST_OK
                    151: #define NEST_OK 1
                    152: #endif
                    153: #endif
                    154: #endif
                    155: #endif
                    156: #endif
                    157: #endif
                    158: #endif
                    159: #endif
                    160: 
                    161: 
                    162:     verify(__LINE__, NEST_OK == 1);
                    163: 
                    164: /* #3: 12 ptr, array, and fn declarators modifying a basic type */
                    165:     {
                    166:     char   c = 'a';
                    167:     char   *p1 = &c;
                    168:     char   **p2 = &p1;
                    169:     char   ***p3 = &p2;
                    170:     char   ****p4 = &p3;
                    171:     char   *****p5 = &p4;
                    172:     char   ******p6 = &p5;
                    173:     char   *******p7 = &p6;
                    174:     char   ********p8 = &p7;
                    175:     char   *********p9 = &p8;
                    176:     char   **********p10 = &p9;
                    177:     char   ***********p11 = &p10;
                    178:     char   ************p12 = &p11;
                    179: 
                    180:     verify(__LINE__, ************p12 == 'a');
                    181:     }
                    182: 
                    183: /* #4: 31 declarators nested by parentheses  */
                    184:     {
                    185:        /*  1234567890123456789012345678901 1234567890123456789012345678901 */
                    186:     int (((((((((((((((((((((((((((((((i))))))))))))))))))))))))))))))) = 2;
                    187: 
                    188:        verify(__LINE__, i == 2);
                    189:     }
                    190: /* #5: 32 expressions nested by parentheses (ANSI8709 reduced this from 127) */
                    191:     {
                    192:           /* 1  2  3  4  5  6  7  8  9  10 */
                    193: #define L(a) (1-(1-(1-(1-(1-(1-(1-(1-(1-(1-a
                    194: #define R    )  )  )  )  )  )  )  )  )  )  
                    195:     /* L(x) generates 10 left parens, 30 chars (plus length of x) */
                    196:     int i = 2;
                    197:     int j;
                    198:     
                    199: 
                    200:     j =
                    201:         L(L(L((1-(i-1)))))
                    202:          R R R;
                    203:        verify(__LINE__, j == 0);
                    204:     }
                    205: 
                    206: /* #6: 31 significant characters in an internal identifier or macro name */
                    207: #define M234567890123456789012345678901 1
                    208: #define M23456789012345678901234567890  0
                    209:     verify(__LINE__, M234567890123456789012345678901 == 1);
                    210: 
                    211: /* See top of file for #7 and #8 */
                    212: 
                    213: /* #9: 127 identifiers with block scope in one block */
                    214:     {
                    215:     auto char i000=0,i001=0,i002=0,i003=0,i004=0,i005=0,i006=0,i007=0,i008=0,i009=0;
                    216:        auto char i010=0,i011=0,i012=0,i013=0,i014=0,i015=0,i016=0,i017=0,i018=0,i019=0;
                    217:        auto char i020=0,i021=0,i022=0,i023=0,i024=0,i025=0,i026=0,i027=0,i028=0,i029=0;
                    218:        auto char i030=0,i031=0,i032=0,i033=0,i034=0,i035=0,i036=0,i037=0,i038=0,i039=0;
                    219:        auto char i040=0,i041=0,i042=0,i043=0,i044=0,i045=0,i046=0,i047=0,i048=0,i049=0;
                    220:     auto char i050=0,i051=0,i052=0,i053=0,i054=0,i055=0,i056=0,i057=0,i058=0,i059=0;
                    221:        auto char i060=0,i061=0,i062=0,i063=0,i064=0,i065=0,i066=0,i067=0,i068=0,i069=0;
                    222:        auto char i070=0,i071=0,i072=0,i073=0,i074=0,i075=0,i076=0,i077=0,i078=0,i079=0;
                    223:        auto char i080=0,i081=0,i082=0,i083=0,i084=0,i085=0,i086=0,i087=0,i088=0,i089=0;
                    224:        auto char i090=0,i091=0,i092=0,i093=0,i094=0,i095=0,i096=0,i097=0,i098=0,i099=0;
                    225:     auto char i100=0,i101=0,i102=0,i103=0,i104=0,i105=0,i106=0,i107=0,i108=0,i109=0;
                    226:        auto char i110=0,i111=0,i112=0,i113=0,i114=0,i115=0,i116=0,i117=0,i118=0,i119=0;
                    227:     auto char i120=0,i121=0,i122=0,i123=0,i124=0,i125=0,i126=0;
                    228: 
                    229:        i050+=i051+=i052+=i053+=i054+=i055+=i056+=i057+=i058+=i059+=1;
                    230:        i060+=i061+=i062+=i063+=i064+=i065+=i066+=i067+=i068+=i069+=1;
                    231:        i070+=i071+=i072+=i073+=i074+=i075+=i076+=i077+=i078+=i079+=1;
                    232:        i080+=i081+=i082+=i083+=i084+=i085+=i086+=i087+=i088+=i089+=1;
                    233:        i090+=i091+=i092+=i093+=i094+=i095+=i096+=i097+=i098+=i099+=1;
                    234:     verify(__LINE__, i050 == 1);
                    235:     }
                    236: 
                    237: /* #10: 1024 macro identifiers simultaneously defined in one source file */
                    238: /* 9 macros defined elsewhere by capacity.c, 1 in verify,
                    239:    and 1014 are defined in this section */
                    240:     {
                    241: 
                    242: #define A00 0
                    243: #define A01 1
                    244: #define A02 2
                    245: #define A03 3
                    246: #define A04 4
                    247: #define A05 5
                    248: #define A06 6
                    249: #define A07 7
                    250: #define A08 8
                    251: #define A09 9
                    252: 
                    253: #define A10 0
                    254: #define A11 1
                    255: #define A12 2
                    256: #define A13 3
                    257: #define A14 4
                    258: #define A15 5
                    259: #define A16 6
                    260: #define A17 7
                    261: #define A18 8
                    262: #define A19 9
                    263: 
                    264: #define A20 0
                    265: #define A21 1
                    266: #define A22 2
                    267: #define A23 3
                    268: #define A24 4
                    269: #define A25 5
                    270: #define A26 6
                    271: #define A27 7
                    272: #define A28 8
                    273: #define A29 9
                    274: 
                    275: #define A30 0
                    276: #define A31 1
                    277: #define A32 2
                    278: #define A33 3
                    279: #define A34 4
                    280: #define A35 5
                    281: #define A36 6
                    282: #define A37 7
                    283: #define A38 8
                    284: #define A39 9
                    285: 
                    286: #define A40 0
                    287: #define A41 1
                    288: #define A42 2
                    289: #define A43 3
                    290: #define A44 4
                    291: #define A45 5
                    292: #define A46 6
                    293: #define A47 7
                    294: #define A48 8
                    295: #define A49 9
                    296: 
                    297: #define A50 0
                    298: #define A51 1
                    299: #define A52 2
                    300: #define A53 3
                    301: #define A54 4
                    302: #define A55 5
                    303: #define A56 6
                    304: #define A57 7
                    305: #define A58 8
                    306: #define A59 9
                    307: 
                    308: #define A60 0
                    309: #define A61 1
                    310: #define A62 2
                    311: #define A63 3
                    312: #define A64 4
                    313: #define A65 5
                    314: #define A66 6
                    315: #define A67 7
                    316: #define A68 8
                    317: #define A69 9
                    318: 
                    319: #define A70 0
                    320: #define A71 1
                    321: #define A72 2
                    322: #define A73 3
                    323: #define A74 4
                    324: #define A75 5
                    325: #define A76 6
                    326: #define A77 7
                    327: #define A78 8
                    328: #define A79 9
                    329: 
                    330: #define A80 0
                    331: #define A81 1
                    332: #define A82 2
                    333: #define A83 3
                    334: #define A84 4
                    335: #define A85 5
                    336: #define A86 6
                    337: #define A87 7
                    338: #define A88 8
                    339: #define A89 9
                    340: 
                    341: #define A90 0
                    342: #define A91 1
                    343: #define A92 2
                    344: #define A93 3
                    345: #define A94 4
                    346: #define A95 5
                    347: #define A96 6
                    348: #define A97 7
                    349: #define A98 8
                    350: #define A99 9
                    351: 
                    352: #define B00 0
                    353: #define B01 1
                    354: #define B02 2
                    355: #define B03 3
                    356: #define B04 4
                    357: #define B05 5
                    358: #define B06 6
                    359: #define B07 7
                    360: #define B08 8
                    361: #define B09 9
                    362: 
                    363: #define B10 0
                    364: #define B11 1
                    365: #define B12 2
                    366: #define B13 3
                    367: #define B14 4
                    368: #define B15 5
                    369: #define B16 6
                    370: #define B17 7
                    371: #define B18 8
                    372: #define B19 9
                    373: 
                    374: #define B20 0
                    375: #define B21 1
                    376: #define B22 2
                    377: #define B23 3
                    378: #define B24 4
                    379: #define B25 5
                    380: #define B26 6
                    381: #define B27 7
                    382: #define B28 8
                    383: #define B29 9
                    384: 
                    385: #define B30 0
                    386: #define B31 1
                    387: #define B32 2
                    388: #define B33 3
                    389: #define B34 4
                    390: #define B35 5
                    391: #define B36 6
                    392: #define B37 7
                    393: #define B38 8
                    394: #define B39 9
                    395: 
                    396: #define B40 0
                    397: #define B41 1
                    398: #define B42 2
                    399: #define B43 3
                    400: #define B44 4
                    401: #define B45 5
                    402: #define B46 6
                    403: #define B47 7
                    404: #define B48 8
                    405: #define B49 9
                    406: 
                    407: #define B50 0
                    408: #define B51 1
                    409: #define B52 2
                    410: #define B53 3
                    411: #define B54 4
                    412: #define B55 5
                    413: #define B56 6
                    414: #define B57 7
                    415: #define B58 8
                    416: #define B59 9
                    417: 
                    418: #define B60 0
                    419: #define B61 1
                    420: #define B62 2
                    421: #define B63 3
                    422: #define B64 4
                    423: #define B65 5
                    424: #define B66 6
                    425: #define B67 7
                    426: #define B68 8
                    427: #define B69 9
                    428: 
                    429: #define B70 0
                    430: #define B71 1
                    431: #define B72 2
                    432: #define B73 3
                    433: #define B74 4
                    434: #define B75 5
                    435: #define B76 6
                    436: #define B77 7
                    437: #define B78 8
                    438: #define B79 9
                    439: 
                    440: #define B80 0
                    441: #define B81 1
                    442: #define B82 2
                    443: #define B83 3
                    444: #define B84 4
                    445: #define B85 5
                    446: #define B86 6
                    447: #define B87 7
                    448: #define B88 8
                    449: #define B89 9
                    450: 
                    451: #define B90 0
                    452: #define B91 1
                    453: #define B92 2
                    454: #define B93 3
                    455: #define B94 4
                    456: #define B95 5
                    457: #define B96 6
                    458: #define B97 7
                    459: #define B98 8
                    460: #define B99 9
                    461: 
                    462: #define C00 0
                    463: #define C01 1
                    464: #define C02 2
                    465: #define C03 3
                    466: #define C04 4
                    467: #define C05 5
                    468: #define C06 6
                    469: #define C07 7
                    470: #define C08 8
                    471: #define C09 9
                    472: 
                    473: #define C10 0
                    474: #define C11 1
                    475: #define C12 2
                    476: #define C13 3
                    477: #define C14 4
                    478: #define C15 5
                    479: #define C16 6
                    480: #define C17 7
                    481: #define C18 8
                    482: #define C19 9
                    483: 
                    484: #define C20 0
                    485: #define C21 1
                    486: #define C22 2
                    487: #define C23 3
                    488: #define C24 4
                    489: #define C25 5
                    490: #define C26 6
                    491: #define C27 7
                    492: #define C28 8
                    493: #define C29 9
                    494: 
                    495: #define C30 0
                    496: #define C31 1
                    497: #define C32 2
                    498: #define C33 3
                    499: #define C34 4
                    500: #define C35 5
                    501: #define C36 6
                    502: #define C37 7
                    503: #define C38 8
                    504: #define C39 9
                    505: 
                    506: #define C40 0
                    507: #define C41 1
                    508: #define C42 2
                    509: #define C43 3
                    510: #define C44 4
                    511: #define C45 5
                    512: #define C46 6
                    513: #define C47 7
                    514: #define C48 8
                    515: #define C49 9
                    516: 
                    517: #define C50 0
                    518: #define C51 1
                    519: #define C52 2
                    520: #define C53 3
                    521: #define C54 4
                    522: #define C55 5
                    523: #define C56 6
                    524: #define C57 7
                    525: #define C58 8
                    526: #define C59 9
                    527: 
                    528: #define C60 0
                    529: #define C61 1
                    530: #define C62 2
                    531: #define C63 3
                    532: #define C64 4
                    533: #define C65 5
                    534: #define C66 6
                    535: #define C67 7
                    536: #define C68 8
                    537: #define C69 9
                    538: 
                    539: #define C70 0
                    540: #define C71 1
                    541: #define C72 2
                    542: #define C73 3
                    543: #define C74 4
                    544: #define C75 5
                    545: #define C76 6
                    546: #define C77 7
                    547: #define C78 8
                    548: #define C79 9
                    549: 
                    550: #define C80 0
                    551: #define C81 1
                    552: #define C82 2
                    553: #define C83 3
                    554: #define C84 4
                    555: #define C85 5
                    556: #define C86 6
                    557: #define C87 7
                    558: #define C88 8
                    559: #define C89 9
                    560: 
                    561: #define C90 0
                    562: #define C91 1
                    563: #define C92 2
                    564: #define C93 3
                    565: #define C94 4
                    566: #define C95 5
                    567: #define C96 6
                    568: #define C97 7
                    569: #define C98 8
                    570: #define C99 9
                    571: 
                    572: #define D00 0
                    573: #define D01 1
                    574: #define D02 2
                    575: #define D03 3
                    576: #define D04 4
                    577: #define D05 5
                    578: #define D06 6
                    579: #define D07 7
                    580: #define D08 8
                    581: #define D09 9
                    582: 
                    583: #define D10 0
                    584: #define D11 1
                    585: #define D12 2
                    586: #define D13 3
                    587: #define D14 4
                    588: #define D15 5
                    589: #define D16 6
                    590: #define D17 7
                    591: #define D18 8
                    592: #define D19 9
                    593: 
                    594: #define D20 0
                    595: #define D21 1
                    596: #define D22 2
                    597: #define D23 3
                    598: #define D24 4
                    599: #define D25 5
                    600: #define D26 6
                    601: #define D27 7
                    602: #define D28 8
                    603: #define D29 9
                    604: 
                    605: #define D30 0
                    606: #define D31 1
                    607: #define D32 2
                    608: #define D33 3
                    609: #define D34 4
                    610: #define D35 5
                    611: #define D36 6
                    612: #define D37 7
                    613: #define D38 8
                    614: #define D39 9
                    615: 
                    616: #define D40 0
                    617: #define D41 1
                    618: #define D42 2
                    619: #define D43 3
                    620: #define D44 4
                    621: #define D45 5
                    622: #define D46 6
                    623: #define D47 7
                    624: #define D48 8
                    625: #define D49 9
                    626: 
                    627: #define D50 0
                    628: #define D51 1
                    629: #define D52 2
                    630: #define D53 3
                    631: #define D54 4
                    632: #define D55 5
                    633: #define D56 6
                    634: #define D57 7
                    635: #define D58 8
                    636: #define D59 9
                    637: 
                    638: #define D60 0
                    639: #define D61 1
                    640: #define D62 2
                    641: #define D63 3
                    642: #define D64 4
                    643: #define D65 5
                    644: #define D66 6
                    645: #define D67 7
                    646: #define D68 8
                    647: #define D69 9
                    648: 
                    649: #define D70 0
                    650: #define D71 1
                    651: #define D72 2
                    652: #define D73 3
                    653: #define D74 4
                    654: #define D75 5
                    655: #define D76 6
                    656: #define D77 7
                    657: #define D78 8
                    658: #define D79 9
                    659: 
                    660: #define D80 0
                    661: #define D81 1
                    662: #define D82 2
                    663: #define D83 3
                    664: #define D84 4
                    665: #define D85 5
                    666: #define D86 6
                    667: #define D87 7
                    668: #define D88 8
                    669: #define D89 9
                    670: 
                    671: #define D90 0
                    672: #define D91 1
                    673: #define D92 2
                    674: #define D93 3
                    675: #define D94 4
                    676: #define D95 5
                    677: #define D96 6
                    678: #define D97 7
                    679: #define D98 8
                    680: #define D99 9
                    681: 
                    682: #define E00 0
                    683: #define E01 1
                    684: #define E02 2
                    685: #define E03 3
                    686: #define E04 4
                    687: #define E05 5
                    688: #define E06 6
                    689: #define E07 7
                    690: #define E08 8
                    691: #define E09 9
                    692: 
                    693: #define E10 0
                    694: #define E11 1
                    695: #define E12 2
                    696: #define E13 3
                    697: #define E14 4
                    698: #define E15 5
                    699: #define E16 6
                    700: #define E17 7
                    701: #define E18 8
                    702: #define E19 9
                    703: 
                    704: #define E20 0
                    705: #define E21 1
                    706: #define E22 2
                    707: #define E23 3
                    708: #define E24 4
                    709: #define E25 5
                    710: #define E26 6
                    711: #define E27 7
                    712: #define E28 8
                    713: #define E29 9
                    714: 
                    715: #define E30 0
                    716: #define E31 1
                    717: #define E32 2
                    718: #define E33 3
                    719: #define E34 4
                    720: #define E35 5
                    721: #define E36 6
                    722: #define E37 7
                    723: #define E38 8
                    724: #define E39 9
                    725: 
                    726: #define E40 0
                    727: #define E41 1
                    728: #define E42 2
                    729: #define E43 3
                    730: #define E44 4
                    731: #define E45 5
                    732: #define E46 6
                    733: #define E47 7
                    734: #define E48 8
                    735: #define E49 9
                    736: 
                    737: #define E50 0
                    738: #define E51 1
                    739: #define E52 2
                    740: #define E53 3
                    741: #define E54 4
                    742: #define E55 5
                    743: #define E56 6
                    744: #define E57 7
                    745: #define E58 8
                    746: #define E59 9
                    747: 
                    748: #define E60 0
                    749: #define E61 1
                    750: #define E62 2
                    751: #define E63 3
                    752: #define E64 4
                    753: #define E65 5
                    754: #define E66 6
                    755: #define E67 7
                    756: #define E68 8
                    757: #define E69 9
                    758: 
                    759: #define E70 0
                    760: #define E71 1
                    761: #define E72 2
                    762: #define E73 3
                    763: #define E74 4
                    764: #define E75 5
                    765: #define E76 6
                    766: #define E77 7
                    767: #define E78 8
                    768: #define E79 9
                    769: 
                    770: #define E80 0
                    771: #define E81 1
                    772: #define E82 2
                    773: #define E83 3
                    774: #define E84 4
                    775: #define E85 5
                    776: #define E86 6
                    777: #define E87 7
                    778: #define E88 8
                    779: #define E89 9
                    780: 
                    781: #define E90 0
                    782: #define E91 1
                    783: #define E92 2
                    784: #define E93 3
                    785: #define E94 4
                    786: #define E95 5
                    787: #define E96 6
                    788: #define E97 7
                    789: #define E98 8
                    790: #define E99 9
                    791: 
                    792: #define F00 0
                    793: #define F01 1
                    794: #define F02 2
                    795: #define F03 3
                    796: #define F04 4
                    797: #define F05 5
                    798: #define F06 6
                    799: #define F07 7
                    800: #define F08 8
                    801: #define F09 9
                    802: 
                    803: #define F10 0
                    804: #define F11 1
                    805: #define F12 2
                    806: #define F13 3
                    807: #define F14 4
                    808: #define F15 5
                    809: #define F16 6
                    810: #define F17 7
                    811: #define F18 8
                    812: #define F19 9
                    813: 
                    814: #define F20 0
                    815: #define F21 1
                    816: #define F22 2
                    817: #define F23 3
                    818: #define F24 4
                    819: #define F25 5
                    820: #define F26 6
                    821: #define F27 7
                    822: #define F28 8
                    823: #define F29 9
                    824: 
                    825: #define F30 0
                    826: #define F31 1
                    827: #define F32 2
                    828: #define F33 3
                    829: #define F34 4
                    830: #define F35 5
                    831: #define F36 6
                    832: #define F37 7
                    833: #define F38 8
                    834: #define F39 9
                    835: 
                    836: #define F40 0
                    837: #define F41 1
                    838: #define F42 2
                    839: #define F43 3
                    840: #define F44 4
                    841: #define F45 5
                    842: #define F46 6
                    843: #define F47 7
                    844: #define F48 8
                    845: #define F49 9
                    846: 
                    847: #define F50 0
                    848: #define F51 1
                    849: #define F52 2
                    850: #define F53 3
                    851: #define F54 4
                    852: #define F55 5
                    853: #define F56 6
                    854: #define F57 7
                    855: #define F58 8
                    856: #define F59 9
                    857: 
                    858: #define F60 0
                    859: #define F61 1
                    860: #define F62 2
                    861: #define F63 3
                    862: #define F64 4
                    863: #define F65 5
                    864: #define F66 6
                    865: #define F67 7
                    866: #define F68 8
                    867: #define F69 9
                    868: 
                    869: #define F70 0
                    870: #define F71 1
                    871: #define F72 2
                    872: #define F73 3
                    873: #define F74 4
                    874: #define F75 5
                    875: #define F76 6
                    876: #define F77 7
                    877: #define F78 8
                    878: #define F79 9
                    879: 
                    880: #define F80 0
                    881: #define F81 1
                    882: #define F82 2
                    883: #define F83 3
                    884: #define F84 4
                    885: #define F85 5
                    886: #define F86 6
                    887: #define F87 7
                    888: #define F88 8
                    889: #define F89 9
                    890: 
                    891: #define F90 0
                    892: #define F91 1
                    893: #define F92 2
                    894: #define F93 3
                    895: #define F94 4
                    896: #define F95 5
                    897: #define F96 6
                    898: #define F97 7
                    899: #define F98 8
                    900: #define F99 9
                    901: 
                    902: #define G00 0
                    903: #define G01 1
                    904: #define G02 2
                    905: #define G03 3
                    906: #define G04 4
                    907: #define G05 5
                    908: #define G06 6
                    909: #define G07 7
                    910: #define G08 8
                    911: #define G09 9
                    912: 
                    913: #define G10 0
                    914: #define G11 1
                    915: #define G12 2
                    916: #define G13 3
                    917: #define G14 4
                    918: #define G15 5
                    919: #define G16 6
                    920: #define G17 7
                    921: #define G18 8
                    922: #define G19 9
                    923: 
                    924: #define G20 0
                    925: #define G21 1
                    926: #define G22 2
                    927: #define G23 3
                    928: #define G24 4
                    929: #define G25 5
                    930: #define G26 6
                    931: #define G27 7
                    932: #define G28 8
                    933: #define G29 9
                    934: 
                    935: #define G30 0
                    936: #define G31 1
                    937: #define G32 2
                    938: #define G33 3
                    939: #define G34 4
                    940: #define G35 5
                    941: #define G36 6
                    942: #define G37 7
                    943: #define G38 8
                    944: #define G39 9
                    945: 
                    946: #define G40 0
                    947: #define G41 1
                    948: #define G42 2
                    949: #define G43 3
                    950: #define G44 4
                    951: #define G45 5
                    952: #define G46 6
                    953: #define G47 7
                    954: #define G48 8
                    955: #define G49 9
                    956: 
                    957: #define G50 0
                    958: #define G51 1
                    959: #define G52 2
                    960: #define G53 3
                    961: #define G54 4
                    962: #define G55 5
                    963: #define G56 6
                    964: #define G57 7
                    965: #define G58 8
                    966: #define G59 9
                    967: 
                    968: #define G60 0
                    969: #define G61 1
                    970: #define G62 2
                    971: #define G63 3
                    972: #define G64 4
                    973: #define G65 5
                    974: #define G66 6
                    975: #define G67 7
                    976: #define G68 8
                    977: #define G69 9
                    978: 
                    979: #define G70 0
                    980: #define G71 1
                    981: #define G72 2
                    982: #define G73 3
                    983: #define G74 4
                    984: #define G75 5
                    985: #define G76 6
                    986: #define G77 7
                    987: #define G78 8
                    988: #define G79 9
                    989: 
                    990: #define G80 0
                    991: #define G81 1
                    992: #define G82 2
                    993: #define G83 3
                    994: #define G84 4
                    995: #define G85 5
                    996: #define G86 6
                    997: #define G87 7
                    998: #define G88 8
                    999: #define G89 9
                   1000: 
                   1001: #define G90 0
                   1002: #define G91 1
                   1003: #define G92 2
                   1004: #define G93 3
                   1005: #define G94 4
                   1006: #define G95 5
                   1007: #define G96 6
                   1008: #define G97 7
                   1009: #define G98 8
                   1010: #define G99 9
                   1011: 
                   1012: #define H00 0
                   1013: #define H01 1
                   1014: #define H02 2
                   1015: #define H03 3
                   1016: #define H04 4
                   1017: #define H05 5
                   1018: #define H06 6
                   1019: #define H07 7
                   1020: #define H08 8
                   1021: #define H09 9
                   1022: 
                   1023: #define H10 0
                   1024: #define H11 1
                   1025: #define H12 2
                   1026: #define H13 3
                   1027: #define H14 4
                   1028: #define H15 5
                   1029: #define H16 6
                   1030: #define H17 7
                   1031: #define H18 8
                   1032: #define H19 9
                   1033: 
                   1034: #define H20 0
                   1035: #define H21 1
                   1036: #define H22 2
                   1037: #define H23 3
                   1038: #define H24 4
                   1039: #define H25 5
                   1040: #define H26 6
                   1041: #define H27 7
                   1042: #define H28 8
                   1043: #define H29 9
                   1044: 
                   1045: #define H30 0
                   1046: #define H31 1
                   1047: #define H32 2
                   1048: #define H33 3
                   1049: #define H34 4
                   1050: #define H35 5
                   1051: #define H36 6
                   1052: #define H37 7
                   1053: #define H38 8
                   1054: #define H39 9
                   1055: 
                   1056: #define H40 0
                   1057: #define H41 1
                   1058: #define H42 2
                   1059: #define H43 3
                   1060: #define H44 4
                   1061: #define H45 5
                   1062: #define H46 6
                   1063: #define H47 7
                   1064: #define H48 8
                   1065: #define H49 9
                   1066: 
                   1067: #define H50 0
                   1068: #define H51 1
                   1069: #define H52 2
                   1070: #define H53 3
                   1071: #define H54 4
                   1072: #define H55 5
                   1073: #define H56 6
                   1074: #define H57 7
                   1075: #define H58 8
                   1076: #define H59 9
                   1077: 
                   1078: #define H60 0
                   1079: #define H61 1
                   1080: #define H62 2
                   1081: #define H63 3
                   1082: #define H64 4
                   1083: #define H65 5
                   1084: #define H66 6
                   1085: #define H67 7
                   1086: #define H68 8
                   1087: #define H69 9
                   1088: 
                   1089: #define H70 0
                   1090: #define H71 1
                   1091: #define H72 2
                   1092: #define H73 3
                   1093: #define H74 4
                   1094: #define H75 5
                   1095: #define H76 6
                   1096: #define H77 7
                   1097: #define H78 8
                   1098: #define H79 9
                   1099: 
                   1100: #define H80 0
                   1101: #define H81 1
                   1102: #define H82 2
                   1103: #define H83 3
                   1104: #define H84 4
                   1105: #define H85 5
                   1106: #define H86 6
                   1107: #define H87 7
                   1108: #define H88 8
                   1109: #define H89 9
                   1110: 
                   1111: #define H90 0
                   1112: #define H91 1
                   1113: #define H92 2
                   1114: #define H93 3
                   1115: #define H94 4
                   1116: #define H95 5
                   1117: #define H96 6
                   1118: #define H97 7
                   1119: #define H98 8
                   1120: #define H99 9
                   1121: 
                   1122: #define I00 0
                   1123: #define I01 1
                   1124: #define I02 2
                   1125: #define I03 3
                   1126: #define I04 4
                   1127: #define I05 5
                   1128: #define I06 6
                   1129: #define I07 7
                   1130: #define I08 8
                   1131: #define I09 9
                   1132: 
                   1133: #define I10 0
                   1134: #define I11 1
                   1135: #define I12 2
                   1136: #define I13 3
                   1137: #define I14 4
                   1138: #define I15 5
                   1139: #define I16 6
                   1140: #define I17 7
                   1141: #define I18 8
                   1142: #define I19 9
                   1143: 
                   1144: #define I20 0
                   1145: #define I21 1
                   1146: #define I22 2
                   1147: #define I23 3
                   1148: #define I24 4
                   1149: #define I25 5
                   1150: #define I26 6
                   1151: #define I27 7
                   1152: #define I28 8
                   1153: #define I29 9
                   1154: 
                   1155: #define I30 0
                   1156: #define I31 1
                   1157: #define I32 2
                   1158: #define I33 3
                   1159: #define I34 4
                   1160: #define I35 5
                   1161: #define I36 6
                   1162: #define I37 7
                   1163: #define I38 8
                   1164: #define I39 9
                   1165: 
                   1166: #define I40 0
                   1167: #define I41 1
                   1168: #define I42 2
                   1169: #define I43 3
                   1170: #define I44 4
                   1171: #define I45 5
                   1172: #define I46 6
                   1173: #define I47 7
                   1174: #define I48 8
                   1175: #define I49 9
                   1176: 
                   1177: #define I50 0
                   1178: #define I51 1
                   1179: #define I52 2
                   1180: #define I53 3
                   1181: #define I54 4
                   1182: #define I55 5
                   1183: #define I56 6
                   1184: #define I57 7
                   1185: #define I58 8
                   1186: #define I59 9
                   1187: 
                   1188: #define I60 0
                   1189: #define I61 1
                   1190: #define I62 2
                   1191: #define I63 3
                   1192: #define I64 4
                   1193: #define I65 5
                   1194: #define I66 6
                   1195: #define I67 7
                   1196: #define I68 8
                   1197: #define I69 9
                   1198: 
                   1199: #define I70 0
                   1200: #define I71 1
                   1201: #define I72 2
                   1202: #define I73 3
                   1203: #define I74 4
                   1204: #define I75 5
                   1205: #define I76 6
                   1206: #define I77 7
                   1207: #define I78 8
                   1208: #define I79 9
                   1209: 
                   1210: #define I80 0
                   1211: #define I81 1
                   1212: #define I82 2
                   1213: #define I83 3
                   1214: #define I84 4
                   1215: #define I85 5
                   1216: #define I86 6
                   1217: #define I87 7
                   1218: #define I88 8
                   1219: #define I89 9
                   1220: 
                   1221: #define I90 0
                   1222: #define I91 1
                   1223: #define I92 2
                   1224: #define I93 3
                   1225: #define I94 4
                   1226: #define I95 5
                   1227: #define I96 6
                   1228: #define I97 7
                   1229: #define I98 8
                   1230: #define I99 9
                   1231: 
                   1232: #define J00 0
                   1233: #define J01 1
                   1234: #define J02 2
                   1235: #define J03 3
                   1236: #define J04 4
                   1237: #define J05 5
                   1238: #define J06 6
                   1239: #define J07 7
                   1240: #define J08 8
                   1241: #define J09 9
                   1242: 
                   1243: #define J10 0
                   1244: #define J11 1
                   1245: #define J12 2
                   1246: #define J13 3
                   1247: #define J14 4
                   1248: #define J15 5
                   1249: #define J16 6
                   1250: #define J17 7
                   1251: #define J18 8
                   1252: #define J19 9
                   1253: 
                   1254: #define J20 0
                   1255: #define J21 1
                   1256: #define J22 2
                   1257: #define J23 3
                   1258: #define J24 4
                   1259: #define J25 5
                   1260: #define J26 6
                   1261: #define J27 7
                   1262: #define J28 8
                   1263: #define J29 9
                   1264: 
                   1265: #define J30 0
                   1266: #define J31 1
                   1267: #define J32 2
                   1268: #define J33 3
                   1269: #define J34 4
                   1270: #define J35 5
                   1271: #define J36 6
                   1272: #define J37 7
                   1273: #define J38 8
                   1274: #define J39 9
                   1275: 
                   1276: #define J40 0
                   1277: #define J41 1
                   1278: #define J42 2
                   1279: #define J43 3
                   1280: #define J44 4
                   1281: #define J45 5
                   1282: #define J46 6
                   1283: #define J47 7
                   1284: #define J48 8
                   1285: #define J49 9
                   1286: 
                   1287: #define J50 0
                   1288: #define J51 1
                   1289: #define J52 2
                   1290: #define J53 3
                   1291: #define J54 4
                   1292: #define J55 5
                   1293: #define J56 6
                   1294: #define J57 7
                   1295: #define J58 8
                   1296: #define J59 9
                   1297: 
                   1298: #define J60 0
                   1299: #define J61 1
                   1300: #define J62 2
                   1301: #define J63 3
                   1302: #define J64 4
                   1303: #define J65 5
                   1304: #define J66 6
                   1305: #define J67 7
                   1306: #define J68 8
                   1307: #define J69 9
                   1308: 
                   1309: #define J70 0
                   1310: #define J71 1
                   1311: #define J72 2
                   1312: #define J73 3
                   1313: #define J74 4
                   1314: #define J75 5
                   1315: #define J76 6
                   1316: #define J77 7
                   1317: #define J78 8
                   1318: #define J79 9
                   1319: 
                   1320: #define J80 0
                   1321: #define J81 1
                   1322: #define J82 2
                   1323: #define J83 3
                   1324: #define J84 4
                   1325: #define J85 5
                   1326: #define J86 6
                   1327: #define J87 7
                   1328: #define J88 8
                   1329: #define J89 9
                   1330: 
                   1331: #define J90 0
                   1332: #define J91 1
                   1333: #define J92 2
                   1334: #define J93 3
                   1335: #define J94 4
                   1336: #define J95 5
                   1337: #define J96 6
                   1338: #define J97 7
                   1339: #define J98 8
                   1340: #define J99 9
                   1341: 
                   1342: #define K00 0
                   1343: #define K01 1
                   1344: #define K02 2
                   1345: #define K03 3
                   1346: #define K04 4
                   1347: #define K05 5
                   1348: #define K06 6
                   1349: #define K07 7
                   1350: #define K08 8
                   1351: #define K09 9
                   1352: #define K10 0
                   1353: #define K11 1
                   1354: #define K12 2
                   1355: #define K13 3
                   1356: 
                   1357:     verify(__LINE__, A00 == 0 && K13 == 3);
                   1358:     }
                   1359: 
                   1360: /* #11: 31 parameters in one function definition and call */
                   1361:     {
                   1362:     char buf[40];
                   1363:     
                   1364:     cat31(buf,  /* target + dummy + 29 args */
                   1365:       0,
                   1366:       '1','2','3','4','5','6','7','8','9','0',
                   1367:       '1','2','3','4','5','6','7','8','9','0',
                   1368:       '1','2','3','4','5','6','7','8','9');
                   1369:     verify(__LINE__, 0 == str_cmp(buf, "12345678901234567890123456789"));
                   1370:     }
                   1371: 
                   1372: /* #12: 31 parameters in one macro definition and invocation */
                   1373:     {
                   1374: #define MUL31(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,A,B,C,D,E) \
                   1375:               a*b*c*d*e*f*g*h*i*j*k*l*m*n*o*p*q*r*s*t*u*v*w*x*y*z*A*B*C*D*E
                   1376: 
                   1377:     verify(__LINE__, 0x40000000L ==
                   1378:     MUL31(1L,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2));
                   1379: 
                   1380:     }
                   1381: 
                   1382: /* #13: 509 characters in a logical source line */
                   1383: /* #14: 509 characters in a string literal (after concatenation) */
                   1384: {
                   1385: static char buf[510] =
                   1386: "\
                   1387: 1234567890123456789012345678901234567890123456789012345678901234567890\
                   1388: 1234567890123456789012345678901234567890123456789012345678901234567890\
                   1389: 1234567890123456789012345678901234567890123456789012345678901234567890\
                   1390: 1234567890123456789012345678901234567890123456789012345678901234567890\
                   1391: 1234567890123456789012345678901234567890123456789012345678901234567890\
                   1392: 1234567890123456789012345678901234567890123456789012345678901234567890\
                   1393: 1234567890123456789012345678901234567890123456789012345678901234567890\
                   1394: 12345678901234567"
                   1395: "89";
                   1396: /* 2 quotes + 7x70 digits + 17 digits = 509 */
                   1397: /* 507 catenated with 2 = 509 */
                   1398: 
                   1399: verify(__LINE__, str_len(buf) == 509 && buf[str_len(buf)-1] == '9');
                   1400: } /* end #13 and #14 */
                   1401: #ifndef FREESTANDING
                   1402: /* #15: 32767 bytes in an object (hosted environment only) */
                   1403:     {
                   1404:     static unsigned char buf[32767] = {0};
                   1405:     long i;
                   1406:     
                   1407:     for (i = 0; i < 32767; ++i)
                   1408:        buf[i] = i % 251;
                   1409:     for (i = 0; i < 32767; ++i)
                   1410:        verify(__LINE__, buf[i] == i % 251);
                   1411:     }
                   1412: #endif /* !FREESTANDING */
                   1413: /* #16: 8 nesting levels for #included files */
                   1414: /* b22411.h includes b22412.h, etc. to b22418.h:
                   1415:  *    b22411.h:
                   1416:  *     #include "b22412.h"
                   1417:  *    b22412.h:
                   1418:  *     #include "b22413.h"
                   1419:  *    b22413.h:
                   1420:  *     #include "b22414.h"
                   1421:  *    b22414.h:
                   1422:  *     #include "b22415.h"
                   1423:  *    b22415.h:
                   1424:  *     #include "b22416.h"
                   1425:  *    b22416.h:
                   1426:  *     #include "b22417.h"
                   1427:  *    b22417.h:
                   1428:  *     #include "b22418.h"
                   1429:  *    b22418.h:
                   1430:  *     #define b22418_INCLUDED 12345678
                   1431:  */
                   1432: #include "b22411.h"
                   1433:     {
                   1434:     verify(__LINE__, b22418_INCLUDED == 12345678);
                   1435:     }
                   1436: 
                   1437: /* #17: 257 case labels in a switch statement (ANSI8703 changed from 255) */
                   1438:     {
                   1439:     short i = 101;
                   1440:     
                   1441:     switch (i) {
                   1442:     case 100:case 101:case 102:case 103:case 104:case 105:case 106:case 107:case 108:case 109:
                   1443:         break;
                   1444:     case 110:case 111:case 112:case 113:case 114:case 115:case 116:case 117:case 118:case 119:
                   1445:        case 120:case 121:case 122:case 123:case 124:case 125:case 126:case 127:case 128:case 129:
                   1446:        case 130:case 131:case 132:case 133:case 134:case 135:case 136:case 137:case 138:case 139:
                   1447:        case 140:case 141:case 142:case 143:case 144:case 145:case 146:case 147:case 148:case 149:
                   1448:         verify(__LINE__, 0);  /* fail, if reached here */
                   1449:     case 150:case 151:case 152:case 153:case 154:case 155:case 156:case 157:case 158:case 159:
                   1450:        case 160:case 161:case 162:case 163:case 164:case 165:case 166:case 167:case 168:case 169:
                   1451:        case 170:case 171:case 172:case 173:case 174:case 175:case 176:case 177:case 178:case 179:
                   1452:        case 180:case 181:case 182:case 183:case 184:case 185:case 186:case 187:case 188:case 189:
                   1453:        case 190:case 191:case 192:case 193:case 194:case 195:case 196:case 197:case 198:case 199:
                   1454:           /* 100 cases */
                   1455:         verify(__LINE__, 0);
                   1456:     case 200:case 201:case 202:case 203:case 204:case 205:case 206:case 207:case 208:case 209:
                   1457:        case 210:case 211:case 212:case 213:case 214:case 215:case 216:case 217:case 218:case 219:
                   1458:        case 220:case 221:case 222:case 223:case 224:case 225:case 226:case 227:case 228:case 229:
                   1459:        case 230:case 231:case 232:case 233:case 234:case 235:case 236:case 237:case 238:case 239:
                   1460:        case 240:case 241:case 242:case 243:case 244:case 245:case 246:case 247:case 248:case 249:
                   1461:     case 250:case 251:case 252:case 253:case 254:case 255:case 256:case 257:case 258:case 259:
                   1462:        case 260:case 261:case 262:case 263:case 264:case 265:case 266:case 267:case 268:case 269:
                   1463:        case 270:case 271:case 272:case 273:case 274:case 275:case 276:case 277:case 278:case 279:
                   1464:        case 280:case 281:case 282:case 283:case 284:case 285:case 286:case 287:case 288:case 289:
                   1465:        case 290:case 291:case 292:case 293:case 294:case 295:case 296:case 297:case 298:case 299:
                   1466:    /* 200 cases */
                   1467:         verify(__LINE__, 0);
                   1468:     case 300:case 301:case 302:case 303:case 304:case 305:case 306:case 307:case 308:case 309:
                   1469:        case 310:case 311:case 312:case 313:case 314:case 315:case 316:case 317:case 318:case 319:
                   1470:        case 320:case 321:case 322:case 323:case 324:case 325:case 326:case 327:case 328:case 329:
                   1471:        case 330:case 331:case 332:case 333:case 334:case 335:case 336:case 337:case 338:case 339:
                   1472:        case 340:case 341:case 342:case 343:case 344:case 345:case 346:case 347:case 348:case 349:
                   1473:    /* 250 cases */
                   1474:     case 350: case 351: case 352: case 353: case 354: case 355: case 356:
                   1475:                /* 257 cases */
                   1476:         verify(__LINE__, 0);
                   1477:     } /* end of switch */
                   1478:     } /* end of #17 */
                   1479: 
                   1480: /* #18: 127 members in a single structure or union */
                   1481:        {
                   1482:        struct s127 {
                   1483:                int i00, i01, i02, i03, i04, i05, i06, i07, i08, i09;
                   1484:                int i10, i11, i12, i13, i14, i15, i16, i17, i18, i19;
                   1485:                int i20, i21, i22, i23, i24, i25, i26, i27, i28, i29;
                   1486:                int i30, i31, i32, i33, i34, i35, i36, i37, i38, i39;
                   1487:                int i40, i41, i42, i43, i44, i45, i46, i47, i48, i49;
                   1488:                int i50, i51, i52, i53, i54, i55, i56, i57, i58, i59;
                   1489:                int i60, i61, i62, i63, i64, i65, i66, i67, i68, i69;
                   1490:                int i70, i71, i72, i73, i74, i75, i76, i77, i78, i79;
                   1491:                int i80, i81, i82, i83, i84, i85, i86, i87, i88, i89;
                   1492:                int i90, i91, i92, i93, i94, i95, i96, i97, i98, i99;
                   1493:                int i100, i101, i102, i103, i104, i105, i106, i107, i108, i109;
                   1494:                int i110, i111, i112, i113, i114, i115, i116, i117, i118, i119;
                   1495:                int i120, i121, i122, i123, i124, i125, i126;
                   1496:                } s127 = {0, 1, 2, 0};
                   1497:        verify(__LINE__, s127.i01 == 1);
                   1498:        verify(__LINE__, s127.i126 == 0);
                   1499:        }
                   1500: 
                   1501: 
                   1502: /* #19: 127 enumeration constants in a single enumeration */
                   1503:        {
                   1504:        enum e127 {
                   1505:                EN00, EN01, EN02, EN03, EN04, EN05, EN06, EN07, EN08, EN09,
                   1506:                EN10, EN11, EN12, EN13, EN14, EN15, EN16, EN17, EN18, EN19,
                   1507:                EN20, EN21, EN22, EN23, EN24, EN25, EN26, EN27, EN28, EN29,
                   1508:                EN30, EN31, EN32, EN33, EN34, EN35, EN36, EN37, EN38, EN39,
                   1509:                EN40, EN41, EN42, EN43, EN44, EN45, EN46, EN47, EN48, EN49,
                   1510:                EN50, EN51, EN52, EN53, EN54, EN55, EN56, EN57, EN58, EN59,
                   1511:                EN60, EN61, EN62, EN63, EN64, EN65, EN66, EN67, EN68, EN69,
                   1512:                EN70, EN71, EN72, EN73, EN74, EN75, EN76, EN77, EN78, EN79,
                   1513:                EN80, EN81, EN82, EN83, EN84, EN85, EN86, EN87, EN88, EN89,
                   1514:                EN90, EN91, EN92, EN93, EN94, EN95, EN96, EN97, EN98, EN99,
                   1515:                EN100, EN101, EN102, EN103, EN104, EN105, EN106, EN107, EN108, EN109,
                   1516:                EN110, EN111, EN112, EN113, EN114, EN115, EN116, EN117, EN118, EN119,
                   1517:                EN120, EN121, EN122, EN123, EN124, EN125, EN126
                   1518:                } e127 = {EN126};
                   1519:        verify(__LINE__, e127 == 126);
                   1520:        verify(__LINE__, EN125 == 125);
                   1521:        }
                   1522: 
                   1523: /* #20: 15 levels of nested structure or union definitions in a single struct-declaraction list */
                   1524:        {
                   1525:        struct { /* 1 */
                   1526:         struct { /* 2 */
                   1527:          struct { /* 3 */
                   1528:           struct { /* 4 */
                   1529:            struct { /* 5 */
                   1530:             struct { /* 6 */
                   1531:              struct { /* 7 */
                   1532:               struct { /* 8 */
                   1533:                struct { /* 9 */
                   1534:                 struct { /* 10 */
                   1535:                  struct { /* 11 */
                   1536:                   struct { /* 12 */
                   1537:                    struct { /* 13 */
                   1538:                     struct { /* 14 */
                   1539:                      struct { /* 15 */
                   1540:                                        int i;
                   1541:                                      } s15;
                   1542:                                     } s14;
                   1543:                                    } s13;
                   1544:                                   } s12;
                   1545:                                  } s11;
                   1546:                                 } s10;
                   1547:                                } s9;
                   1548:                               } s8;
                   1549:                              } s7;
                   1550:                             } s6;
                   1551:                            } s5;
                   1552:                           } s4;
                   1553:                          } s3;
                   1554:                         } s2;
                   1555:                        } s1 = { 99 };
                   1556: 
                   1557:        verify(__LINE__, s1.s2.s3.s4.s5.s6.s7.s8.s9.s10.s11.s12.s13.s14.s15.i == 99);
                   1558:        }
                   1559: 
                   1560:        if (errs == 0)
                   1561:                {}
                   1562:        else
                   1563:                {
                   1564:                printf("***** 0 successful tests in CAPACITY *****\n", 0);
                   1565:                printf("***** %d errors detected in CAPACITY *****\n", errs);
                   1566:                printf("***** 0 skipped sections in CAPACITY *****\n", 0);
                   1567:                }
                   1568: 
                   1569:        return 0;
                   1570: } /* end of main */

unix.superglobalmegacorp.com

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