let tlval_fetcher_visitor () = object(self)
inherit nopCilVisitor
val mutable lvals : term list = []
method private add_tlval lv =
lvals <- lv :: lvals
method fetch_lvals () = lvals
method vterm t =
match t.term_node with
| TConst _ | TSizeOf _ | TSizeOfStr _
| TAlignOf _ | Tnull | Ttype _ | Tempty_set -> SkipChildren
| Tat _ -> self#add_tlval t ; SkipChildren
| Tunion _
| Tinter _
| TLval _ -> self#add_tlval t ; DoChildren
| _ -> DoChildren
(* TAddrOf tlv / TStartOf tlv not taken into account *)
end