libavcodec/ac3dec.c:462: error: Integer Overflow L2
  ([0, 8388607] - 4194304):unsigned32.

libavcodec/ac3dec.c:445:1: <LHS trace>
443.  * reference: Section 7.3 Quantization and Decoding of Mantissas
444.  */
445. static void ac3_decode_transform_coeffs_ch(AC3DecodeContext *s, int ch_index, mant_groups *m)
     ^
446. {
447.     int start_freq = s->start_freq[ch_index];

libavcodec/ac3dec.c:445:1: Parameter `s->dith_state.state[*]`
443.  * reference: Section 7.3 Quantization and Decoding of Mantissas
444.  */
445. static void ac3_decode_transform_coeffs_ch(AC3DecodeContext *s, int ch_index, mant_groups *m)
     ^
446. {
447.     int start_freq = s->start_freq[ch_index];

libavcodec/ac3dec.c:462:29: Call
460.         case 0:
461.             if (dither)
462.                 mantissa = (av_lfg_get(&s->dith_state) & 0x7FFFFF) - 0x400000;
                                 ^
463.             else
464.                 mantissa = 0;

libavutil/lfg.h:38:1: Parameter `c->state[*]`
  36.  * it may be good enough and faster for your specific use case.
  37.  */
  38. static inline unsigned int av_lfg_get(AVLFG *c){
      ^
  39.     c->state[c->index & 63] = c->state[(c->index-24) & 63] + c->state[(c->index-55) & 63];
  40.     return c->state[c->index++ & 63];

libavutil/lfg.h:40:5: Assignment
  38. static inline unsigned int av_lfg_get(AVLFG *c){
  39.     c->state[c->index & 63] = c->state[(c->index-24) & 63] + c->state[(c->index-55) & 63];
  40.     return c->state[c->index++ & 63];
          ^
  41. }
  42. 

libavcodec/ac3dec.c:462:17: Binary operation: ([0, 8388607] - 4194304):unsigned32
460.         case 0:
461.             if (dither)
462.                 mantissa = (av_lfg_get(&s->dith_state) & 0x7FFFFF) - 0x400000;
                     ^
463.             else
464.                 mantissa = 0;

static void ac3_decode_transform_coeffs_ch(AC3DecodeContext *s, int ch_index, mant_groups *m)
{
    int start_freq = s->start_freq[ch_index];
    int end_freq   = s->end_freq[ch_index];
    uint8_t *baps  = s->bap[ch_index];
    int8_t *exps   = s->dexps[ch_index];
    int *coeffs    = s->fixed_coeffs[ch_index];
    int dither     = (ch_index == CPL_CH) || s->dither_flag[ch_index];
    GetBitContext *gbc = &s->gbc;
    int freq;
    for (freq = start_freq; freq < end_freq; freq++) {
        int bap = baps[freq];
        int mantissa;
        switch (bap) {
        case 0:
            if (dither)
                mantissa = (av_lfg_get(&s->dith_state) & 0x7FFFFF) - 0x400000;
            else
                mantissa = 0;
            break;
        case 1:
            if (m->b1) {
                m->b1--;
                mantissa = m->b1_mant[m->b1];
            } else {
                int bits      = get_bits(gbc, 5);
                mantissa      = b1_mantissas[bits][0];
                m->b1_mant[1] = b1_mantissas[bits][1];
                m->b1_mant[0] = b1_mantissas[bits][2];
                m->b1         = 2;
            }
            break;
        case 2:
            if (m->b2) {
                m->b2--;
                mantissa = m->b2_mant[m->b2];
            } else {
                int bits      = get_bits(gbc, 7);
                mantissa      = b2_mantissas[bits][0];
                m->b2_mant[1] = b2_mantissas[bits][1];
                m->b2_mant[0] = b2_mantissas[bits][2];
                m->b2         = 2;
            }
            break;
        case 3:
            mantissa = b3_mantissas[get_bits(gbc, 3)];
            break;
        case 4:
            if (m->b4) {
                m->b4 = 0;
                mantissa = m->b4_mant;
            } else {
                int bits   = get_bits(gbc, 7);
                mantissa   = b4_mantissas[bits][0];
                m->b4_mant = b4_mantissas[bits][1];
                m->b4      = 1;
            }
            break;
        case 5:
            mantissa = b5_mantissas[get_bits(gbc, 4)];
            break;
        default:
            mantissa = get_sbits(gbc, quantization_tab[bap]);
            mantissa <<= 24 - quantization_tab[bap];
            break;
        }
        coeffs[freq] = mantissa >> exps[freq];
    }
}
['static void ac3_decode_transform_coeffs_ch(AC3DecodeContext *s, int ch_index, mant_groups *m)\n{\n    int start_freq = s->start_freq[ch_index];\n    int end_freq   = s->end_freq[ch_index];\n    uint8_t *baps  = s->bap[ch_index];\n    int8_t *exps   = s->dexps[ch_index];\n    int *coeffs    = s->fixed_coeffs[ch_index];\n    int dither     = (ch_index == CPL_CH) || s->dither_flag[ch_index];\n    GetBitContext *gbc = &s->gbc;\n    int freq;\n    for (freq = start_freq; freq < end_freq; freq++) {\n        int bap = baps[freq];\n        int mantissa;\n        switch (bap) {\n        case 0:\n            if (dither)\n                mantissa = (av_lfg_get(&s->dith_state) & 0x7FFFFF) - 0x400000;\n            else\n                mantissa = 0;\n            break;\n        case 1:\n            if (m->b1) {\n                m->b1--;\n                mantissa = m->b1_mant[m->b1];\n            } else {\n                int bits      = get_bits(gbc, 5);\n                mantissa      = b1_mantissas[bits][0];\n                m->b1_mant[1] = b1_mantissas[bits][1];\n                m->b1_mant[0] = b1_mantissas[bits][2];\n                m->b1         = 2;\n            }\n            break;\n        case 2:\n            if (m->b2) {\n                m->b2--;\n                mantissa = m->b2_mant[m->b2];\n            } else {\n                int bits      = get_bits(gbc, 7);\n                mantissa      = b2_mantissas[bits][0];\n                m->b2_mant[1] = b2_mantissas[bits][1];\n                m->b2_mant[0] = b2_mantissas[bits][2];\n                m->b2         = 2;\n            }\n            break;\n        case 3:\n            mantissa = b3_mantissas[get_bits(gbc, 3)];\n            break;\n        case 4:\n            if (m->b4) {\n                m->b4 = 0;\n                mantissa = m->b4_mant;\n            } else {\n                int bits   = get_bits(gbc, 7);\n                mantissa   = b4_mantissas[bits][0];\n                m->b4_mant = b4_mantissas[bits][1];\n                m->b4      = 1;\n            }\n            break;\n        case 5:\n            mantissa = b5_mantissas[get_bits(gbc, 4)];\n            break;\n        default:\n            mantissa = get_sbits(gbc, quantization_tab[bap]);\n            mantissa <<= 24 - quantization_tab[bap];\n            break;\n        }\n        coeffs[freq] = mantissa >> exps[freq];\n    }\n}', 'static inline unsigned int av_lfg_get(AVLFG *c){\n    c->state[c->index & 63] = c->state[(c->index-24) & 63] + c->state[(c->index-55) & 63];\n    return c->state[c->index++ & 63];\n}']