On Feb 13, 2009, at 9:01 AM, Ben Laurie wrote: > It is my belief that we should never be asked if an empty range set > could match any criterion - because the only way it can get into that > state is by ruling out all possible values, which is surely > impossible?
It depends on your algorithm. Certainly no GRState should reference a RangeSet that has an empty set, but an empty set could be very useful in the internal logic of AssumeSymEQ. Essentially, each 'Add' method adds another term to a conjunction of constraints, with the RangeSet representing the set of values that are possible that satisfy that conjunction. Determine satisfiability of that conjunction just reduces down to testing the emptiness of the resultant RangeSet. My idea was to consolidate AddEQ and CouldBeEQ into one short method that just added the constraint. If the result was the empty set then we know that adding that constraint is infeasible. For methods like AssumeSymEQ, they could just change if the RangetSet was empty to determine the value of 'isFeasible'. _______________________________________________ cfe-commits mailing list [email protected] http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
