package mopsa
MOPSA: A Modular and Open Platform for Static Analysis using Abstract Interpretation
Install
dune-project
Dependency
Authors
Maintainers
Sources
mopsa-analyzer-v1.2.tar.gz
md5=37966e98ffeebcedc09bd6e9b2b81f69
sha512=40d4d826c25f680766c07eccbabdf5e8a4fa023016e8a164e4e4f6b3781c8484dc4df437055721dfd19b9db8fb7fe3b61236c4833186d346fc7204a68d01eaaa
doc/mopsa.mopsa_analyzer/Mopsa_analyzer/Languages/C/Libs/Libc/Variadic/Domain/index.html
Module Variadic.Domain
Domain identification
=====================
include sig ... end
val debug : ('a, Format.formatter, unit, unit) format4 -> 'a
val universal : MopsaLib.route
val checks : MopsaLib.check list
Flow-insensitive annotations
============================
module C1 : sig ... end
val va_list_map_ctx :
('a,
(MopsaLib.callstack * MopsaLib.typ list) Mopsa_analyzer.MopsaLib.VarMap.t)
Mopsa_analyzer__Framework__Core__Context.ctx_key
val get_va_list_map :
'a Mopsa_analyzer.MopsaLib.Flow.flow ->
(MopsaLib.callstack * MopsaLib.typ list) Mopsa_analyzer.MopsaLib.VarMap.t
val set_va_list_map :
(MopsaLib.callstack * MopsaLib.typ list) Mopsa_analyzer.MopsaLib.VarMap.t ->
'a Mopsa_analyzer.MopsaLib.Flow.flow ->
'a Mopsa_analyzer.MopsaLib.Flow.flow
module C2 : sig ... end
val unnamed_params_typs_ctx :
('a, MopsaLib.typ list) Mopsa_analyzer__Framework__Core__Context.ctx_key
val get_unnamed_params_typs :
'a Mopsa_analyzer.MopsaLib.Flow.flow ->
MopsaLib.typ list
val set_unnamed_params_typs :
MopsaLib.typ list ->
'a Mopsa_analyzer.MopsaLib.Flow.flow ->
'a Mopsa_analyzer.MopsaLib.Flow.flow
Transfer functions
======================
Auxiliary variables
type MopsaLib.var_kind +=
| V_c_variadic_param of MopsaLib.callstack * int
| V_c_variadic_counter of MopsaLib.var
val mk_param :
MopsaLib.callstack ->
int ->
Framework.Core.Ast.Typ.typ ->
MopsaLib.var
val mk_counter : MopsaLib.var -> MopsaLib.var
Variadic functions
======================
val call_variadic_function :
Lang.Ast.c_fundec ->
MopsaLib.expr list ->
Mopsa_utils.Core.Location.range ->
('a, 'b) MopsaLib.man ->
'a Mopsa_analyzer.MopsaLib.Flow.flow ->
('a, Framework.Core.Ast.Expr.expr) Core.Cases.cases
Evaluate a call to a variadic function
val resolve_va_list :
MopsaLib.expr ->
Mopsa_utils.Core.Location.range ->
('a, 'b) MopsaLib.man ->
'a Core.Flow.flow ->
('a, MopsaLib.var) Mopsa_analyzer.MopsaLib.Cases.cases
val va_start :
MopsaLib.expr ->
MopsaLib.var ->
Mopsa_utils.Core.Location.range ->
('a, 'b) MopsaLib.man ->
'a Mopsa_analyzer.MopsaLib.Flow.flow ->
('a, Framework.Core.Ast.Expr.expr) Mopsa_analyzer.MopsaLib.Cases.cases
Evaluate calls to va_start
val va_arg :
MopsaLib.expr ->
MopsaLib.typ ->
Mopsa_utils.Core.Location.range ->
('a, 'b) MopsaLib.man ->
'a Mopsa_analyzer.MopsaLib.Flow.flow ->
('a, Framework.Core.Ast.Expr.expr) Mopsa_analyzer.MopsaLib.Cases.cases
Evaluate calls to va_arg
val va_end :
MopsaLib.expr ->
Mopsa_utils.Core.Location.range ->
('a, 'b) MopsaLib.man ->
'a Core.Flow.flow ->
('a, Framework.Core.Ast.Expr.expr) Mopsa_analyzer.MopsaLib.Cases.cases
Evaluate calls to va_end
val va_copy :
MopsaLib.expr ->
MopsaLib.expr ->
Mopsa_utils.Core.Location.range ->
('a, 'b) MopsaLib.man ->
'a Mopsa_analyzer.MopsaLib.Flow.flow ->
('a, Framework.Core.Ast.Expr.expr) Mopsa_analyzer.MopsaLib.Cases.cases
Evaluate calls to va_copy
Evaluation entry point
==========================
val eval :
MopsaLib.expr ->
('a, 'b) MopsaLib.man ->
'a Mopsa_analyzer.MopsaLib.Flow.flow ->
('a, Framework.Core.Ast.Expr.expr) Core.Cases.cases option
val print_expr :
('a, 'b) MopsaLib.man ->
'a Mopsa_analyzer.MopsaLib.Flow.flow ->
Framework.Core.Print.printer ->
MopsaLib.expr ->
unit
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>
On This Page