libavcodec/ffv1dec.c:145: error: Integer Overflow L2
  ([0, +oo] - 12):unsigned32 by call to `get_vlc_symbol`.

libavcodec/ffv1dec.c:96:1: Parameter `s->bc.bits_left`
94. }
95. 
96. static av_always_inline void decode_line(FFV1Context *s, int w,
    ^
97.                                          int16_t *sample[2],
98.                                          int plane_index, int bits)

libavcodec/ffv1dec.c:145:33: Call
143.                     run_mode  = 0;
144.                     run_count = 0;
145.                     diff      = get_vlc_symbol(&s->bc, &p->vlc_state[context],
                                     ^
146.                                                bits);
147.                     if (diff >= 0)

libavcodec/ffv1dec.c:69:1: Parameter `bc->bits_left`
  67. }
  68. 
  69. static inline int get_vlc_symbol(BitstreamContext *bc, VlcState *const state,
      ^
  70.                                  int bits)
  71. {

libavcodec/ffv1dec.c:83:9: Call
  81.     assert(k <= 8);
  82. 
  83.     v = get_sr_golomb(bc, k, 12, bits);
              ^
  84.     ff_dlog(NULL, "v:%d bias:%d error:%d drift:%d count:%d k:%d",
  85.             v, state->bias, state->error_sum, state->drift, state->count, k);

libavcodec/golomb.h:317:1: Parameter `limit`
    315.  * read signed golomb rice code (ffv1).
    316.  */
    317. static inline int get_sr_golomb(BitstreamContext *bc, int k, int limit,
         ^
    318.                                 int esc_len)
    319. {

libavcodec/golomb.h:320:13: Call
    318.                                 int esc_len)
    319. {
    320.     int v = get_ur_golomb(bc, k, limit, esc_len);
                     ^
    321. 
    322.     v++;

libavcodec/golomb.h:248:1: Parameter `limit`
      246.  * read unsigned golomb rice code (ffv1).
      247.  */
      248. static inline int get_ur_golomb(BitstreamContext *bc, int k, int limit,
           ^
      249.                                 int esc_len)
      250. {

libavcodec/golomb.h:265:9: Call
      263.         return buf;
      264.     } else {
      265.         bitstream_skip(bc, limit);
                   ^
      266.         buf = bitstream_read(bc, esc_len);
      267. 

libavcodec/bitstream.h:241:1: Parameter `n`
        239. 
        240. /* Skip n bits in the buffer. */
        241. static inline void bitstream_skip(BitstreamContext *bc, unsigned n)
             ^
        242. {
        243.     if (n <= bc->bits_left)

libavcodec/bitstream.h:244:9: Call
        242. {
        243.     if (n <= bc->bits_left)
        244.         skip_remaining(bc, n);
                     ^
        245.     else {
        246.         n -= bc->bits_left;

libavcodec/bitstream.h:230:1: <LHS trace>
228. }
229. 
230. static inline void skip_remaining(BitstreamContext *bc, unsigned n)
     ^
231. {
232. #ifdef BITSTREAM_READER_LE

libavcodec/bitstream.h:230:1: Parameter `bc->bits_left`
          228. }
          229. 
          230. static inline void skip_remaining(BitstreamContext *bc, unsigned n)
               ^
          231. {
          232. #ifdef BITSTREAM_READER_LE

libavcodec/bitstream.h:230:1: <RHS trace>
228. }
229. 
230. static inline void skip_remaining(BitstreamContext *bc, unsigned n)
     ^
231. {
232. #ifdef BITSTREAM_READER_LE

libavcodec/bitstream.h:230:1: Parameter `n`
          228. }
          229. 
          230. static inline void skip_remaining(BitstreamContext *bc, unsigned n)
               ^
          231. {
          232. #ifdef BITSTREAM_READER_LE

libavcodec/bitstream.h:237:5: Binary operation: ([0, +oo] - 12):unsigned32 by call to `get_vlc_symbol` 
          235.     bc->bits <<= n;
          236. #endif
          237.     bc->bits_left -= n;
                   ^
          238. }
          239. 

static inline void skip_remaining(BitstreamContext *bc, unsigned n)
{
#ifdef BITSTREAM_READER_LE
    bc->bits >>= n;
#else
    bc->bits <<= n;
#endif
    bc->bits_left -= n;
}
['static av_always_inline void decode_line(FFV1Context *s, int w,\n                                         int16_t *sample[2],\n                                         int plane_index, int bits)\n{\n    PlaneContext *const p = &s->plane[plane_index];\n    RangeCoder *const c   = &s->c;\n    int x;\n    int run_count = 0;\n    int run_mode  = 0;\n    int run_index = s->run_index;\n    for (x = 0; x < w; x++) {\n        int diff, context, sign;\n        context = get_context(p, sample[1] + x, sample[0] + x, sample[1] + x);\n        if (context < 0) {\n            context = -context;\n            sign    = 1;\n        } else\n            sign = 0;\n        av_assert2(context < p->context_count);\n        if (s->ac != AC_GOLOMB_RICE) {\n            diff = get_symbol_inline(c, p->state[context], 1);\n        } else {\n            if (context == 0 && run_mode == 0)\n                run_mode = 1;\n            if (run_mode) {\n                if (run_count == 0 && run_mode == 1) {\n                    if (bitstream_read_bit(&s->bc)) {\n                        run_count = 1 << ff_log2_run[run_index];\n                        if (x + run_count <= w)\n                            run_index++;\n                    } else {\n                        if (ff_log2_run[run_index])\n                            run_count = bitstream_read(&s->bc, ff_log2_run[run_index]);\n                        else\n                            run_count = 0;\n                        if (run_index)\n                            run_index--;\n                        run_mode = 2;\n                    }\n                }\n                run_count--;\n                if (run_count < 0) {\n                    run_mode  = 0;\n                    run_count = 0;\n                    diff      = get_vlc_symbol(&s->bc, &p->vlc_state[context],\n                                               bits);\n                    if (diff >= 0)\n                        diff++;\n                } else\n                    diff = 0;\n            } else\n                diff = get_vlc_symbol(&s->bc, &p->vlc_state[context], bits);\n            ff_dlog(s->avctx, "count:%d index:%d, mode:%d, x:%d pos:%d\\n",\n                    run_count, run_index, run_mode, x, bitstream_tell(&s->bc));\n        }\n        if (sign)\n            diff = -diff;\n        sample[1][x] = (predict(sample[1] + x, sample[0] + x) + diff) &\n                       ((1 << bits) - 1);\n    }\n    s->run_index = run_index;\n}', 'static inline int get_vlc_symbol(BitstreamContext *bc, VlcState *const state,\n                                 int bits)\n{\n    int k, i, v, ret;\n    i = state->count;\n    k = 0;\n    while (i < state->error_sum) {\n        k++;\n        i += i;\n    }\n    assert(k <= 8);\n    v = get_sr_golomb(bc, k, 12, bits);\n    ff_dlog(NULL, "v:%d bias:%d error:%d drift:%d count:%d k:%d",\n            v, state->bias, state->error_sum, state->drift, state->count, k);\n    v ^= ((2 * state->drift + state->count) >> 31);\n    ret = fold(v + state->bias, bits);\n    update_vlc_state(state, v);\n    return ret;\n}', 'static inline int get_sr_golomb(BitstreamContext *bc, int k, int limit,\n                                int esc_len)\n{\n    int v = get_ur_golomb(bc, k, limit, esc_len);\n    v++;\n    if (v & 1)\n        return v >> 1;\n    else\n        return -(v >> 1);\n}', 'static inline int get_ur_golomb(BitstreamContext *bc, int k, int limit,\n                                int esc_len)\n{\n    unsigned int buf;\n    int log;\n    buf = bitstream_peek(bc, 32);\n    log = av_log2(buf);\n    if (log > 31 - limit) {\n        buf >>= log - k;\n        buf  += (30 - log) << k;\n        bitstream_skip(bc, 32 + k - log);\n        return buf;\n    } else {\n        bitstream_skip(bc, limit);\n        buf = bitstream_read(bc, esc_len);\n        return buf + limit - 1;\n    }\n}', 'static inline void bitstream_skip(BitstreamContext *bc, unsigned n)\n{\n    if (n <= bc->bits_left)\n        skip_remaining(bc, n);\n    else {\n        n -= bc->bits_left;\n        skip_remaining(bc, bc->bits_left);\n        if (n >= 64) {\n            unsigned skip = n / 8;\n            n -= skip * 8;\n            bc->ptr += skip;\n        }\n        refill_64(bc);\n        if (n)\n            skip_remaining(bc, n);\n    }\n}', 'static inline void skip_remaining(BitstreamContext *bc, unsigned n)\n{\n#ifdef BITSTREAM_READER_LE\n    bc->bits >>= n;\n#else\n    bc->bits <<= n;\n#endif\n    bc->bits_left -= n;\n}']