|
|
1.1 ! root 1: struct defs { ! 2: int cbits; ! 3: int ibits; ! 4: int sbits; ! 5: int lbits; ! 6: int ubits; ! 7: int fbits; ! 8: int dbits; ! 9: float fprec; ! 10: float dprec; ! 11: int flgs; ! 12: int flgm; ! 13: int flgd; ! 14: int flgl; ! 15: int rrc; ! 16: int crc; ! 17: char rfs[8]; ! 18: }; ! 19: extern struct _iobuf { ! 20: int _cnt; ! 21: unsigned char *_ptr; ! 22: unsigned char *_base; ! 23: short _flag; ! 24: char _file; ! 25: } _iob[20]; ! 26: struct _iobuf *fopen(); ! 27: struct _iobuf *fdopen(); ! 28: struct _iobuf *freopen(); ! 29: long ftell(); ! 30: char *fgets(); ! 31: struct record{ ! 32: int field1,field2,field3; ! 33: }; ! 34: struct list { int f1; double f2; float f3; } ; ! 35: union rec { int recf1; float recf2; double recf3; } ; ! 36: struct list rfun(x) struct list x; ! 37: { ! 38: x.f1=x.f1+100; ! 39: x.f2=x.f2+200.0; ! 40: x.f3=x.f3+300.0; ! 41: return x; ! 42: } ! 43: union rec ufun(x) union rec x; ! 44: { ! 45: x.recf2=x.recf2+100.0; ! 46: return x; ! 47: } ! 48: ! 49: s141(pd0) ! 50: struct defs *pd0; ! 51: { ! 52: static char s141er[]="s141,er%d\n"; ! 53: static char qs141[8]="s141 "; ! 54: struct list r1,r2,r3; ! 55: union rec rec1, rec2; ! 56: char *ps = qs141, ! 57: *pt = pd0->rfs; ! 58: int rc = 0 ; ! 59: ! 60: while ( *(pt)++ = *(ps)++ ); ! 61: ! 62: r1.f1=1000; r1.f2=2000.0; r1.f3=3000.0; ! 63: r3=r2=r1; ! 64: ! 65: if (1000!=r2.f1 || 2000.0!=r2.f2 || 3000.0!=r2.f3 ! 66: || r1.f1!=r3.f1 || r1.f2!=r3.f2 || r1.f3!=r3.f3) ! 67: { rc++; if (pd0->flgd) printf(s141er,1); } ! 68: r2.f3=r2.f2=r2.f1=1; ! 69: r3=rfun(r2=r1); ! 70: ! 71: if (r3.f1!=r1.f1+100 || r1.f1!=r2.f1 || r1.f1!=1000 || ! 72: r3.f2!=r1.f2+200.0 || r1.f2!=r2.f2 || r1.f2!=2000.0 || ! 73: r3.f3!=r1.f3+300.0 || r1.f3!=r2.f3 || r1.f3!=3000.0 ) ! 74: { rc+=2; if (pd0->flgd) printf(s141er,2); } ! 75: if (r3.f3!=rfun(r1).f3) ! 76: { rc+=4; if (pd0->flgd) printf(s141er,4); } ! 77: rec1.recf2=33.0; ! 78: rec2=ufun(rec1); ! 79: if (ufun(rec1).recf2!=133.0 || rec1.recf2!=33.0) ! 80: { rc +=8 ; if (pd0->flgd) printf(s141er,8); } ! 81: return rc; ! 82: }
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.