[GIT] ppl/ppl(master): Avoid mixing boolean and arithmetic values.

Module: ppl/ppl Branch: master Commit: 787dc72b55dd658b8e630e3d2eeb3cf7434c1f5d URL: http://www.cs.unipr.it/git/gitweb.cgi?p=ppl/ppl.git;a=commit;h=787dc72b55dd6...
Author: Enea Zaffanella zaffanella@cs.unipr.it Date: Sun Feb 26 14:11:30 2012 +0100
Avoid mixing boolean and arithmetic values. Detected by ECLAIR service utypflag.
---
src/Interval_Info.defs.hh | 2 +- src/Pointset_Powerset.templates.hh | 16 ++++++++-------- src/checked_int.inlines.hh | 22 ++++++++++++---------- 3 files changed, 21 insertions(+), 19 deletions(-)
diff --git a/src/Interval_Info.defs.hh b/src/Interval_Info.defs.hh index 95d91d9..04fb3e9 100644 --- a/src/Interval_Info.defs.hh +++ b/src/Interval_Info.defs.hh @@ -75,7 +75,7 @@ set_bit(T& bits, unsigned int bit, bool value) { template <typename T> inline bool get_bit(const T& bits, unsigned int bit) { - return bits & (static_cast<T>(1) << bit); + return (bits & (static_cast<T>(1) << bit)) != 0; }
template <typename T> diff --git a/src/Pointset_Powerset.templates.hh b/src/Pointset_Powerset.templates.hh index 76c1b9b..f2cb3c7 100644 --- a/src/Pointset_Powerset.templates.hh +++ b/src/Pointset_Powerset.templates.hh @@ -925,13 +925,13 @@ Pointset_Powerset<PSET>::maximize(const Linear_Expression& expr, PPL_DIRTY_TEMP_COEFFICIENT(best_sup_d); best_sup_n = 0; best_sup_d = 1; - bool best_max = 0; + bool best_max = false;
PPL_DIRTY_TEMP_COEFFICIENT(iter_sup_n); PPL_DIRTY_TEMP_COEFFICIENT(iter_sup_d); iter_sup_n = 0; iter_sup_d = 1; - bool iter_max = 0; + bool iter_max = false;
PPL_DIRTY_TEMP_COEFFICIENT(tmp);
@@ -981,14 +981,14 @@ Pointset_Powerset<PSET>::maximize(const Linear_Expression& expr, PPL_DIRTY_TEMP_COEFFICIENT(best_sup_d); best_sup_n = 0; best_sup_d = 1; - bool best_max = 0; + bool best_max = false; Generator best_g = point();
PPL_DIRTY_TEMP_COEFFICIENT(iter_sup_n); PPL_DIRTY_TEMP_COEFFICIENT(iter_sup_d); iter_sup_n = 0; iter_sup_d = 1; - bool iter_max = 0; + bool iter_max = false; Generator iter_g = point();
PPL_DIRTY_TEMP_COEFFICIENT(tmp); @@ -1044,13 +1044,13 @@ Pointset_Powerset<PSET>::minimize(const Linear_Expression& expr, PPL_DIRTY_TEMP_COEFFICIENT(best_inf_d); best_inf_n = 0; best_inf_d = 1; - bool best_min = 0; + bool best_min = false;
PPL_DIRTY_TEMP_COEFFICIENT(iter_inf_n); PPL_DIRTY_TEMP_COEFFICIENT(iter_inf_d); iter_inf_n = 0; iter_inf_d = 1; - bool iter_min = 0; + bool iter_min = false;
PPL_DIRTY_TEMP_COEFFICIENT(tmp);
@@ -1100,14 +1100,14 @@ Pointset_Powerset<PSET>::minimize(const Linear_Expression& expr, PPL_DIRTY_TEMP_COEFFICIENT(best_inf_d); best_inf_n = 0; best_inf_d = 1; - bool best_min = 0; + bool best_min = false; Generator best_g = point();
PPL_DIRTY_TEMP_COEFFICIENT(iter_inf_n); PPL_DIRTY_TEMP_COEFFICIENT(iter_inf_d); iter_inf_n = 0; iter_inf_d = 1; - bool iter_min = 0; + bool iter_min = false; Generator iter_g = point();
PPL_DIRTY_TEMP_COEFFICIENT(tmp); diff --git a/src/checked_int.inlines.hh b/src/checked_int.inlines.hh index bd31616..0a8175b 100644 --- a/src/checked_int.inlines.hh +++ b/src/checked_int.inlines.hh @@ -76,16 +76,18 @@ struct Extended_Int { : C_Integer<Type>::min); static const Type not_a_number = ((C_Integer<Type>::min >= 0) - ? (C_Integer<Type>::max - Policy::has_infinity * 2) - : (C_Integer<Type>::min + Policy::has_infinity)); - static const Type min = (C_Integer<Type>::min - + ((C_Integer<Type>::min >= 0) - ? 0 - : (Policy::has_infinity + Policy::has_nan))); - static const Type max = (C_Integer<Type>::max - - ((C_Integer<Type>::min >= 0) - ? (2*Policy::has_infinity + Policy::has_nan) - : Policy::has_infinity)); + ? (C_Integer<Type>::max - 2 * (Policy::has_infinity ? 1 : 0)) + : (C_Integer<Type>::min + (Policy::has_infinity ? 1 : 0))); + static const Type min + = (C_Integer<Type>::min + + ((C_Integer<Type>::min >= 0) + ? 0 + : ((Policy::has_infinity ? 1 : 0) + (Policy::has_nan ? 1 : 0)))); + static const Type max + = (C_Integer<Type>::max + - ((C_Integer<Type>::min >= 0) + ? (2 * (Policy::has_infinity ? 1 : 0) + (Policy::has_nan ? 1 : 0)) + : (Policy::has_infinity ? 1 : 0))); };
template <typename Policy, typename To>
participants (1)
-
Enea Zaffanella