Annotation of 43BSD/ucb/dbx/tests/mod/bitfields.mod, revision 1.1.1.1

1.1       root        1: module main;
                      2: 
                      3: import io;
                      4: 
                      5: type
                      6:     uint = @align 1 cardinal;
                      7:     dotrecord = record
                      8:        cost : @size 24 uint;
                      9:        dtype : @size 3 uint;
                     10:        dirToCenter : @size 3 uint;
                     11:        pad : @size 1 uint;
                     12:        pin : @size 1 uint;
                     13:        traceback : @size 3 uint;
                     14:        traceforward : @size 3 uint;
                     15:        expanded : @size 1 uint;
                     16:        underDir : @size 3 uint;
                     17:        underOffset : @size 4 uint;
                     18:        start : @size 1 uint;
                     19:        target : @size 1 uint;
                     20:        owner : @size 6 uint;
                     21:        segment : @size 7 uint;
                     22:        intrinsicCost : @size 3 uint;
                     23:     end;
                     24: 
                     25: procedure p1 ();
                     26: var junk : dotrecord;
                     27: begin
                     28:     junk.owner := 63;
                     29:     junk.segment := 1;
                     30:     junk.intrinsicCost := 1;
                     31:     io.Writef(io.output, "owner = %d, segment = %d, intrinsicCost = %d\n",
                     32:        junk.owner, junk.segment, junk.intrinsicCost);
                     33:     p2();
                     34: end p1;
                     35: 
                     36: procedure p2 ();
                     37: var x : record
                     38:        first : integer;
                     39:        second : integer;
                     40:        a : @size 8 @align 1 integer;
                     41:        b : @size 8 @align 1 integer;
                     42:        c : integer;
                     43:     end;
                     44: begin
                     45:     x.first := 0;
                     46:     x.second := 0;
                     47:     x.a := 2;
                     48:     x.b := 10;
                     49:     x.c := 1;
                     50:     io.Writef(io.output, "done\n");
                     51: end p2;
                     52: 
                     53: begin
                     54:     p1();
                     55: end main.

unix.superglobalmegacorp.com

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