20
20
#include " ic3_engine.h"
21
21
#include " liveness_to_safety.h"
22
22
#include " neural_liveness.h"
23
+ #include " output_file.h"
23
24
#include " property_checker.h"
24
25
#include " random_traces.h"
25
26
#include " ranking_function.h"
@@ -274,9 +275,12 @@ int ebmc_parse_optionst::doit()
274
275
netlistt netlist;
275
276
if (ebmc_base.make_netlist (netlist))
276
277
return 1 ;
277
- std::cout << " digraph netlist {\n " ;
278
- netlist.output_dot (std::cout);
279
- std::cout << " }\n " ;
278
+ auto filename =
279
+ cmdline.isset (" outfile" ) ? cmdline.get_value (" outfile" ) : " -" ;
280
+ output_filet outfile{filename};
281
+ outfile.stream () << " digraph netlist {\n " ;
282
+ netlist.output_dot (outfile.stream ());
283
+ outfile.stream () << " }\n " ;
280
284
return 0 ;
281
285
}
282
286
@@ -285,11 +289,15 @@ int ebmc_parse_optionst::doit()
285
289
netlistt netlist;
286
290
if (ebmc_base.make_netlist (netlist))
287
291
return 1 ;
288
- std::cout << " -- Generated by EBMC " << EBMC_VERSION << ' \n ' ;
289
- std::cout << " -- Generated from "
290
- << ebmc_base.transition_system .main_symbol ->name << ' \n ' ;
291
- std::cout << ' \n ' ;
292
- netlist.output_smv (std::cout);
292
+ auto filename =
293
+ cmdline.isset (" outfile" ) ? cmdline.get_value (" outfile" ) : " -" ;
294
+ output_filet outfile{filename};
295
+ outfile.stream () << " -- Generated by EBMC " << EBMC_VERSION << ' \n ' ;
296
+ outfile.stream () << " -- Generated from "
297
+ << ebmc_base.transition_system .main_symbol ->name
298
+ << ' \n ' ;
299
+ outfile.stream () << ' \n ' ;
300
+ netlist.output_smv (outfile.stream ());
293
301
return 0 ;
294
302
}
295
303
0 commit comments