>> Нет. Варнинги, потому и варнинги, что может быть ошибкой, а может и
>> нет. Также немало предупреждений - вкусовщина.
>> -Wall - это время от времени посмотреть и обдумать предупреждения. Постоянно с
>> этим компилировать - сумасшествие
> Я мб не великий разработчик, но есть и директивы для отключения предупреждений
> в блоке кода. Выключил перед нужной командой, включил после нее. И
> сразу видно - так должно быть, это не разработчик проглядел.А теперь вспомним, что библиотека кросс-платформенная и собирается некоторым количеством компиляторов от MS (MSVC), GCC, clang, Oracle Studio compiler и некоторыми другими. Директивы в большинстве случаев - индивидуальные (некоторое пересечение есть, но не универсальное). Попытки делать #ifdef на каждый чих - сильно увеличат объём кода и вряд ли сильно улучшат его качество.
Затем добавим, что собирается под разные платформы: Windows, Darwin, Linux, FreeBSD, OpenBSD, NetBSD, Solaris, OpenIndiana и ещё несколько. От платформы к платформе варьируется размер типов данных, присутствие/отсутствие знака, соотношение размеров. И вот уже компилятор начинает "предупреждать", что такое-то выражение всегда ложь на этой платформе. Ну и отлично, соптимизируется в пропуск кода. А на другой платформе - будет реальное сравнение и отсутствие "предупреждений". Попытки найти решение с помощью прекомпилятора - тоже не приводят к универсальным рецептам, так как прекомпиляторные константы тоже не универсальные.
Под одной платформой и с одним компилятором вычистить все предупреждения - несложно. А когда платформ много, компиляторов - много, а их возможных комбинаций больше ещё на порядок - то вопрос, стоит ли тратить время на чистку предупреждений после каждого изменения или стоит реализовать несколько новых фитч.
А так - да, периодически стоит собирать с -Wall -Wextra