Как исключить некоторые ошибки «невозможно открыть включаемый файл * .h» в pclint - PullRequest
4 голосов
/ 21 апреля 2011

Я использую ПК-линт в своем проекте. Мой проект совместим для сборки в Windows и Linux. Поэтому я использовал в своем проекте заголовочные файлы windows (visualstudio) и заголовочные файлы linux (gcc). Я запускаю pclint полностью для всего файла. Это дает сообщение об ошибке

Unable to open include file *.h

Я не хочу подавлять эту ошибку в файле std.lnt и не хочу добавлять

-elint errorcode
перед оператором включения. Подскажите, пожалуйста, есть ли способ подавления определенных заголовочных файлов в файле std.lnt.

Ответы [ 2 ]

2 голосов
/ 21 апреля 2011

Я предполагаю, что вы действительно не получаете сообщение

Unable to open include file *.h

, но действительно получаете сообщение

Unable to open include file fred.h

для некоторого файла fred.h.

Если я прав, добавьте эти две строки в std.lnt:

-efile(322,fred.h)
-efile(7,fred.h)
1 голос
/ 21 апреля 2011

Защита соответствующих включений с помощью зависимых от платформы символов препроцессора:

#if defined PLATFORM_PC
#include <whatever/is/needed.h>
#else if defined PLATFORM_POSIX
#include <stdio.h>
#endif

Затем убедитесь, что вы определили PLATFORM_PC при проверке кода с помощью PC-Lint, чтобы он никогда не видел включения для платформы, которую он не понимает.

...