'<function-style-cast>': невозможно преобразовать из 'cmdline_error' в 'boost::system::system_error'
Мой проект использовал повышение 1,58 на протяжении веков. Теперь я обновил версию Visual Studio до 2017 года. И повысил версию 1.68.0.
Boost 1.68.0 имеет некоторые изменения в своем классе error_code, что нарушает нашу сборку.
получить следующую ошибку
Error C2440 '<function-style-cast>': cannot convert from 'cmdline_error' to 'boost::system::system_error'
где cmdline_error определяется следующим образом
enum cmdline_error
{
success = 0,
missing_argument,
argument_conversion_failed
};
и это объявление, которое создает ошибку
cmdline_error cmdError;
boost::system::system_error systemError = boost::system::system_error(cmdError);
В сборке Linux возникает следующая ошибка
error: no matching function for call to ‘boost::system::system_error::system_error(cmdline_error)’
Этот код работал с бустом 1.48, 1.58. 1,62
Как правильно обработать эту ошибку здесь?