grzegorzmazur / yacas

Computer calculations made easy
http://www.yacas.org
GNU Lesser General Public License v2.1
124 stars 24 forks source link

Bugs in C++17 #259

Closed OgreTransporter closed 5 years ago

OgreTransporter commented 5 years ago

Moving to C++17 (#258 ) is not complete, there are errors in cyacas\libyacas\include\yacas\string_utils.h.

According to cppreference, std::ptr_fun is deprecated since C++11 and discontinued since C++17. Similarly, std::not1 is deprecated since C++17.

Fix:

inline
std::string& ltrim(std::string& s)
{
    s.erase(s.begin(), std::find_if(s.begin(), s.end(), [](int c) { return !std::isspace(c); }));
    return s;
}

inline
std::string& rtrim(std::string& s)
{
    s.erase(std::find_if(s.rbegin(), s.rend(), [](int ch) { return !std::isspace(ch); }).base(), s.end());
    return s;
}