diff --git a/lemon/lp_base.h b/lemon/lp_base.h --- a/lemon/lp_base.h +++ b/lemon/lp_base.h @@ -1618,7 +1618,7 @@ /// inline LpBase::Constr operator<=(const LpBase::Expr &e, const LpBase::Expr &f) { - return LpBase::Constr(0, f - e, LpBase::INF); + return LpBase::Constr(0, f - e, LpBase::NaN); } ///Create constraint @@ -1636,7 +1636,7 @@ /// inline LpBase::Constr operator<=(const LpBase::Expr &e, const LpBase::Value &f) { - return LpBase::Constr(- LpBase::INF, e, f); + return LpBase::Constr(LpBase::NaN, e, f); } ///Create constraint @@ -1645,7 +1645,7 @@ /// inline LpBase::Constr operator>=(const LpBase::Expr &e, const LpBase::Expr &f) { - return LpBase::Constr(0, e - f, LpBase::INF); + return LpBase::Constr(0, e - f, LpBase::NaN); } @@ -1665,7 +1665,7 @@ /// inline LpBase::Constr operator>=(const LpBase::Expr &e, const LpBase::Value &f) { - return LpBase::Constr(f, e, LpBase::INF); + return LpBase::Constr(f, e, LpBase::NaN); } ///Create constraint diff --git a/test/lp_test.cc b/test/lp_test.cc --- a/test/lp_test.cc +++ b/test/lp_test.cc @@ -166,6 +166,14 @@ c = ((2 >= e) >= 3); c = ((2 >= p1) >= 3); + { //Tests for #430 + LP::Col v=lp.addCol(); + LP::Constr c = v >= -3; + c = c <= 4; + LP::Constr c2; + c2 = -3 <= v <= 4; + } + e[x[3]]=2; e[x[3]]=4; e[x[3]]=1;