libavcodec/ralf.c:249: error: Integer Overflow L2
  (32 - [0, `bc->bits_left` + 95]):unsigned32 by call to `bitstream_read_vlc`.

libavcodec/ralf.c:229:1: Parameter `bc->bits_left`
227. }
228. 
229. static int decode_channel(RALFContext *ctx, BitstreamContext *bc, int ch,
     ^
230.                           int length, int mode, int bits)
231. {

libavcodec/ralf.c:238:26: Call
236.     int *dst = ctx->channel_data[ch];
237. 
238.     ctx->filter_params = bitstream_read_vlc(bc, set->filter_params.table, 9, 2);
                              ^
239.     ctx->filter_bits   = (ctx->filter_params - 2) >> 6;
240.     ctx->filter_length = ctx->filter_params - (ctx->filter_bits << 6) - 1;

libavcodec/bitstream.h:313:1: Parameter `(*table)[*]`
  311.  * If the VLC code is invalid and max_depth > 1, then the number of bits removed
  312.  * is undefined. */
  313. static inline int bitstream_read_vlc(BitstreamContext *bc, VLC_TYPE (*table)[2],
       ^
  314.                                      int bits, int max_depth)
  315. {

libavcodec/bitstream.h:319:5: Assignment
  317.     unsigned idx = bitstream_peek(bc, bits);
  318.     int code = table[idx][0];
  319.     int n    = table[idx][1];
           ^
  320. 
  321.     if (max_depth > 1 && n < 0) {

libavcodec/bitstream.h:329:5: Call
  327.         }
  328.     }
  329.     skip_remaining(bc, n);
           ^
  330. 
  331.     return code;

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: Assignment
    235.     bc->bits <<= n;
    236. #endif
    237.     bc->bits_left -= n;
             ^
    238. }
    239. 

libavcodec/ralf.c:249:21: Call
247.     }
248. 
249.     ctx->bias[ch] = bitstream_read_vlc(bc, set->bias.table, 9, 2);
                         ^
250.     ctx->bias[ch] = extend_code(bc, ctx->bias[ch], 127, 4);
251. 

