Module Va_types

module Va_types: sig .. end

type variadic_class = 
| Unknown (*

Function declared and not known by Frama-C

*)
| Defined (*

Function for which we have the definition in the project

*)
| Misc (*

Function from the Frama-C lib

*)
| Overload of overload (*

Function from the Frama-C lib which declines into a finite number of possible prototypes whose names are given in the list

*)
| Aggregator of aggregator (*

Function from the Frama-C lib which has a not-variadic equivalent with the variadic part replaced by an array. (The array is the aggregation of the arguments from the variadic part.

*)
| FormatFun of format_fun (*

Function from the Frama-C lib for which the argument count and type is fixed by a format argument.

*)
type overload = (Cil_types.typ list * Cil_types.varinfo) list 
type aggregator = {
   a_target : Cil_types.varinfo;
   a_pos : int;
   a_type : aggregator_type;
   a_param : string * Cil_types.typ;
}
type aggregator_type = 
| EndedByNull
type format_fun = {
   f_kind : Format_types.format_kind;
   f_buffer : buffer;
   f_format_pos : int;
}
type buffer = 
| StdIO (*

Standard input/output (stdin/stdout/stderr)

*)
| Arg of int * int option
| Stream of int
| File of int
| Syslog
type variadic_function = {
   vf_decl : Cil_types.varinfo;
   vf_original_type : Cil_types.typ;
   vf_class : variadic_class;
   mutable vf_specialization_count : int;
}