Niedawno dodałem -pedantyczne i -proporcjonalne błędy do moich opcji kompilacji gcc make, aby pomóc w oczyszczeniu mojego kodu platformy. Wszystko było w porządku, dopóki nie znajdzie błędów w zewnętrznych plikach nagłówkowych. Czy istnieje sposób, aby wyłączyć sprawdzanie błędów w zewnętrznym nagłówku plików IE:Jak zignorować pedantyczne błędy kompilatora gcc w zewnętrznych nagłówkach bibliotek?
zaglądać do plików znajdujących się w ten sposób:
#include "myheader.h"
Zatrzymaj sprawdzanie zawierać pliki tak:
#include <externalheader.h>
Oto błędy, które dostaję:
g++ -Wall -Wextra -Wno-long-long -Wno-unused-parameter -pedantic --pedantic-errors
-O3 -D_FILE_OFFSET_BITS=64 -DMINGW -I"freetype/include" -I"jpeg" -I"lpng128" -I"zlib"
-I"mysql/include" -I"ffmpeg/libswscale" -I"ffmpeg/libavformat" -I"ffmpeg/libavcodec"
-I"ffmpeg/libavutil" -o omingwd/kguimovie.o -c kguimovie.cpp
In file included from ffmpeg/libavutil/avutil.h:41,
from ffmpeg/libavcodec/avcodec.h:30,
from kguimovie.cpp:44:
ffmpeg/libavutil/mathematics.h:32: error: comma at end of enumerator list
In file included from ffmpeg/libavcodec/avcodec.h:30,
from kguimovie.cpp:44:
ffmpeg/libavutil/avutil.h:110: error: comma at end of enumerator list
In file included from kguimovie.cpp:44:
ffmpeg/libavcodec/avcodec.h:277: error: comma at end of enumerator list
ffmpeg/libavcodec/avcodec.h:303: error: comma at end of enumerator list
ffmpeg/libavcodec/avcodec.h:334: error: comma at end of enumerator list
ffmpeg/libavcodec/avcodec.h:345: error: comma at end of enumerator list
ffmpeg/libavcodec/avcodec.h:2249: warning: `ImgReSampleContext' is deprecated
(declared at ffmpeg/libavcodec/avcodec.h:2243)
ffmpeg/libavcodec/avcodec.h:2259: warning: `ImgReSampleContext' is deprecated
(declared at ffmpeg/libavcodec/avcodec.h:2243)
In file included from kguimovie.cpp:45:
ffmpeg/libavformat/avformat.h:262: error: comma at end of enumerator list
In file included from ffmpeg/libavformat/rtsp.h:26,
from ffmpeg/libavformat/avformat.h:465,
from kguimovie.cpp:45:
ffmpeg/libavformat/rtspcodes.h:38: error: comma at end of enumerator list
In file included from ffmpeg/libavformat/avformat.h:465,
from kguimovie.cpp:45:
ffmpeg/libavformat/rtsp.h:32: error: comma at end of enumerator list
ffmpeg/libavformat/rtsp.h:69: error: comma at end of enumerator list
To nie odpowiada na pytanie. – Nick
@KPEXEA: należy rozważyć ponowne przypisanie akceptacji do oczywistej lepszej odpowiedzi - pomagając w wynikach wyszukiwania SO i czytelnikom ludzkim dostrzec odpowiedź. – sehe