@@ -80,6 +80,23 @@ ::jbmc_parse_optionst::jbmc_parse_optionst(
80
80
{
81
81
}
82
82
83
+ void jbmc_parse_optionst::set_default_options (optionst &options)
84
+ {
85
+ // Default true
86
+ options.set_option (" assertions" , true );
87
+ options.set_option (" assumptions" , true );
88
+ options.set_option (" built-in-assertions" , true );
89
+ options.set_option (" pretty-names" , true );
90
+ options.set_option (" propagation" , true );
91
+ options.set_option (" refine-strings" , true );
92
+ options.set_option (" sat-preprocessor" , true );
93
+ options.set_option (" simplify" , true );
94
+ options.set_option (" simplify-if" , true );
95
+
96
+ // Other default
97
+ options.set_option (" arrays-uf" , " auto" );
98
+ }
99
+
83
100
void jbmc_parse_optionst::get_command_line_options (optionst &options)
84
101
{
85
102
if (config.set (cmdline))
@@ -88,6 +105,8 @@ void jbmc_parse_optionst::get_command_line_options(optionst &options)
88
105
exit (1 ); // should contemplate EX_USAGE from sysexits.h
89
106
}
90
107
108
+ jbmc_parse_optionst::set_default_options (options);
109
+
91
110
if (cmdline.isset (" show-symex-strategies" ))
92
111
{
93
112
std::cout << path_strategy_chooser.show_strategies ();
@@ -107,15 +126,11 @@ void jbmc_parse_optionst::get_command_line_options(optionst &options)
107
126
108
127
if (cmdline.isset (" no-simplify" ))
109
128
options.set_option (" simplify" , false );
110
- else
111
- options.set_option (" simplify" , true );
112
129
113
130
if (cmdline.isset (" stop-on-fail" ) ||
114
131
cmdline.isset (" dimacs" ) ||
115
132
cmdline.isset (" outfile" ))
116
133
options.set_option (" stop-on-fail" , true );
117
- else
118
- options.set_option (" stop-on-fail" , false );
119
134
120
135
if (cmdline.isset (" trace" ) ||
121
136
cmdline.isset (" stop-on-fail" ))
@@ -148,8 +163,6 @@ void jbmc_parse_optionst::get_command_line_options(optionst &options)
148
163
// constant propagation
149
164
if (cmdline.isset (" no-propagation" ))
150
165
options.set_option (" propagation" , false );
151
- else
152
- options.set_option (" propagation" , true );
153
166
154
167
// transform self loops to assumptions
155
168
options.set_option (
@@ -166,14 +179,10 @@ void jbmc_parse_optionst::get_command_line_options(optionst &options)
166
179
// check assertions
167
180
if (cmdline.isset (" no-assertions" ))
168
181
options.set_option (" assertions" , false );
169
- else
170
- options.set_option (" assertions" , true );
171
182
172
183
// use assumptions
173
184
if (cmdline.isset (" no-assumptions" ))
174
185
options.set_option (" assumptions" , false );
175
- else
176
- options.set_option (" assumptions" , true );
177
186
178
187
// generate unwinding assertions
179
188
if (cmdline.isset (" cover" ))
@@ -206,15 +215,11 @@ void jbmc_parse_optionst::get_command_line_options(optionst &options)
206
215
// simplify if conditions and branches
207
216
if (cmdline.isset (" no-simplify-if" ))
208
217
options.set_option (" simplify-if" , false );
209
- else
210
- options.set_option (" simplify-if" , true );
211
218
212
219
if (cmdline.isset (" arrays-uf-always" ))
213
220
options.set_option (" arrays-uf" , " always" );
214
221
else if (cmdline.isset (" arrays-uf-never" ))
215
222
options.set_option (" arrays-uf" , " never" );
216
- else
217
- options.set_option (" arrays-uf" , " auto" );
218
223
219
224
if (cmdline.isset (" dimacs" ))
220
225
options.set_option (" dimacs" , true );
@@ -238,8 +243,8 @@ void jbmc_parse_optionst::get_command_line_options(optionst &options)
238
243
options.set_option (" refine-arithmetic" , true );
239
244
}
240
245
241
- if (! cmdline.isset (" no-refine-strings" ))
242
- options.set_option (" refine-strings" , true );
246
+ if (cmdline.isset (" no-refine-strings" ))
247
+ options.set_option (" refine-strings" , false );
243
248
244
249
if (cmdline.isset (" string-printable" ))
245
250
options.set_option (" string-printable" , true );
@@ -350,8 +355,6 @@ void jbmc_parse_optionst::get_command_line_options(optionst &options)
350
355
351
356
if (cmdline.isset (" no-sat-preprocessor" ))
352
357
options.set_option (" sat-preprocessor" , false );
353
- else
354
- options.set_option (" sat-preprocessor" , true );
355
358
356
359
options.set_option (
357
360
" pretty-names" ,
0 commit comments