method vtype t =
match t with
TComp(cinfo, _, _) ->
if(not (List.exists (fun x -> cinfo.cname = x) !visited )) then begin
visited := cinfo.cname :: !visited;
List.iter
(fun f ->
if (hasAttribute target f.fattr) then
rflag := true
else
ignore(visitCilType (new attribute_checker target rflag)
f.ftype)) cinfo.cfields;
end;
DoChildren
| TNamed(t1, _a) ->
if(not (List.exists (fun x -> t1.tname = x) !visited )) then begin
visited := t1.tname :: !visited;
ignore(visitCilType (new attribute_checker target rflag) t1.ttype);
end;
DoChildren
| _ ->
DoChildren