ValueDomainDomain for a single Base analysis value.
include module type of struct include PreValueDomain endmodule ID = PreValueDomain.IDmodule FD = PreValueDomain.FDmodule IndexDomain = PreValueDomain.IndexDomainmodule Mval = PreValueDomain.Mvalmodule Addr = PreValueDomain.Addrmodule Offs : sig ... endmodule M = Messagesmodule MutexAttr = MutexAttrDomainmodule VDQ = ValueDomainQueriesmodule AD = VDQ.ADmodule AddrSetDomain : sig ... endmodule ArrIdxDomain = IndexDomainmodule type S = sig ... endmodule type Blob = sig ... endmodule type ZeroInit = sig ... endmodule Blob (Value : S) (Size : IntDomain.Z) : sig ... endmodule Threads = ConcDomain.ThreadSetmodule JmpBufs = JmpBufDomain.JmpBufSetTaintmodule Compound : sig ... endmodule Structs :
StructDomain.S
with type field = GoblintCil.fieldinfo
and type value = Compound.tmodule Unions :
UnionDomain.S
with type t = UnionDomain.Field.t * Compound.t
and type value = Compound.tmodule CArrays :
ArrayDomain.StrWithDomain
with type value = Compound.t
and type idx = ArrIdxDomain.tmodule Blobs :
Blob
with type size = ID.t
and type value = Compound.t
and type zeroinit = ZeroInit.tmodule type InvariantArg = sig ... endmodule ValueInvariant (Arg : InvariantArg) : sig ... endval invariant_global :
(GoblintCil.varinfo -> CArrays.value) ->
GoblintCil.varinfo ->
Invariant.t