module State: sig
.. end
State of the analysis
State of the analysis
module M: sig
.. end
Map of zone --> status
type
t = {
}
val pretty : Format.formatter -> t -> unit
val find_zone_status : t -> Locations.Zone.t -> M.y
val find_loc_status : t -> Locations.location -> M.y
val find_loc_status_with_deps : ?with_deps:bool ->
t -> Locations.location -> Model.Make.L.t1
type
exp_status =
Status of an expression.
val pretty_status : Format.formatter -> exp_status -> unit
Debugging purpose
val last_stmt : Cil_types.stmt Pervasives.ref
type
call = {
}
val call_stack : call Stack.t
val reset : unit -> t
val lval_to_loc : Db.Value.state -> Cil_types.lval -> Locations.location
val status_of_deps : Db.Value.state -> t -> S.t
val join_deps : Db.Value.state -> t -> S.t -> S.t
val find_loc_or_status : ?with_deps:bool ->
Db.Value.state ->
t -> Cil_types.exp -> exp_status
val find_exp_status : ?with_deps:bool ->
Db.Value.state -> t -> Cil_types.exp -> Model.Make.L.t1
val is_included : t -> t -> bool
val combine : old:t -> t -> t
val change_loc_status : Db.Value.state ->
t ->
Locations.location -> exp_status -> t
val change_lval_status : Db.Value.state ->
t ->
Cil_types.lval -> exp_status -> t
val change_lval_exp : Db.Value.state ->
t -> Cil_types.lval -> Cil_types.exp -> t
val clear_leaks : t -> t
val push_call : Db.Value.state ->
Db_types.kernel_function ->
Cil_types.exp list -> t -> t
val pop_call : Cil_types.kinstr ->
Cil_types.fundec ->
Cil_types.exp list ->
old:t -> t -> t
val print_results : t -> unit
val add_leak : potential:bool ->
t -> Cil_types.kinstr -> Cil_types.exp -> t