let var_name v =
let var_name, id = match v with
| VarT (v, None, _) -> v, None
| VarT (v, Some id, _) -> (v^"_"), Some id
| VarL (v, _) ->
let name = v.Cil_types.lv_name in
let id = match v.Cil_types.lv_origin with Some _ -> None
| _ -> Some v.Cil_types.lv_id
in name, id
in match id with None -> var_name
| Some id -> var_name^"_"^(string_of_int id)