Какой инструмент статического анализа можно использовать для определения ошибки условного потока? - PullRequest
0 голосов
/ 21 марта 2019

Я проверял какой-то инструмент статического анализа в Википедии.Я проверяю каждый инструмент на предмет его возможностей.

* - Автоматическая проверка переменных

- Проверка границ для переполнения массива

- Проверка классов

и т. Д. *

Я действительно не уверен, какая возможность ниже:

Уметь проверить, правильно ли назначена переменная, используемая в условном операторе, чтобы он вводил или игнорировал инструкцию.

Пример 1:

bool flag = false;

if( flag == true){

process1();

}

Инструмент должен указать, что строка 2 неверна, поскольку она всегда будет ложной.

Example2:

bool flag = false;

flag = updateFlag();

if( flag == true){

process1();

}

Инструмент не должен указывать на что-либопоскольку переменная может измениться, прежде чем она будет использоваться в качестве условия.

1 Ответ

0 голосов
/ 21 апреля 2019

Вы можете использовать инструмент klockwork, который сообщит вам, что код недоступен, т.е. мертвый код.

см. Следующие шашки, которые вы можете включить в klockwork.

https://docs.roguewave.com/en/klocwork/2016/candccheckerreference

...