2013-12-20 3 views
0

Я установил CPPCheck (v1.6.1) для большого проекта, содержащего множество библиотек.CPPCheck возвращает непоследовательные результаты

Когда я проверяю библиотеку, я получаю некоторые сбои проверки, которые меня интересуют, и все в порядке. Однако в этот момент у меня есть только список текстовых файлов всех * .cpp и * .h в той библиотеке, которую я передаю '-file-list = ...'

Конечно, я делаю получить некоторые ошибки об отсутствии включает, потому что эта библиотека (скажем, MyLibA) включает файлы из другой моей библиотеки (MyLibB).

Итак, теперь я создаю текстовый файл, содержащий все включенные пути из MyLibB и передающий его в cppcheck через '--includes-file = ...'.

На данный момент я получаю некоторые сбои cpp о заголовках в MyLibB, что не является неожиданным, однако все ошибки, о которых сообщалось о MyLibA, больше не сообщаются.

Является ли это ошибкой или я делаю что-то неправильно?

ответ

1

Если cppcheck запускается в #error, он отменяет проверку. Таким образом, вы можете оказаться в ситуации, когда заголовки запускают #error (если, например, вы неправильно настроили препроцессор -D для cppcheck в командной строке).

Это означает, что файлы, которые были проверены ранее, больше не будут проверяться, потому что тесты были прерваны в заголовке, то есть до того, как были достигнуты строки нарушения кода

Смежные вопросы