Мне нравится компилировать мой код с - Стену, и иногда даже - педантичный. Это - частично вещь стиля и частично то, что это действительно иногда испускает очень, очень полезные предупреждения (такие как использование =, а не ==).
Однако писатели некоторых моих заголовков являются ясно не такими сторонниками. Компиляция с любым из двух уровней предупреждения приводит к огромной путанице вывода, полностью побеждая цель скомпилировать тот путь во-первых.
Таким образом, как я могу заставить свой компилятор проигнорировать те предупреждения?
В качестве альтернативы ответу JS Bangs вы можете настроить GCC для обработки их как системных заголовков , что отключает все предупреждения ( за исключением директив #warning
) для этих заголовков.
Если переключатель -isystem
бесполезен, вы можете заключить все ошибочные заголовки в более простые заголовки, содержащие только соответствующую строку:
#pragma GCC system_header
При вызове GCC использование -isystem
вместо -I
, чтобы указать пути к вашим проблемным заголовкам, должно отключить предупреждения для этих заголовков. См. документы GCC или этот вопрос SO .
Используйте соответствующую #pragma
, чтобы отключить предупреждения перед включением неверных заголовков, а затем снова включите предупреждения. Документы по прагмам GCC.
Похоже, это «ваши» заголовки, то есть вы можете изменить их самостоятельно или позволить «писателям» сделать это для тебя. Если вы хотите жить без предупреждений, исправьте эти заголовки :).
В качестве альтернативы, конечно, вы можете использовать прагмы, но они антистилевые и некрасивые :)