История изменений
Исправление x86_64, (текущая версия) :
Можно такой вариант.
OtherFuncErrorEnum rc = other_func();
switch (rc) {
case Success: break;
case Err1:
case Err2:
case Err3:
return static_cast<ThisFuncErrorEnum>(rc);
}
Но много бойлерплейта и лишнего кода, да и требует высокой дисциплины со стороны разработчика.
Эта дисциплина компилятором внедряется.
Исправление x86_64, :
Можно такой вариант.
OtherFuncErrorEnum rc = other_func();
switch (rc) {
case OtherFuncErrorEnum::Success: break;
case Err1:
case Err2:
case Err3:
return static_cast<ThisFuncErrorEnum>(rc);
}
Но много бойлерплейта и лишнего кода, да и требует высокой дисциплины со стороны разработчика.
Эта дисциплина компилятором внедряется.
Исходная версия x86_64, :
Можно такой вариант.
[code] OtherFuncErrorEnum rc = other_func(); switch (rc) { case OtherFuncErrorEnum::Success: break; case Err1: case Err2: case Err3: return static_cast(rc); } [/code]
Но много бойлерплейта и лишнего кода, да и требует высокой дисциплины со стороны разработчика.
Эта дисциплина компилятором внедряется.