Этот ответ больше подходит для общего подхода к переработке старого кода на языке C.
Большие объемы предупреждений, как правило, являются повторениями одной и той же небольшой группы предупреждений из-за некоторых ошибок в заголовочных файлах, которые во всех других местах содержатся в других файлах исходного кода.
Если вы реорганизуете старый проект на C, нередко большинство предупреждений сводятся к различным вещам, таким как функция старого K'n'R dec, ранее разрешенные броски теперь выделяются предупреждением, используя устаревшие функции и т. Д.
Предполагая, что вы используете (г) сделать для создания проекта, я бы запустить компиляцию с помощью следующей команды:
gmake 2>&1 | tee results
Тогда вы можете посмотреть на файл результатов и посмотрим, какие самые популярные предупреждения, которые вы получаете. Начните с устранения всех существующих предупреждений, прежде чем перейти к рефакторингу базы кода.
Запуск make изнутри vim дает вам множество возможностей для соединения сообщений об ошибках и предупреждения с исходными файлами.