Я использую затмение для работы над некоторым кодом c, и это не индексирует код в блоках условной компиляции как это:
#ifdef USE_FEATURE_A
int feature_a(...) {
some = code(here);
}
#endif
Как я могу заставить затмение индексировать функцию feature_a?
Вы можете сказать eclipse, что USE_FEATURE_A
определено. Откройте свойства проекта и перейдите на страницу «C / C ++ General-> Paths and Symbols», на вкладке «Symbols» нажмите кнопку «Добавить», введите USE_FEATURE_A
в имя feild и нажмите OK.
Примечание: это приведет к тому, что он не будет индексировать какие-либо #else
стороны вашего препроцессора ... так что, если все они не похожи на рассматриваемый, вы не можете AFAIK, но если они ты в порядке. (Eclipse содержит препроцессор C, который он использует для анализа вашего кода, все вышеперечисленное, по сути, такое же, как добавление -DUSE_FEATURE_A в вашу командную строку, поэтому препроцессор Eclipse будет вести себя иначе, чем в вашем компиляторе)