package goblint

  1. Overview
  2. Docs
Static analysis framework for C

Install

Dune Dependency

Authors

Maintainers

Sources

goblint-2.0.0.tbz
sha256=2f4f2e25b765452f0e336941f35f6cb396d7c213a2d347abe5d35febc5159b1f
sha512=e96af4cad91f6985c8db93c194925853e96cad0ec1a0d9f4d32bbe16d3e5fa1e305f54be02839f21ba89ad2af0c2d5d7aa819ade221ce097dc4dbd0fcd8c8500

doc/goblint.lib/Goblint_lib/MutexAnalysis/MakeSpec/index.html

Module MutexAnalysis.MakeSpec

Parameters

module P : SpecParam

Signature

module Arg : sig ... end
include sig ... end
type marshal = unit
val init : 'a -> unit
val finalize : unit -> unit
val vdecl : ('a, 'b, 'c, 'd) Goblint_lib__Analyses.ctx -> 'e -> 'a
val asm : ('a, 'b, 'c, 'd) Goblint_lib__Analyses.ctx -> 'a
val skip : ('a, 'b, 'c, 'd) Goblint_lib__Analyses.ctx -> 'a
val morphstate : 'a -> 'b -> 'b
val sync : ('a, 'b, 'c, 'd) Goblint_lib__Analyses.ctx -> 'e -> 'a
val context : 'a -> 'b -> 'b
val assign : ('a, 'b, 'c, 'd) Goblint_lib__Analyses.ctx -> GoblintCil.lval -> GoblintCil.exp -> 'a
val branch : ('a, 'b, 'c, 'd) Goblint_lib__Analyses.ctx -> GoblintCil.exp -> bool -> 'a
val body : ('a, 'b, 'c, 'd) Goblint_lib__Analyses.ctx -> GoblintCil.fundec -> 'a
val return : ('a, 'b, 'c, 'd) Goblint_lib__Analyses.ctx -> GoblintCil.exp option -> GoblintCil.fundec -> 'a
val enter : ('a, 'b, 'c, 'd) Goblint_lib__Analyses.ctx -> GoblintCil.lval option -> GoblintCil.fundec -> GoblintCil.exp list -> ('a * 'a) list
val combine : 'a -> GoblintCil.lval option -> 'b -> GoblintCil.fundec -> GoblintCil.exp list -> 'c -> 'd -> 'd
val special : ('a, 'b, 'c, 'd) Goblint_lib__Analyses.ctx -> GoblintCil.lval option -> GoblintCil.varinfo -> GoblintCil.exp list -> 'a
val threadspawn : ('a, 'b, 'c, 'd) Goblint_lib__Analyses.ctx -> 'e -> 'f -> 'g -> 'h -> 'a
module C : sig ... end
val startstate : 'a -> Arg.D.t
val threadenter : 'a -> 'b -> 'c -> 'd -> Arg.D.t list
val exitstate : 'a -> Arg.D.t
val name : unit -> string
module D = Arg.D
val should_join : D.t -> D.t -> bool
module G = P.G

Global data is collected using dirty side-effecting.

val conv_offset_inv : [< `Field of 'b * 'a | `Index of Goblint_lib.ValueDomain.IndexDomain.t * 'a | `NoOffset ] as 'a -> [> `Field of 'b * 'c | `Index of Prelude.Ana.exp * 'c | `NoOffset ] as 'c
module A : sig ... end
val access : ('a, 'b, 'c, 'd) Analyses.ctx -> Queries.access -> 'a
OCaml

Innovation. Community. Security.