Wie kann ich die GCC-Warnung deaktivieren, wenn die #warning-Direktive eine GCC-Erweiterung ist?

8

Wenn ich die #warning -Direktive verwende, bekomme ich anstatt einer Warnung zwei - die eine, die ich generiere, plus eine zusätzliche warning: #warning is a GCC extension [enabled by default] .

Ich kann das Ergebnis der @warning-Direktive selbst unterdrücken, mit -Wno-cpp , aber das ist das Gegenteil von dem, was ich will.

Ich kann das umgehen, indem ich stattdessen #pragma message() verwende, aber das scheint die #warning-Anweisung ziemlich sinnlos zu machen - gibt es keine Möglichkeit, diese Warnung zu unterdrücken?

    
Riot 01.06.2013, 12:53
quelle

3 Antworten

3

Ah, es scheint, dass die Option -pedantic diese Warnung aktiviert, und es scheint keine spezifische Überschreibung dafür zu geben, wie es bei den meisten anderen GCC-Warnungen der Fall ist. Durch Entfernen von -pedantic wird die Warnung über eine Warnung gelöscht.

    
Riot 01.06.2013, 13:01
quelle
0
%Vor%

kompiliert mit oder ohne gcc, auch mit -pedantic , aber es gibt immer noch die Warnung (und schlägt fehl, wenn Warnungen zu Fehlern eskaliert werden).

UPDATE: Laut dieser verwandten Frage gibt es keine saubere Lösung zum selektiven Deaktivieren der Warnungen zu den gnu-spezifischen #pragma s

    
wildplasser 01.06.2013 13:03
quelle
0

Eigentlich sollte folgendes funktionieren. Damit können Sie die gcc-Warnungen unterdrücken / ignorieren.

%Vor%     
dorileo 03.07.2013 12:11
quelle