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