--- a/Osi/src/OsiCommonTest/OsiSolverInterfaceTest.cpp +++ b/Osi/src/OsiCommonTest/OsiSolverInterfaceTest.cpp @@ -1313,8 +1313,8 @@ int rows_to_delete_arr[] = { 0 } ; si->deleteRows(1,rows_to_delete_arr) ; - std::transform(objective,objective+4,objective, - std::bind2nd(std::plus(),0.15)) ; + for (int i = 0; i != 4; ++i) + objective[i] += 0.15; si->setObjective(objective) ; si->resolve() ; OSIUNITTEST_ASSERT_ERROR(si->isProvenOptimal(), return false, *si, "test16SebastianNowozin second resolve"); The below is an excerpt from "make c++17 compatible": diff --git a/CoinUtils/src/CoinPackedMatrix.cpp b/CoinUtils/src/CoinPackedMatrix.cpp index c7631289..0b103159 100644 --- a/CoinUtils/src/CoinPackedMatrix.cpp +++ b/CoinUtils/src/CoinPackedMatrix.cpp @@ -1490,11 +1490,11 @@ CoinPackedMatrix::minorAppendSameOrdered(const CoinPackedMatrix& matrix) // now insert the entries of matrix for (i = majorDim_ - 1; i >= 0; --i) { - const int l = matrix.length_[i]; - std::transform(matrix.index_ + matrix.start_[i], - matrix.index_ + (matrix.start_[i] + l), - index_ + (start_[i] + length_[i]), - std::bind2nd(std::plus(), minorDim_)); + int l = matrix.length_[i]; + CoinBigIndex put = start_[i]+length_[i]; + const CoinBigIndex get = matrix.start_[i]; + for (int j=0;j(), value) ); + for (int i=0 ; i < nElements_; i++) + elements_[i] += value; } //----------------------------------------------------------------------------- @@ -293,8 +293,8 @@ CoinPackedVector::operator+=(double value) void CoinPackedVector::operator-=(double value) { - std::transform(elements_, elements_ + nElements_, elements_, - std::bind2nd(std::minus(), value) ); + for (int i=0 ; i < nElements_; i++) + elements_[i] -= value; } //----------------------------------------------------------------------------- @@ -302,8 +302,8 @@ CoinPackedVector::operator-=(double value) void CoinPackedVector::operator*=(double value) { - std::transform(elements_, elements_ + nElements_, elements_, - std::bind2nd(std::multiplies(), value) ); + for (int i=0 ; i < nElements_; i++) + elements_[i] *= value; } //----------------------------------------------------------------------------- @@ -311,8 +311,8 @@ CoinPackedVector::operator*=(double value) void CoinPackedVector::operator/=(double value) { - std::transform(elements_, elements_ + nElements_, elements_, - std::bind2nd(std::divides(), value) ); + for (int i=0 ; i < nElements_; i++) + elements_[i] /= value; } //#############################################################################