Партия предупреждений, применяя педантичные ключи GCC к проекту в QT

Введение

Некоторое время назад я нахожу, что педантичные ключи GCC полезны, и может совет меня, чтобы написать более чистый код. Когда я кодирую простое приложение C++ пульта и собираю его с параметрами:

-Wall -Wextra -pedantic -Weffc++ -Wold-style-cast
-Wconversion -Winit-self -Wunreachable-code

(вот полностью зарегистрированная информация обо всех них: Варианты просить или подавить предупреждения, Варианты, управляющие диалектом C++)


проблема

Теперь, я использую QT 4.8.4 с компилятором MinGW, чтобы построить приложения. Проблема - это, когда я добавляю к моему .pro - следующие строки файла:

QMAKE_CXXFLAGS += -Wall -Wextra -pedantic -Weffc++ -Wold-style-cast
QMAKE_CXXFLAGS += -Wconversion -Winit-self

Я получил <сильную> партию предупреждений, что делает из источников QT, но не из моих источников.


Пример

Простой спокойный проект GUI с параметрами написал выше в .pro - файл дает 517 предупреждений как:

D:\Qt\4.8.4\src\corelib\global\qglobal.h:981: warning: base class 'struct QIntegerForSize<4>' has a non-virtual destructor [-Weffc++]

D:\Qt\4.8.4\src\corelib\tools\qpoint.h:174: warning: conversion to 'float' from 'int' may alter its value [-Wconversion]

...

И так далее.


Вопрос

Как постараться не применять педантичные параметры к источникам QT и использовать это параметры только в моем коде?

1
nl ja de

1 ответы

Если вы отмечаете их как системные заголовки, используя GCC's - isystem флаг, вы не будете видеть предупреждения. (См. также http://gcc.gnu.org/onlinedocs/cpp/System-Headers.html).

4
добавлено
Да! Вы совершенно правы! В моем случае (на Windows) я заставил его работать, как я желаю, добавляя QMAKE_CXXFLAGS + =-isystem "D:\\Qt\\4.8.4\\include" QMAKE_CXXFLAGS + = - Стену-Wextra - педантичный - Бросок стиля пустоши QMAKE_CXXFLAGS + =-Wconversion - Winit-сам К моему .pro - файл. Большое спасибо!
добавлено автор troyane, источник
pro.cxx
pro.cxx
3 049 участник(ов)

C/C++ chat 0. Простые вопросы, лабы и о IDE — в чат новичков @supapro 1. Не хамим, не переходим на личности, не вбрасываем утверждения без доказательств 2. No Ads, offtop, flood Объявления о вакансиях и евенты - в лс @AlexFails https://t.me/ProCxx/259155

supapro.cxx
supapro.cxx
1 925 участник(ов)

Чат для тех, кто немного знает C++, простые вопросы по реализации, синтаксису и ide – сюда, а для другого есть: /Главный чат по серьезным вопросам — @ProCxx /Чат по обсуждению всего — @fludpac

Qt
Qt
703 участник(ов)

Группа взаимопомощи Qt.Делимся советами и помогаем друг другу. Наш информационный канал @ProQt Полезная информация для начинающих: #newcomer Познавательная информация: #fyi #didyouknow Наши друзья: Чат с/с++ @ProCxx

C++ Russia
C++ Russia
384 участник(ов)

Сообщество разработчиков C++ в Telegram.

cxx.Дискуссионная
cxx.Дискуссионная
298 участник(ов)

это не двач, общайтесь вежливо; разговор на почти любые темы; Не согласны с баном? В лс @AlexFails, @ivario

C++ для маленьких и тупых
C++ для маленьких и тупых
105 участник(ов)

Лоу левел (по среднему IQ участников) чатик ExtremeCode @extremecode Флудилка @extremecode_rest