bsl-language-server icon indicating copy to clipboard operation
bsl-language-server copied to clipboard

[MOD] На основании UnreachableCode создать 2 новые диагностики (по алгоритму и по директивам)

Open ImHunter opened this issue 3 years ago • 0 comments

Диагностика

UnreachableCode

Описание предлагаемых изменений

Диагностика недостижимого кода UnreachableCode анализирует как алгоритмы условий в коде, так и условия в директивах препроцессора. Было бы более гибко иметь две отдельные диагностики - на алгоритмы кода и на директивы. А исходную UnreachableCode реализовать объединением функционала обеих новых диагностик.

Дополнительная информация

Мы активно используем фейковые директивы вида #Если Сервер и Не Сервер для вписывания в этот блок код, дающий псевдо-типизацию переменных. Типа так:

Процедура Метод1(Параметр1)
#Если Сервер И Не Сервер Тогда
    Параметр1 = Справочники.Спр1.ПустаяСсылка();
#КонецЕсли

Ну и получаем кучу срабатываний Недостижимого кода. По-тихоньку экранируем такие фейки. Но это еще надолго может растятуться. В итоге рискуем пропустить более важные срабатывания - по алгоритмическим условиям в коде.

ImHunter avatar Jun 28 '22 09:06 ImHunter