удаление кода «дождливый день» из проекта C - PullRequest
0 голосов
/ 06 июля 2019

Я начал новую работу и унаследовал проект, который содержит много кода «дождливого дня», под которым я имею в виду код, который никогда не вызывается.

Функции, на которые не ссылаются вышестоящие и функциикоторые содержат код, который никогда не может быть выполнен.

Также заголовочные файлы, содержащие

#define SomethingThatIsNotRefferenced  AsSomeValueUnused

Есть ли какие-либо инструменты для обнаружения и удаления этого кода?

Альтернативой являетсяудалите разделы с помощью:

#if 0

   /* Some code */

#endif  

Чтобы увидеть, что его нарушает, но, очевидно, это итеративный процесс.

1 Ответ

4 голосов
/ 06 июля 2019

GCC и clang поддерживают предупреждение -Wunused-function (или просто -Wunused, если вы также хотите узнать о других вещах, таких как неиспользуемые переменные и параметры).

Редактировать : я думалэто работало с единицами компиляции (с некоторыми оговорками), но, основываясь на комментариях Джонатана Леффлера к этому посту, похоже, что это не так.Это все еще полезно, поэтому я оставлю ответ на месте, но может быть лучше взглянуть на что-то вроде callcatcher .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...