[gforth] / gforth / struct.fs  

gforth: gforth/struct.fs

Diff for /gforth/struct.fs between version 1.15 and 1.16

version 1.15, Tue Mar 23 20:24:20 1999 UTC version 1.16, Tue Aug 22 18:15:38 2000 UTC
Line 44 
Line 44 
     create field, ;      create field, ;
   
 : field ( align1 offset1 align size "name" --  align2 offset2 ) \ gforth  : field ( align1 offset1 align size "name" --  align2 offset2 ) \ gforth
     \G @code{name} execution: @var{addr1} -- @var{addr2}.      \g Create a field @var{name} with offset @var{offset1}, and the type
       \g given by @var{align size}. @var{offset2} is the offset of the
       \g next field, and @var{align2} is the alignment of all fields.@*
       \g @code{name} execution: @var{addr1} -- @var{addr2}.@*
       \g @var{addr2}=@var{addr1}+@var{offset1}
     2 pick      2 pick
     if \ field offset <> 0      if \ field offset <> 0
         [IFDEF]  (Field)          [IFDEF]  (Field)
Line 58 
Line 62 
     field, ;      field, ;
   
 : end-struct ( align size "name" -- ) \ gforth  : end-struct ( align size "name" -- ) \ gforth
 \g @code{name} execution: @var{addr1} -- @var{addr1+offset1}@*  \g Define a structure/type descriptor @var{name} with alignment
 \g Create a field @var{name} with offset @var{offset1}, and the type  \g @var{align} and size @var{size1} (@var{size} rounded up to be a
 \g given by @var{size align}. @var{offset2} is the offset of the  \g multiple of @var{align}).@*
 \g next field, and @var{align2} is the alignment of all fields.  \g @code{name} execution: -- @var{align size1}@*
     over nalign \ pad size to full alignment      over nalign \ pad size to full alignment
     2constant ;      2constant ;
   


Generate output suitable for use with a patch program
Legend:
Removed from v.1.15  
changed lines
  Added in v.1.16

CVS Admin

Powered by ViewCVS 1.0-dev
(Powered by ViewCVS)

ViewCVS and CVS Help