--- layout: fc_discuss_archives title: Message 54 from Frama-C-discuss on February 2012 ---
Hello, On 02/15/2012 07:28 AM, Boris Hollas wrote: > I wrote > > let prj = File.create_project_from_visitor "foo" (new foo) in > Project.set_current prj; > Dynamic.Parameter.String.set "-jessie-atp" "gui"; > (Dynamic.get ~plugin:"Jessie" "run_analysis" (Datatype.func > Datatype.unit Datatype.unit)) () > > to use the results of plugin foo in Jessie. However, this crashes Jessie > on some C-files and results can't be used by eg wp. What's the proper > way to pipe plugins? That is a possible way. But unfortunately Jessie does not work so well in multi-projects mode. You can try to call the following function before computing the AST of the initial project (and thus at least before calling File.create_project_from_visitor). let prepare_jessie () = Kernel.SimplifyCfg.on (); Kernel.KeepSwitch.on (); Kernel.Constfold.on (); Kernel.PreprocessAnnot.on (); Cabs2cil.setDoTransformWhile (); Cabs2cil.setDoAlternateConditional () Jessie is happy now in simple cases, but I provide no guarantee that it is enough in all situations... -- Julien