package goblint

  1. Overview
  2. Docs
Static analysis framework for C

Install

Dune Dependency

Authors

Maintainers

Sources

goblint-2.3.0.tbz
sha256=b729c94adb383a39aea32eb005c988dfd44b92af22ee6a4eedf4239542ac6c26
sha512=643b98770e5fe5644324c95c9ae3a9f698f25c8b11b298f0751d524e0b20af368b2a465fc8200b75a73d48fc9a053fd90f5e8920d4db070927f93188bb8687e0

doc/goblint.lib/Goblint_lib/WrapperFunctionAnalysis/SpecBase/index.html

Module WrapperFunctionAnalysis.SpecBase

Parameters

module UniqueCount : Lattice.S with type t = int

Signature

include module type of struct include Analyses.IdentitySpec end
include module type of struct include Analyses.DefaultSpec end
module G = Lattice.Unit
module V = Analyses.EmptyV
module P = Analyses.UnitP
val finalize : unit -> unit
val vdecl : ('a, 'b, 'c, 'd) Analyses.ctx -> 'e -> 'a
val asm : ('a, 'b, 'c, 'd) Analyses.ctx -> 'a
val skip : ('a, 'b, 'c, 'd) Analyses.ctx -> 'a
val query : 'b -> 'a Queries.t -> 'a
val event : ('a, 'b, 'c, 'd) Analyses.ctx -> 'e -> 'f -> 'a
val morphstate : 'a -> 'b -> 'b
val sync : ('a, 'b, 'c, 'd) Analyses.ctx -> 'e -> 'a
val context : 'a -> 'b -> 'b
val paths_as_set : ('a, 'b, 'c, 'd) Analyses.ctx -> 'a list
module A = Analyses.UnitA
val access : 'a -> 'b -> unit
val assign : ('a, 'b, 'c, 'd) Analyses.ctx -> GoblintCil.lval -> GoblintCil.exp -> 'a
val branch : ('a, 'b, 'c, 'd) Analyses.ctx -> GoblintCil.exp -> bool -> 'a
val body : ('a, 'b, 'c, 'd) Analyses.ctx -> GoblintCil.fundec -> 'a
val return : ('a, 'b, 'c, 'd) Analyses.ctx -> GoblintCil.exp option -> GoblintCil.fundec -> 'a
val combine_assign : ('a, 'b, 'c, 'd) Analyses.ctx -> GoblintCil.lval option -> 'e -> GoblintCil.fundec -> GoblintCil.exp list -> 'f -> 'g -> Queries.ask -> 'a
val threadspawn : ('a, 'b, 'c, 'd) Analyses.ctx -> multiple:'e -> 'f -> 'g -> 'h -> 'i -> 'a
val node_for_ctx : ('a, 'b, 'c, 'd) Analyses.ctx -> MyCFG.node
module NodeFlatLattice : sig ... end
module UniqueCount = UniqueCount
module UniqueCallCounter : sig ... end
val add_unique_call : UniqueCallCounter.t -> Node.t -> UniqueCallCounter.t
module D : sig ... end
module C = D
val wrappers : (string, unit) Stdlib.Hashtbl.t
val enter : (D.t, 'a, 'b, 'c) Analyses.ctx -> GoblintCil.lval option -> GoblintCil.fundec -> GoblintCil.exp list -> (D.t * D.t) list
val combine_env : ('a * 'b, 'c, 'd, 'e) Analyses.ctx -> 'f -> 'g -> 'h -> 'i -> 'j -> ('k * 'l) -> 'm -> 'a * 'l
val add_unique_call_ctx : ([> `Lifted of Node.t ] as 'a * UniqueCallCounter.t, 'b, 'c, 'd) Analyses.ctx -> 'a * UniqueCallCounter.t
val special : (D.t, G.t, C.t, V.t) Analyses.ctx -> GoblintCil.lval option -> GoblintCil.varinfo -> GoblintCil.exp list -> D.t
val startstate : 'a -> NodeFlatLattice.t * UniqueCallCounter.t
val threadenter : 'a -> multiple:'b -> 'c -> 'd -> 'e -> (NodeFlatLattice.t * UniqueCallCounter.t) list
val exitstate : 'a -> NodeFlatLattice.t * UniqueCallCounter.t
type marshal = unit
val init : marshal option -> unit
OCaml

Innovation. Community. Security.