Подавить предупреждение о "неразрешенном включении" в Eclipse / CDT? - PullRequest
0 голосов
/ 21 ноября 2018

Я нашел множество ответов о том, как исправить "включить" ошибки / предупреждения, перечислив каталоги заголовков в Properties -> C/C++ General -> Paths and Symbols -> Includes.Тем не менее, я пытаюсь выяснить, возможно ли подавить предупреждение для включенного заголовка, который намеренно не существует.

Файл в этом экземпляре называется config.h, и он создается из другого файла с именемconfig.h.in после вызова инструмента сборки cmake.Таким образом, нет проблем при компиляции кода.Я просто получаю выделенное предупреждение «Неразрешенное включение» в затмении.Я пытаюсь подавить это предупреждение, но не знаю, возможно ли это.

unresolved-inclusion.png

Я пробовал следующее, но не работает:

#include "config.h" // @suppress("Unresolved inclusion")

Очевидно, что это не серьезная проблема, но было бы неплохо иметь возможность ее подавить.

1 Ответ

0 голосов
/ 21 ноября 2018

Я не знаю способа подавления отдельных аннотаций "неразрешенного включения", но я могу объяснить, почему @suppress не работает для них.

Существует два источника аннотаций об ошибках / предупрежденияхв Eclipse CDT:

  1. Единицы, которые поступают из модуля анализа кода (CodAn).Это включает семантические ошибки и предупреждения.(Вы можете увидеть их список в Preferences | C/C++ | Code Analysis.)
  2. Единицах, которые поступают непосредственно из индексатора.Это включает синтаксические ошибки и ошибки препроцессора (включая неразрешенные ошибки включения).

@suppress - это функция CodAn, и поэтому она применяется только к аннотациям CodAn.

IМне не известно о подобной функции для аннотаций второго типа, за исключением сокрытия всей этой категории в Preferences | General | Editors | Text Editors | Annotations | C/C++ Indexer Markers.

...