GoblintCil.FeatureSourceExtending CIL with external features
type t = {mutable fd_enabled : bool;The enable flag. Set to default value
*)fd_name : string;This is used to construct an option "--doxxx" and "--dontxxx" that enable and disable the feature
*)fd_description : string;A longer name that can be used to document the new options
*)fd_extraopt : (string * Arg.spec * string) list;Additional command line options. The description strings should usually start with a space for Arg.align to print the --help nicely.
*)fd_doit : Cil.file -> unit;This performs the transformation
*)fd_post_check : bool;Whether to perform a CIL consistency checking after this stage, if checking is enabled (--check is passed to cilly). Set this to true if your feature makes any changes for the program.
*)}Description of a CIL feature.
Check if a given feature is registered.
Find a feature by name. Raise Not_found if the feature is not registered.
Enable a given feature, by name. Raise Errormsg.Error if the feature is not registered.
Check if a given feature is enabled. Return false if the feature is not registered.