
Module: ppl/ppl Branch: master Commit: d4d1ad3031cd681d2ff48d1e9d6990b5dbe32089 URL: http://www.cs.unipr.it/git/gitweb.cgi?p=ppl/ppl.git;a=commit;h=d4d1ad3031cd6...
Author: Enea Zaffanella zaffanella@cs.unipr.it Date: Tue Apr 13 10:21:28 2010 +0200
Avoid assertion crash on universe polyhedra.
---
src/termination.cc | 7 +++++++ 1 files changed, 7 insertions(+), 0 deletions(-)
diff --git a/src/termination.cc b/src/termination.cc index e2749ab..bd9bc7e 100644 --- a/src/termination.cc +++ b/src/termination.cc @@ -853,6 +853,13 @@ all_affine_ranking_functions_PR_original(const Constraint_System& cs, const dimension_type n = cs.space_dimension() / 2; const dimension_type m = distance(cs.begin(), cs.end());
+ if (m == 0) { + // If there are no constraints at all, we have non-termination, + // i.e., no affine ranking function at all. + mu_space = NNC_Polyhedron(n + 1, EMPTY); + return; + } + Constraint_System cs_eqs; Linear_Expression le_ineq; fill_constraint_system_PR_original(cs, cs_eqs, le_ineq);