bsl-language-server
bsl-language-server copied to clipboard
[MOD] На основании UnreachableCode создать 2 новые диагностики (по алгоритму и по директивам)
Диагностика
UnreachableCode
Описание предлагаемых изменений
Диагностика недостижимого кода UnreachableCode анализирует как алгоритмы условий в коде, так и условия в директивах препроцессора. Было бы более гибко иметь две отдельные диагностики - на алгоритмы кода и на директивы. А исходную UnreachableCode реализовать объединением функционала обеих новых диагностик.
Дополнительная информация
Мы активно используем фейковые директивы вида #Если Сервер и Не Сервер для вписывания в этот блок код, дающий псевдо-типизацию переменных. Типа так:
Процедура Метод1(Параметр1)
#Если Сервер И Не Сервер Тогда
Параметр1 = Справочники.Спр1.ПустаяСсылка();
#КонецЕсли
Ну и получаем кучу срабатываний Недостижимого кода. По-тихоньку экранируем такие фейки. Но это еще надолго может растятуться. В итоге рискуем пропустить более важные срабатывания - по алгоритмическим условиям в коде.