package goblint

  1. Overview
  2. Docs
Legend:
Library
Module
Module type
Parameter
Class
Class type
include module type of struct include Analyses.IdentitySpec end
include module type of struct include Analyses.DefaultSpec end

Relatively safe default implementations of some boring Spec functions.

module P = Analyses.UnitP
type marshal = unit
val init : 'a -> unit
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 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 enter : ('a, 'b, 'c, 'd) Analyses.ctx -> GoblintCil.lval option -> GoblintCil.fundec -> GoblintCil.exp list -> ('a * 'a) list
val combine_assign : ('a, 'b, 'c, 'd) Analyses.ctx -> GoblintCil.lval option -> 'e -> GoblintCil.fundec -> GoblintCil.exp list -> 'f -> 'g -> Queries.ask -> 'a
val threadenter : ('a, 'b, 'c, 'd) Analyses.ctx -> 'e -> 'f -> 'g -> 'a list
val name : unit -> string
module D : sig ... end
module C = D
module G = D
module V : sig ... end
val threadreturn : (TIDs.t * bool, TIDs.t * bool, 'a, Goblint_lib__ThreadIdDomain.Thread.t) Analyses.ctx -> unit
val return : (D.t, TIDs.t * bool, 'a, Goblint_lib__ThreadIdDomain.Thread.t) Analyses.ctx -> GoblintCil.exp option -> GoblintCil.fundec -> D.t
val special : (D.t, TIDs.t * bool, 'a, Goblint_lib__ThreadIdDomain.Thread.t) Analyses.ctx -> GoblintCil.lval option -> GoblintCil.varinfo -> GoblintCil.exp list -> D.t
val threadspawn : (MustTIDs.t * CleanExit.t, 'a, 'b, 'c) Analyses.ctx -> 'd -> 'e -> 'f -> ('g, 'h, 'i, 'j) Analyses.ctx -> MustTIDs.t * CleanExit.t
val query : (ConcDomain.MustThreadSet.t * bool, 'b, 'c, 'd) Analyses.ctx -> 'a Queries.t -> 'a Queries.result
val combine_env : ([ `Lifted of BatSet.Make(Goblint_lib__.ThreadIdDomain.FlagConfiguredTID).t | `Top ] * bool, 'a, 'b, 'c) Analyses.ctx -> 'd -> 'e -> 'f -> 'g -> 'h -> ([ `Lifted of BatSet.Make(Goblint_lib__.ThreadIdDomain.FlagConfiguredTID).t | `Top ] * bool) -> 'i -> [ `Lifted of BatSet.Make(Goblint_lib__.ThreadIdDomain.FlagConfiguredTID).t | `Top ] * bool
val startstate : 'a -> [ `Lifted of BatSet.Make(Goblint_lib__.ThreadIdDomain.FlagConfiguredTID).t | `Top ] * bool
val exitstate : 'a -> [ `Lifted of BatSet.Make(Goblint_lib__.ThreadIdDomain.FlagConfiguredTID).t | `Top ] * bool
OCaml

Innovation. Community. Security.