libavcodec/cavsdec.c:916: error: Integer Overflow L2
  ([0, +oo] - 1):unsigned32 by call to `decode_slice_header`.

libavcodec/cavsdec.c:913:18: Call
911.     if ((bitstream_peek(bc, 24 + align) & 0xFFFFFF) == 0x000001) {
912.         bitstream_skip(bc, 24 + align);
913.         h->stc = bitstream_read(bc, 8);
                      ^
914.         if (h->stc >= h->mb_height)
915.             return 0;

libavcodec/bitstream.h:183:1: Parameter `bc->bits_left`
  181. 
  182. /* Return n bits from the buffer. n has to be in the 0-32 range. */
  183. static inline uint32_t bitstream_read(BitstreamContext *bc, unsigned n)
       ^
  184. {
  185.     if (!n)

libavcodec/cavsdec.c:916:9: Call
914.         if (h->stc >= h->mb_height)
915.             return 0;
916.         decode_slice_header(h, bc);
             ^
917.         return 1;
918.     }

libavcodec/cavsdec.c:877:1: Parameter `bc->bits_left`
  875.  ****************************************************************************/
  876. 
  877. static inline int decode_slice_header(AVSContext *h, BitstreamContext *bc)
       ^
  878. {
  879.     if (h->stc > 0xAF)

libavcodec/cavsdec.c:887:23: Call
  885.     h->flags &= ~(B_AVAIL | C_AVAIL);
  886.     if ((h->mby == 0) && (!h->qp_fixed)) {
  887.         h->qp_fixed = bitstream_read_bit(bc);
                             ^
  888.         h->qp       = bitstream_read(bc, 6);
  889.     }

libavcodec/bitstream.h:145:1: Parameter `bc->bits_left`
    143. 
    144. /* Return one bit from the buffer. */
    145. static inline unsigned bitstream_read_bit(BitstreamContext *bc)
         ^
    146. {
    147.     if (!bc->bits_left)

libavcodec/bitstream.h:150:12: Call
    148.         refill_64(bc);
    149. 
    150.     return get_val(bc, 1);
                    ^
    151. }
    152. 

libavcodec/bitstream.h:130:1: <LHS trace>
128. }
129. 
130. static inline uint64_t get_val(BitstreamContext *bc, unsigned n)
     ^
131. {
132. #ifdef BITSTREAM_READER_LE

libavcodec/bitstream.h:130:1: Parameter `bc->bits_left`
      128. }
      129. 
      130. static inline uint64_t get_val(BitstreamContext *bc, unsigned n)
           ^
      131. {
      132. #ifdef BITSTREAM_READER_LE

libavcodec/bitstream.h:130:1: <RHS trace>
128. }
129. 
130. static inline uint64_t get_val(BitstreamContext *bc, unsigned n)
     ^
131. {
132. #ifdef BITSTREAM_READER_LE

libavcodec/bitstream.h:130:1: Parameter `n`
      128. }
      129. 
      130. static inline uint64_t get_val(BitstreamContext *bc, unsigned n)
           ^
      131. {
      132. #ifdef BITSTREAM_READER_LE

libavcodec/bitstream.h:139:5: Binary operation: ([0, +oo] - 1):unsigned32 by call to `decode_slice_header` 
      137.     bc->bits <<= n;
      138. #endif
      139.     bc->bits_left -= n;
               ^
      140. 
      141.     return ret;

static inline uint64_t get_val(BitstreamContext *bc, unsigned n)
{
#ifdef BITSTREAM_READER_LE
    uint64_t ret = bc->bits & ((UINT64_C(1) << n) - 1);
    bc->bits >>= n;
#else
    uint64_t ret = bc->bits >> (64 - n);
    bc->bits <<= n;
#endif
    bc->bits_left -= n;
    return ret;
}
['static inline int check_for_slice(AVSContext *h)\n{\n    BitstreamContext *bc = &h->bc;\n    int align;\n    if (h->mbx)\n        return 0;\n    align = (-bitstream_tell(bc)) & 7;\n    if (!align && (bitstream_peek(bc, 8) == 0x80))\n        align = 8;\n    if ((bitstream_peek(bc, 24 + align) & 0xFFFFFF) == 0x000001) {\n        bitstream_skip(bc, 24 + align);\n        h->stc = bitstream_read(bc, 8);\n        if (h->stc >= h->mb_height)\n            return 0;\n        decode_slice_header(h, bc);\n        return 1;\n    }\n    return 0;\n}', 'static inline uint32_t bitstream_read(BitstreamContext *bc, unsigned n)\n{\n    if (!n)\n        return 0;\n    if (n > bc->bits_left) {\n        refill_32(bc);\n        if (bc->bits_left < 32)\n            bc->bits_left = n;\n    }\n    return get_val(bc, n);\n}', 'static inline int decode_slice_header(AVSContext *h, BitstreamContext *bc)\n{\n    if (h->stc > 0xAF)\n        av_log(h->avctx, AV_LOG_ERROR, "unexpected start code 0x%02x\\n", h->stc);\n    h->mby   = h->stc;\n    h->mbidx = h->mby * h->mb_width;\n    h->flags &= ~(B_AVAIL | C_AVAIL);\n    if ((h->mby == 0) && (!h->qp_fixed)) {\n        h->qp_fixed = bitstream_read_bit(bc);\n        h->qp       = bitstream_read(bc, 6);\n    }\n    if ((h->cur.f->pict_type != AV_PICTURE_TYPE_I) ||\n        (!h->pic_structure && h->mby >= h->mb_width / 2))\n        if (bitstream_read_bit(bc)) {\n            av_log(h->avctx, AV_LOG_ERROR,\n                   "weighted prediction not yet supported\\n");\n        }\n    return 0;\n}', 'static inline unsigned bitstream_read_bit(BitstreamContext *bc)\n{\n    if (!bc->bits_left)\n        refill_64(bc);\n    return get_val(bc, 1);\n}', 'static inline uint64_t get_val(BitstreamContext *bc, unsigned n)\n{\n#ifdef BITSTREAM_READER_LE\n    uint64_t ret = bc->bits & ((UINT64_C(1) << n) - 1);\n    bc->bits >>= n;\n#else\n    uint64_t ret = bc->bits >> (64 - n);\n    bc->bits <<= n;\n#endif\n    bc->bits_left -= n;\n    return ret;\n}']