package frama-c
Install
dune-project
Dependency
Authors
-
MMichele Alberti
-
TThibaud Antignac
-
GGergö Barany
-
PPatrick Baudin
-
NNicolas Bellec
-
TThibaut Benjamin
-
AAllan Blanchard
-
LLionel Blatter
-
FFrançois Bobot
-
RRichard Bonichon
-
VVincent Botbol
-
QQuentin Bouillaguet
-
DDavid Bühler
-
ZZakaria Chihani
-
SSylvain Chiron
-
LLoïc Correnson
-
JJulien Crétin
-
PPascal Cuoq
-
ZZaynah Dargaye
-
BBasile Desloges
-
JJean-Christophe Filliâtre
-
PPhilippe Herrmann
-
JJordan Ischard
-
MMaxime Jacquemin
-
BBenjamin Jorge
-
FFlorent Kirchner
-
AAlexander Kogtenkov
-
RRemi Lazarini
-
TTristan Le Gall
-
KKilyan Le Gallic
-
JJean-Christophe Léchenet
-
MMatthieu Lemerre
-
DDara Ly
-
DDavid Maison
-
CClaude Marché
-
AAndré Maroneze
-
TThibault Martin
-
FFonenantsoa Maurica
-
MMelody Méaulle
-
BBenjamin Monate
-
NNicky Mouha
-
YYannick Moy
-
PPierre Nigron
-
AAnne Pacalet
-
VValentin Perrelle
-
GGuillaume Petiot
-
DDario Pinto
-
VVirgile Prevosto
-
AArmand Puccetti
-
FFélix Ridoux
-
VVirgile Robles
-
JJan Rochel
-
MMuriel Roger
-
CCécile Ruet-Cros
-
JJulien Signoles
-
FFabien Siron
-
NNicolas Stouls
-
HHugo Thievenaz
-
KKostyantyn Vorobyov
-
BBoris Yakobowski
Maintainers
Sources
sha256=9c1cbffd28bb33c17a668107e39c96e4ae7378a3d8249f69b47afc7ee964e9b8
doc/frama-c-eva.core/Eva/Logic_inout/index.html
Module Eva.Logic_inout
Interpretation of predicates and assigns clauses for Inout and From plugins.
Functions used by the Inout and From plugins to interpret predicate and assigns clauses. This API may change according to these plugins development.
val predicate_deps :
pre:Frama_c_kernel.Cvalue.Model.t ->
here:Frama_c_kernel.Cvalue.Model.t ->
Frama_c_kernel.Cil_types.predicate ->
Frama_c_kernel.Memory_zone.t optionpredicate_deps ~pre ~here p computes the logic dependencies needed to evaluate the predicate p in cvalue state here, in a function whose pre-state is pre. Returns None on either an evaluation error or on unsupported construct.
val valid_behaviors :
Frama_c_kernel.Cil_types.kernel_function ->
Frama_c_kernel.Cvalue.Model.t ->
Frama_c_kernel.Cil_types.behavior listReturns the list of behaviors of the given function that are active for the given initial state.
val assigns_inputs_to_zone :
Frama_c_kernel.Cvalue.Model.t ->
Frama_c_kernel.Cil_types.assigns ->
Frama_c_kernel.Memory_zone.tEvaluation of the memory zone read by the \from part of an assigns clause, in the given cvalue state.
val assigns_outputs_to_zone :
result:Frama_c_kernel.Cil_types.varinfo option ->
Frama_c_kernel.Cvalue.Model.t ->
Frama_c_kernel.Cil_types.assigns ->
Frama_c_kernel.Memory_zone.tEvaluation of the memory zone written by an assigns clauses, in the given cvalue state.
type tlval_zones = {under : Frama_c_kernel.Memory_zone.t;(*Under-approximation of the memory zone.
*)over : Frama_c_kernel.Memory_zone.t;(*Over-approximation of the memory zone.
*)deps : Frama_c_kernel.Memory_zone.t;(*Dependencies needed to evaluate the address.
*)
}Zones of an lvalue term of an assigns clause.
Context of an evaluation: in a statement annotation or an assigns clause.
val tlval_to_zones :
annotation ->
Frama_c_kernel.Cvalue.Model.t ->
Frama_c_kernel.Locations.access ->
Frama_c_kernel.Cil_types.term ->
tlval_zones optionEvaluation of the memory zones and dependencies of an lvalue term, in the given cvalue state for a read or write access.
val verify_assigns :
Frama_c_kernel.Cil_types.kernel_function ->
pre:Frama_c_kernel.Cvalue.Model.t ->
Assigns.t ->
unitEvaluate the assigns clauses of the given function in its given pre-state, and compare them with the dependencies computed by the from plugin. Emits warnings if needed, and sets statuses to the assigns clauses.
val accept_base :
formals:bool ->
locals:bool ->
Frama_c_kernel.Kernel_function.t ->
Frama_c_kernel.Base.t ->
boolaccept_base ~formals ~locals kf b returns true if and only if b is:
- a global except if it represents a string literal
- a formal or local of one of the callers of
kf - a formal or local of
kfand the corresponding argument istrue.