st.push_back(FilterStatement());
if(condition)
- condition->add_lines(st);
+ {
+ Condition *flat = condition->flatten();
+ if(flat)
+ {
+ flat->add_lines(st);
+ delete flat;
+ }
+ // TODO handle the case of the entire condition being non-viable
+ }
}