[PPL-devel] [GIT] ppl/ppl(master): Renamed is_infinity() as infinity_sign(), returning an `int' in {-1, 0, 1}.
Enea Zaffanella
zaffanella at cs.unipr.it
Thu Feb 16 22:46:54 CET 2012
Module: ppl/ppl
Branch: master
Commit: 4921272596a31a0d7d68b67623911c2725736375
URL: http://www.cs.unipr.it/git/gitweb.cgi?p=ppl/ppl.git;a=commit;h=4921272596a31a0d7d68b67623911c2725736375
Author: Enea Zaffanella <zaffanella at cs.unipr.it>
Date: Thu Feb 16 22:45:01 2012 +0100
Renamed is_infinity() as infinity_sign(), returning an `int' in {-1, 0, 1}.
Prefer explicit tests against zero.
Detected by ECLAIR service utypflag.
---
src/Boundary.defs.hh | 2 +-
src/Checked_Number.defs.hh | 2 +-
src/Checked_Number.inlines.hh | 2 +-
src/Interval.defs.hh | 4 +-
src/Interval.inlines.hh | 50 ++++++++++++++++++++--------------------
5 files changed, 30 insertions(+), 30 deletions(-)
diff --git a/src/Boundary.defs.hh b/src/Boundary.defs.hh
index 5af4328..72d8858 100644
--- a/src/Boundary.defs.hh
+++ b/src/Boundary.defs.hh
@@ -297,7 +297,7 @@ is_reverse_infinity(Boundary_Type type, const T& x, const Info& info) {
template <typename T, typename Info>
inline int
-is_infinity(Boundary_Type type, const T& x, const Info& info) {
+infinity_sign(Boundary_Type type, const T& x, const Info& info) {
if (is_boundary_infinity(type, x, info))
return (type == LOWER) ? -1 : 1;
else if (is_reverse_infinity(type, x, info))
diff --git a/src/Checked_Number.defs.hh b/src/Checked_Number.defs.hh
index ce29ee0..3b998ca 100644
--- a/src/Checked_Number.defs.hh
+++ b/src/Checked_Number.defs.hh
@@ -452,7 +452,7 @@ is_plus_infinity(const T& x);
/*! \relates Checked_Number */
template <typename T>
typename Enable_If<Is_Native_Or_Checked<T>::value, int>::type
-is_infinity(const T& x);
+infinity_sign(const T& x);
/*! \relates Checked_Number */
template <typename T>
diff --git a/src/Checked_Number.inlines.hh b/src/Checked_Number.inlines.hh
index 18b1f51..6e97d02 100644
--- a/src/Checked_Number.inlines.hh
+++ b/src/Checked_Number.inlines.hh
@@ -239,7 +239,7 @@ is_plus_infinity(const T& x) {
template <typename T>
inline typename Enable_If<Is_Native_Or_Checked<T>::value, int>::type
-is_infinity(const T& x) {
+infinity_sign(const T& x) {
return is_minus_infinity(x) ? -1 : (is_plus_infinity(x) ? 1 : 0);
}
diff --git a/src/Interval.defs.hh b/src/Interval.defs.hh
index 5ee45f5..bd0045b 100644
--- a/src/Interval.defs.hh
+++ b/src/Interval.defs.hh
@@ -456,7 +456,7 @@ public:
info().set_boundary_property(UPPER, OPEN, true);
}
- bool is_infinity() const {
+ int infinity_sign() const {
PPL_ASSERT(OK());
if (is_reverse_infinity(LOWER, lower(), info()))
return 1;
@@ -519,7 +519,7 @@ public:
return assign(refinement);
PPL_DIRTY_TEMP(Boundary, u);
Result result = sub_2exp_assign_r(u, upper(), w, ROUND_UP);
- if (!result_overflow(result) && u > lower())
+ if (result_overflow(result) == 0 && u > lower())
return assign(refinement);
info().clear();
switch (r) {
diff --git a/src/Interval.inlines.hh b/src/Interval.inlines.hh
index e3b15da..f8e659d 100644
--- a/src/Interval.inlines.hh
+++ b/src/Interval.inlines.hh
@@ -60,8 +60,8 @@ f_is_singleton(const Interval<Boundary, Info>& x) {
}
template <typename Boundary, typename Info>
inline int
-is_infinity(const Interval<Boundary, Info>& x) {
- return x.is_infinity();
+infinity_sign(const Interval<Boundary, Info>& x) {
+ return x.infinity_sign();
}
namespace Interval_NS {
@@ -614,16 +614,16 @@ Interval<To_Boundary, To_Info>::add_assign(const From1& x, const From2& y) {
PPL_ASSERT(f_OK(y));
if (check_empty_arg(x) || check_empty_arg(y))
return assign(EMPTY);
- int inf = Parma_Polyhedra_Library::is_infinity(x);
- if (inf) {
- if (Parma_Polyhedra_Library::is_infinity(y) == -inf)
+ int inf_sign = Parma_Polyhedra_Library::infinity_sign(x);
+ if (inf_sign != 0) {
+ if (Parma_Polyhedra_Library::infinity_sign(y) == -inf_sign)
return assign(EMPTY);
}
else
- inf = Parma_Polyhedra_Library::is_infinity(y);
- if (inf < 0)
+ inf_sign = Parma_Polyhedra_Library::infinity_sign(y);
+ if (inf_sign < 0)
return assign(MINUS_INFINITY);
- else if (inf > 0)
+ else if (inf_sign > 0)
return assign(PLUS_INFINITY);
PPL_DIRTY_TEMP(To_Info, to_info);
to_info.clear();
@@ -651,16 +651,16 @@ Interval<To_Boundary, To_Info>::sub_assign(const From1& x, const From2& y) {
PPL_ASSERT(f_OK(y));
if (check_empty_arg(x) || check_empty_arg(y))
return assign(EMPTY);
- int inf = Parma_Polyhedra_Library::is_infinity(x);
- if (inf) {
- if (Parma_Polyhedra_Library::is_infinity(y) == inf)
+ int inf_sign = Parma_Polyhedra_Library::infinity_sign(x);
+ if (inf_sign != 0) {
+ if (Parma_Polyhedra_Library::infinity_sign(y) == inf_sign)
return assign(EMPTY);
}
else
- inf = -Parma_Polyhedra_Library::is_infinity(y);
- if (inf < 0)
+ inf_sign = -Parma_Polyhedra_Library::infinity_sign(y);
+ if (inf_sign < 0)
return assign(MINUS_INFINITY);
- else if (inf > 0)
+ else if (inf_sign > 0)
return assign(PLUS_INFINITY);
PPL_DIRTY_TEMP(To_Info, to_info);
@@ -708,16 +708,16 @@ Interval<To_Boundary, To_Info>::mul_assign(const From1& x, const From2& y) {
int xus = (xls > 0) ? 1 : sgn_b(UPPER, f_upper(x), f_info(x));
int yls = sgn_b(LOWER, f_lower(y), f_info(y));
int yus = (yls > 0) ? 1 : sgn_b(UPPER, f_upper(y), f_info(y));
- int inf = Parma_Polyhedra_Library::is_infinity(x);
+ int inf_sign = Parma_Polyhedra_Library::infinity_sign(x);
int ls, us;
- if (inf) {
+ if (inf_sign != 0) {
ls = yls;
us = yus;
goto inf;
}
else {
- inf = Parma_Polyhedra_Library::is_infinity(y);
- if (inf) {
+ inf_sign = Parma_Polyhedra_Library::infinity_sign(y);
+ if (inf_sign != 0) {
ls = xls;
us = xus;
inf:
@@ -726,8 +726,8 @@ Interval<To_Boundary, To_Info>::mul_assign(const From1& x, const From2& y) {
if (ls == -us)
return set_infinities();
if (ls < 0 || us < 0)
- inf = -inf;
- if (inf < 0)
+ inf_sign = -inf_sign;
+ if (inf_sign < 0)
return assign(MINUS_INFINITY);
else
return assign(PLUS_INFINITY);
@@ -877,15 +877,15 @@ Interval<To_Boundary, To_Info>::div_assign(const From1& x, const From2& y) {
int yus = (yls > 0) ? 1 : sgn_b(UPPER, f_upper(y), f_info(y));
if (yls == 0 && yus == 0)
return assign(EMPTY);
- int inf = Parma_Polyhedra_Library::is_infinity(x);
- if (inf) {
- if (Parma_Polyhedra_Library::is_infinity(y))
+ int inf_sign = Parma_Polyhedra_Library::infinity_sign(x);
+ if (inf_sign != 0) {
+ if (Parma_Polyhedra_Library::infinity_sign(y) != 0)
return assign(EMPTY);
if (yls == -yus)
return set_infinities();
if (yls < 0 || yus < 0)
- inf = -inf;
- if (inf < 0)
+ inf_sign = -inf_sign;
+ if (inf_sign < 0)
return assign(MINUS_INFINITY);
else
return assign(PLUS_INFINITY);
More information about the PPL-devel
mailing list