Разве моя функция не охватывает все пути возврата или это ошибка компилятора?C#

Место общения программистов C#
Ответить
Anonymous
 Разве моя функция не охватывает все пути возврата или это ошибка компилятора?

Сообщение Anonymous »

У меня есть следующая функция, которая работала до моего недавнего обновления компилятора Visual Studio
2022 (17.11.4). Ошибка, которую я получаю от компилятора: не все пути кода возвращают значение. Но какой путь не пройден? Один из них — return GetAllDatesWithoutLock();, а другой — повторный вызов ExceptionDispatchInfo.Throw(ex);? Этот код работал нормально до обновления.
public ScheduleDateTimeResponse GetAllDates()
{
log.Info("GetAllDates before locking");
semaphoreObject.Wait();
try
{
return GetAllDatesWithoutLock();
}
catch (Exception ex)
{
Console.WriteLine(Thread.CurrentThread.Name + "Error occurred.");
log.Error(Thread.CurrentThread.Name + "Error occurred in GetAllDates:", ex);
ExceptionDispatchInfo.Throw(ex);
}
finally
{
semaphoreObject.Release();
log.Info("GetAllDates after locking");
}
}


Подробнее здесь: https://stackoverflow.com/questions/790 ... pilers-bug
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»