Hi, On Tue, Jul 12, 2011 at 10:39 AM, Diego Biurrun <[email protected]> wrote: > On Tue, Jul 12, 2011 at 05:16:44PM +0200, Ronald S. Bultje wrote: >> Module: libav >> Branch: master >> Commit: c90a2538a0bb4937cdecb852fadc3f98899624a9 >> >> Author: Ronald S. Bultje <[email protected]> >> Committer: Ronald S. Bultje <[email protected]> >> Date: Tue Jul 12 08:15:55 2011 -0700 >> >> h264: move h264_mvpred.h include. >> >> Fixes the following compile error with darwin/gcc-4.2.1: >> In file included from libavcodec/error_resilience.c:33: >> libavcodec/h264.h: In function ‘decode_mb_skip’: >> libavcodec/h264.h:773: error: ‘always_inline’ function could not be >> inlined in call to ‘pred_pskip_motion’: the function body must appear >> before caller >> libavcodec/h264.h:1334: error: called from here > > I'm afraid it's not quite so easy ... > >> --- a/libavcodec/h264.h >> +++ b/libavcodec/h264.h >> @@ -770,7 +770,7 @@ static av_always_inline int get_chroma_qp(H264Context >> *h, int t, int qscale){ >> return h->pps.chroma_qp_table[t][qscale]; >> } >> >> -static av_always_inline void pred_pskip_motion(H264Context * const h); >> +#include "h264_mvpred.h" //For pred_pskip_motion() >> >> static void fill_decode_neighbors(H264Context *h, int mb_type){ >> MpegEncContext * const s = &h->s; >> @@ -1341,6 +1341,4 @@ static void av_unused decode_mb_skip(H264Context *h){ >> h->prev_mb_skipped= 1; >> } >> >> -#include "h264_mvpred.h" //For pred_pskip_motion() >> - >> #endif /* AVCODEC_H264_H */ > > ... since now 'make checkheaders' is broken: > > biurrun@passion:~/src/libav $ make checkheaders > CC libavcodec/h264_mvpred.ho > In file included from libavcodec/h264_mvpred.h:33:0: > libavcodec/h264.h: In function ‘decode_mb_skip’: > libavcodec/h264.h:1334:9: error: implicit declaration of function > ‘pred_pskip_motion’ [-Werror=implicit-function-declaration] > libavcodec/h264_mvpred.h: At top level: > libavcodec/h264_mvpred.h:235:30: warning: conflicting types for > ‘pred_pskip_motion’ [enabled by default] > libavcodec/h264_mvpred.h:235:30: error: static declaration of > ‘pred_pskip_motion’ follows non-static declaration > libavcodec/h264.h:1334:9: note: previous implicit declaration of > ‘pred_pskip_motion’ was here > cc1: some warnings being treated as errors > > make: *** [libavcodec/h264_mvpred.ho] Error 1
Don't include h264_mvpred.h directly, instead include h264.h? Ronald _______________________________________________ libav-devel mailing list [email protected] https://lists.libav.org/mailman/listinfo/libav-devel
