[GIT] ppl/ppl(master): Make sure each case within a switch statement is properly terminated.

Module: ppl/ppl Branch: master Commit: ab67c65fbe7043f3d3defced489c04494909345c URL: http://www.cs.unipr.it/git/gitweb.cgi?p=ppl/ppl.git;a=commit;h=ab67c65fbe704...
Author: Roberto Bagnara bagnara@cs.unipr.it Date: Sun Feb 12 21:43:25 2012 +0100
Make sure each case within a switch statement is properly terminated. Detected by ECLAIR service swchbrek.
---
src/BD_Shape.templates.hh | 2 ++ src/Grid_conversion.cc | 2 ++ src/Grid_public.cc | 5 +++-- src/Grid_simplify.cc | 2 ++ src/Octagonal_Shape.templates.hh | 2 ++ 5 files changed, 11 insertions(+), 2 deletions(-)
diff --git a/src/BD_Shape.templates.hh b/src/BD_Shape.templates.hh index 8b74cac..8ef7bfe 100644 --- a/src/BD_Shape.templates.hh +++ b/src/BD_Shape.templates.hh @@ -1512,6 +1512,8 @@ BD_Shape<T>::relation_with(const Constraint& c) const { case -1: return Poly_Con_Relation::strictly_intersects(); } + PPL_UNREACHABLE; + break; case 0: if (min_numer == 0) { if (c.is_strict_inequality()) diff --git a/src/Grid_conversion.cc b/src/Grid_conversion.cc index 0149624..2cbcee5 100644 --- a/src/Grid_conversion.cc +++ b/src/Grid_conversion.cc @@ -464,8 +464,10 @@ Grid::conversion(Congruence_System& source, Grid_Generator_System& dest, switch (dim_kinds[dim]) { case PARAMETER: dest[row].set_divisor(system_divisor); + // Intentionally fall through. case LINE: --row; + // Intentionally fall through. case GEN_VIRTUAL: break; } diff --git a/src/Grid_public.cc b/src/Grid_public.cc index 1d778b2..ad38d6e 100644 --- a/src/Grid_public.cc +++ b/src/Grid_public.cc @@ -637,7 +637,8 @@ PPL::Grid::relation_with(const Constraint& c) const { point_is_included = !c.is_equality(); break; } - // Not the first point: convert `g' to be a parameter ... + // Not the first point: convert `g' to be a parameter + // and fall through into the parameter case. Grid_Generator& gen = const_cast<Grid_Generator&>(g); const Grid_Generator& point = *first_point; const Coefficient& p_div = g[0]; @@ -658,8 +659,8 @@ PPL::Grid::relation_with(const Constraint& c) const { gen.strong_normalize(); gen.set_is_parameter(); PPL_ASSERT(gen.OK()); - // ... and fall through into the parameter case. } + // Intentionally fall through.
case Grid_Generator::PARAMETER: case Grid_Generator::LINE: diff --git a/src/Grid_simplify.cc b/src/Grid_simplify.cc index 38b0807..3a08160 100644 --- a/src/Grid_simplify.cc +++ b/src/Grid_simplify.cc @@ -365,8 +365,10 @@ Grid::simplify(Grid_Generator_System& sys, Dimension_Kinds& dim_kinds) { switch (dim_kinds[dim]) { case PARAMETER: sys[row].set_divisor(system_divisor); + // Intentionally fall through. case LINE: --row; + // Intentionally fall through. case GEN_VIRTUAL: break; } diff --git a/src/Octagonal_Shape.templates.hh b/src/Octagonal_Shape.templates.hh index 1c47af1..27bcd0a 100644 --- a/src/Octagonal_Shape.templates.hh +++ b/src/Octagonal_Shape.templates.hh @@ -1937,6 +1937,8 @@ Octagonal_Shape<T>::relation_with(const Constraint& c) const { case -1: return Poly_Con_Relation::strictly_intersects(); } + PPL_UNREACHABLE; + break; case 0: if (min_numer == 0) { if (c.is_strict_inequality())
participants (1)
-
Roberto Bagnara