2015-02-02 11 views
5

Zawsze kompiluję z -Wall -Wextra -Werror.gcc z -Werror i -Wno-błąd = nieużywany

Jednak wiele razy, gdy wykonuję szybkie testy kompilacji, muszę zignorować zestaw błędów o numerze -Wunused. Z różnych powodów chcę widzieć je jako ostrzeżenia, a nie błędy, pozostawiając wszystkie inne ostrzeżenia jako błędy.

  • -Wno-unused oczywiście nie wyświetla żadnego ostrzeżenia, więc nie jest to, czego mi potrzeba.

  • Ten Myślałem jest rozwiązaniem -Wno-error=unused niestety nie wydają się działać (nadal są zgłaszane jako błędy),

  • Indywidualnie ustawienie flagi (np -Wno-error=unused-variable) działa zgodnie z oczekiwaniami (zgłaszane jako ostrzeżenie tylko).

Więc czy jest jakiś sposób, aby im ostrzeżenia pozostawiając -Werror bez określić cały garnitur opcji -Wno-error=unsused-... indywidualnie?
Czy zachowanie -Werro -Wno-error=unused jest błędem?

+0

Znalazłeś? –

Odpowiedz

2

Nie ma sposobu na ich natychmiastowe wyłączenie. -Wunused włączyć listę opcji, takich jak:
-Wunused-function
-Wunused-label
-Wunused-value
-Wunused-variable

I należy je wyłączyć jeden po drugim z Wno opcji.

+1

Myślę, że mnie źle zrozumiałeś: jak powiedziałem "-Wno-nieużywane" nie wyświetla ostrzeżenia. Chcę wyświetlać je jako ostrzeżenia, ale nie błędy po '-Werror'. Wiem, że mogę użyć '-Werror -Wno-error = unused-function -Wno-error = unused-label .... etc'. Oczywiście '-Wall' i' -Wextra' włączają inne opcje. '-Wall -Wextra -Werror' zawsze jest moją opcją. – bolov

+0

@bolov, poprawiłem moją odpowiedź. – Arseniy