libavcodec/bitstream.h:313:1: Parameter `bc->bits_left`
  311.  * If the VLC code is invalid and max_depth > 1, then the number of bits removed
  312.  * is undefined. */
  313. static inline int bitstream_read_vlc(BitstreamContext *bc, VLC_TYPE (*table)[2],
       ^
  314.                                      int bits, int max_depth)
  315. {

libavcodec/bitstream.h:317:20: Call
  315. {
  316.     int nb_bits;
  317.     unsigned idx = bitstream_peek(bc, bits);
                          ^
  318.     int code = table[idx][0];
  319.     int n    = table[idx][1];

libavcodec/bitstream.h:215:1: Parameter `n`
    213. /* Return n bits from the buffer, but do not change the buffer state.
    214.  * n has to be in the 0-32 range. */
    215. static inline unsigned bitstream_peek(BitstreamContext *bc, unsigned n)
         ^
    216. {
    217.     if (n > bc->bits_left)

libavcodec/bitstream.h:218:9: Call
    216. {
    217.     if (n > bc->bits_left)
    218.         refill_32(bc);
                 ^
    219. 
    220.     return show_val(bc, n);

libavcodec/bitstream.h:60:1: <RHS trace>
58. }
59. 
60. static inline void refill_32(BitstreamContext *bc)
    ^
61. {
62.     if (bc->ptr >= bc->buffer_end)

libavcodec/bitstream.h:60:1: Parameter `bc->bits_left`
      58. }
      59. 
      60. static inline void refill_32(BitstreamContext *bc)
          ^
      61. {
      62.     if (bc->ptr >= bc->buffer_end)

libavcodec/bitstream.h:68:5: Binary operation: (32 - [0, bc->bits_left + 95]):unsigned32 by call to `bitstream_read_vlc` 
      66.     bc->bits       = (uint64_t)AV_RL32(bc->ptr) << bc->bits_left | bc->bits;
      67. #else
      68.     bc->bits       = bc->bits | (uint64_t)AV_RB32(bc->ptr) << (32 - bc->bits_left);
              ^
      69. #endif
      70.     bc->ptr       += 4;

static inline void refill_32(BitstreamContext *bc)
{
    if (bc->ptr >= bc->buffer_end)
        return;
#ifdef BITSTREAM_READER_LE
    bc->bits       = (uint64_t)AV_RL32(bc->ptr) << bc->bits_left | bc->bits;
#else
    bc->bits       = bc->bits | (uint64_t)AV_RB32(bc->ptr) << (32 - bc->bits_left);
#endif
    bc->ptr       += 4;
    bc->bits_left += 32;
}
['static int decode_channel(RALFContext *ctx, BitstreamContext *bc, int ch,\n                          int length, int mode, int bits)\n{\n    int i, t;\n    int code_params;\n    VLCSet *set = ctx->sets + mode;\n    VLC *code_vlc; int range, range2, add_bits;\n    int *dst = ctx->channel_data[ch];\n    ctx->filter_params = bitstream_read_vlc(bc, set->filter_params.table, 9, 2);\n    ctx->filter_bits   = (ctx->filter_params - 2) >> 6;\n    ctx->filter_length = ctx->filter_params - (ctx->filter_bits << 6) - 1;\n    if (ctx->filter_params == FILTER_RAW) {\n        for (i = 0; i < length; i++)\n            dst[i] = bitstream_read(bc, bits);\n        ctx->bias[ch] = 0;\n        return 0;\n    }\n    ctx->bias[ch] = bitstream_read_vlc(bc, set->bias.table, 9, 2);\n    ctx->bias[ch] = extend_code(bc, ctx->bias[ch], 127, 4);\n    if (ctx->filter_params == FILTER_NONE) {\n        memset(dst, 0, sizeof(*dst) * length);\n        return 0;\n    }\n    if (ctx->filter_params > 1) {\n        int cmode = 0, coeff = 0;\n        VLC *vlc = set->filter_coeffs[ctx->filter_bits] + 5;\n        add_bits = ctx->filter_bits;\n        for (i = 0; i < ctx->filter_length; i++) {\n            t = bitstream_read_vlc(bc, vlc[cmode].table, vlc[cmode].bits, 2);\n            t = extend_code(bc, t, 21, add_bits);\n            if (!cmode)\n                coeff -= 12 << add_bits;\n            coeff = t - coeff;\n            ctx->filter[i] = coeff;\n            cmode = coeff >> add_bits;\n            if (cmode < 0) {\n                cmode = -1 - av_log2(-cmode);\n                if (cmode < -5)\n                    cmode = -5;\n            } else if (cmode > 0) {\n                cmode =  1 + av_log2(cmode);\n                if (cmode > 5)\n                    cmode = 5;\n            }\n        }\n    }\n    code_params = bitstream_read_vlc(bc, set->coding_mode.table, set->coding_mode.bits, 2);\n    if (code_params >= 15) {\n        add_bits = av_clip((code_params / 5 - 3) / 2, 0, 10);\n        if (add_bits > 9 && (code_params % 5) != 2)\n            add_bits--;\n        range    = 10;\n        range2   = 21;\n        code_vlc = set->long_codes + code_params - 15;\n    } else {\n        add_bits = 0;\n        range    = 6;\n        range2   = 13;\n        code_vlc = set->short_codes + code_params;\n    }\n    for (i = 0; i < length; i += 2) {\n        int code1, code2;\n        t = bitstream_read_vlc(bc, code_vlc->table, code_vlc->bits, 2);\n        code1 = t / range2;\n        code2 = t % range2;\n        dst[i]     = extend_code(bc, code1, range, 0) << add_bits;\n        dst[i + 1] = extend_code(bc, code2, range, 0) << add_bits;\n        if (add_bits) {\n            dst[i]     |= bitstream_read(bc, add_bits);\n            dst[i + 1] |= bitstream_read(bc, add_bits);\n        }\n    }\n    return 0;\n}', 'static inline int bitstream_read_vlc(BitstreamContext *bc, VLC_TYPE (*table)[2],\n                                     int bits, int max_depth)\n{\n    int nb_bits;\n    unsigned idx = bitstream_peek(bc, bits);\n    int code = table[idx][0];\n    int n    = table[idx][1];\n    if (max_depth > 1 && n < 0) {\n        skip_remaining(bc, bits);\n        code = set_idx(bc, code, &n, &nb_bits, table);\n        if (max_depth > 2 && n < 0) {\n            skip_remaining(bc, nb_bits);\n            code = set_idx(bc, code, &n, &nb_bits, table);\n        }\n    }\n    skip_remaining(bc, n);\n    return code;\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}', 'static inline unsigned bitstream_peek(BitstreamContext *bc, unsigned n)\n{\n    if (n > bc->bits_left)\n        refill_32(bc);\n    return show_val(bc, n);\n}', 'static inline void refill_32(BitstreamContext *bc)\n{\n    if (bc->ptr >= bc->buffer_end)\n        return;\n#ifdef BITSTREAM_READER_LE\n    bc->bits       = (uint64_t)AV_RL32(bc->ptr) << bc->bits_left | bc->bits;\n#else\n    bc->bits       = bc->bits | (uint64_t)AV_RB32(bc->ptr) << (32 - bc->bits_left);\n#endif\n    bc->ptr       += 4;\n    bc->bits_left += 32;\n}']