Я попытался выполнить статический анализ кода в своем проекте, который в основном состоит из файлов .hpp, поскольку там все «шаблировано», но, к сожалению, я получаю информацию от PSV-Studio о том, что файлы заголовков не могут быть обработаны. Это кажется немного странным. В современном C++ шаблоны повсюду, и AFAIC они в основном размещаются в заголовочных файлах. Я что-то упускаю? Есть ли способ настроить PVS-Studio для анализа заголовочных файлов?
PVS-Studio не обрабатывает заголовочные файлы
Ответы (1)
PVS-Studio поддерживает анализ "шаблонных" кодов, даже если они не инстанцированы.
Однако PVS-Studio требует, чтобы файл был предварительно обработан для его анализа, т.е. все #includes и макросы должны быть развернуты перед анализом. Для этого PVS-Studio нужен компилируемый файл, т.е. файл, который передается компилятору вместе с необходимыми флагами компилятора (defines, include и т.д.). Одного заголовочного файла недостаточно, так как PVS-Studio не будет иметь достаточно информации для его корректной преобработки.
«Невозможно начать анализ этого файла», скорее всего, является ошибкой V008, означающей, что препроцессор завершил работу с ненулевым кодом, что означает, что файл, который вы пытаетесь проанализировать, не компилируется. Обычно PVS-Studio также выводит в качестве следующего сообщения причину ошибки (stdErr от процесса препроцессора). Подробнее об этом можно прочитать здесь.
#include
добавить свой заголовок в файл .cpp и не проанализировать его? - person Bo Persson   schedule 04.11.2012