File tree 1 file changed +8
-2
lines changed
1 file changed +8
-2
lines changed Original file line number Diff line number Diff line change @@ -58,11 +58,17 @@ void constant_propagator_domaint::transform(
58
58
output (std::cout, ai, ns);
59
59
#endif
60
60
61
+ // When the domain is used with constant_propagator_ait,
62
+ // information about dirty variables and config flags are
63
+ // available. Otherwise, the below will be null and we use default
64
+ // values
61
65
const constant_propagator_ait *cp=
62
66
dynamic_cast <constant_propagator_ait *>(&ai);
63
67
bool have_dirty=(cp!=nullptr );
64
68
65
- assert (!values.is_bottom );
69
+ // INVARIANT(!values.is_bottom);
70
+ if (values.is_bottom )
71
+ return ;
66
72
67
73
if (from->is_decl ())
68
74
{
@@ -315,7 +321,7 @@ bool constant_propagator_domaint::valuest::set_to_top(const irep_idt &id)
315
321
replace_symbolt::expr_mapt::size_type n_erased=
316
322
replace_const.expr_map .erase (id);
317
323
318
- INVARIANT (n_erased==0 || !is_bottom, " bottom => 0 erased " );
324
+ INVARIANT (n_erased==0 || !is_bottom, " bottom should have no elements at all " );
319
325
320
326
return n_erased>0 ;
321
327
}
You can’t perform that action at this time.
0 commit comments