Ошибка ПК Линт 714 - PullRequest
       47

Ошибка ПК Линт 714

2 голосов
/ 23 сентября 2011

В моем CRC8.c у меня есть эта функция:

BOOL isCRCValid(const UINT8 *ptr, UINT8 Len, UINT8 CRCChar){
    return CRCChar == generateCRC(ptr, Len); //generareCRC returns a UINT8
}

Это объявлено в CRC8.h, но PC Lint возвращает мне следующее.

Info 714: Symbol 'isCRCValid(const unsigned char *, unsigned char, unsigned
    char)' not referenced
Info 830: Location cited in prior message

Помощь говорит 714is:

714: Символ 'Symbol' (Location) не указан - Указанная внешняя переменная или внешняя функция была определена, но на нее нет ссылок.Это сообщение подавляется для проверки устройства (опция -u).

и 830:

830 Место, указанное в предыдущем сообщении - Сообщение 830 - это транспортное средство для передачив «канонической форме» информация о местоположении, встроенная в какое-то другое сообщение.Например, рассмотрим (несколько упрощенное) сообщение:

     file x.c line 37:  Declaration for 'x' conflicts with line 22

. Оно содержит местоположение («строка 22»), встроенное в текст сообщения.Встроенная информация о местоположении обычно не понимается редакторами и средами IDE (интерактивные среды разработки), которые могут позиционироваться только в номинальное местоположение (строка 37 в этом примере).Добавив это дополнительное сообщение с номинальным расположением строки 22, пользователь может, перейдя к следующему сообщению, и, в этом случае, увидеть, в чем суть «конфликта».Это сообщение и сообщение 831 ниже не соответствуют обычным правилам подавления сообщений.Если бы они это сделали, то при использовании опции -w2 для снижения уровня предупреждения до 2 эти сообщения (на уровне 3) также исчезли бы.Вместо этого они продолжают функционировать, как и ожидалось.Чтобы запретить их, вам нужно явно отключить их, используя одно из:

         -e830 
         -e831

Они могут быть восстановлены через + e830 и + e831;Состояние подавления может быть сохранено и восстановлено с помощью опций -save -restore.Такие параметры, как -e8 * и -e {831} не будут иметь никакого эффекта.

Поскольку я новичок в PC Lint и относительный новичок в C, я не достиг решения этой проблемы.

Кто-нибудь может мне помочь с этой проблемой?

Ответы [ 2 ]

6 голосов
/ 23 сентября 2011

Сообщение просто означает, что PCLint не нашел ничего, что фактически использует эту функцию, поэтому это может быть мертвый код / ​​кандидат на удаление.

0 голосов
/ 25 февраля 2016

Это также может означать, что вы не использовали входные аргументы в своей функции.

...