let field loc f =
      if f.fcomp.cstruct then
        let pos = offset_of_field f in
        match loc with
          | Model.Loc(b,d) -> Model.Loc(b,(add d pos))
          | Model.Addr p -> Model.Addr (model_addr_shift p pos)
      else
        unsupported "union field"