package goblint

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

Relatively safe default implementations of some boring Spec functions.

type marshal = unit
val init : 'a -> unit
val finalize : unit -> unit
val should_join : 'a -> 'b -> bool
val call_descr : Cil.fundec -> 'a -> string
val intrpt : ('a, 'b, 'c) Analyses.ctx -> 'a
val vdecl : ('a, 'b, 'c) Analyses.ctx -> 'd -> 'a
val asm : ('a, 'b, 'c) Analyses.ctx -> 'a
val skip : ('a, 'b, 'c) Analyses.ctx -> 'a
val event : ('a, 'b, 'c) Analyses.ctx -> 'd -> 'e -> 'a
val morphstate : 'a -> 'b -> 'b
val sync : ('a, 'b, 'c) Analyses.ctx -> 'd -> 'a
val context : 'a -> 'b -> 'b
exception Top
module G = Lattice.Unit
val name : unit -> string
val startstate : 'a -> D.S.t
val threadenter : 'a -> 'b -> 'c -> 'd -> D.S.t list
val threadspawn : ('a, 'b, 'c) Analyses.ctx -> 'd -> 'e -> 'f -> 'g -> 'a
val exitstate : 'a -> D.S.t
val branch : ('a, 'b, 'c) Analyses.ctx -> 'd -> 'e -> 'a
val body : ('a, 'b, 'c) Analyses.ctx -> 'd -> 'a
val invalidate_exp : Queries.ask -> Prelude.Ana.exp -> D.S.t -> D.S.t
val invalidate_lval : Queries.ask -> Prelude.Ana.lval -> D.S.t -> D.S.t
val assign : (D.S.t, 'a, 'b) Analyses.ctx -> Prelude.Ana.lval -> 'c -> D.S.t
val return : (D.S.t, 'a, 'b) Analyses.ctx -> 'c -> Prelude.Ana.fundec -> D.S.t
val enter : ('a, 'b, 'c) Analyses.ctx -> 'd -> 'e -> 'f -> ('a * 'a) list
val combine : 'a -> 'b -> 'c -> 'd -> 'e -> 'f -> 'g -> 'g
val get_locks : Cil.exp -> D.S.t -> PS.t
val get_all_locks : Queries.ask -> Queries.ES.elt -> D.S.t -> PS.t
val same_unknown_index : Queries.ask -> Cil.exp -> D.S.t -> PS.t
val special : (D.S.t, 'a, 'b) Analyses.ctx -> Prelude.Ana.lval option -> Prelude.Ana.varinfo -> Prelude.Ana.exp list -> D.S.t
module ExpSet : sig ... end
val type_inv : Prelude.Ana.compinfo -> Lval.CilLval.t list
val conv_const_offset : Prelude.Ana.offset -> [> `Field of Prelude.Ana.fieldinfo * 'a | `Index of ValueDomain.IndexDomain.t * 'a | `NoOffset ] as 'a
val one_perelem : 'a -> (Cil.exp * Cil.exp * Cil.exp) -> ExpSet.t -> ExpSet.t
val add_per_element_access : (D.S.t, 'a, 'b) Analyses.ctx -> Queries.ES.elt -> 'c -> BatSet.Make(Access.LabeledString).t
val query : (D.S.t, 'b, 'c) Analyses.ctx -> 'a Queries.t -> 'a Queries.result