libavcodec/imc.c:434: error: Uninitialized Value
  The value read from workT[_] was never initialized.

libavcodec/imc.c:434:17: 
432. 
433.             if (highest > -1.e20) {
434.                 workT[found_indx] -= 2.0;
                     ^
435.                 if (++q->bitsBandT[found_indx] == 6)
436.                     workT[found_indx] = -1.e20;

static int bit_allocation(IMCContext *q, int stream_format_code, int freebits,
                          int flag)
{
    int i, j;
    const float limit = -1.e20;
    float highest = 0.0;
    int indx;
    int t1 = 0;
    int t2 = 1;
    float summa = 0.0;
    int iacc = 0;
    int summer = 0;
    int rres, cwlen;
    float lowest = 1.e10;
    int low_indx = 0;
    float workT[32];
    int flg;
    int found_indx = 0;
    for (i = 0; i < BANDS; i++)
        highest = FFMAX(highest, q->flcoeffs1[i]);
    for (i = 0; i < BANDS - 1; i++)
        q->flcoeffs4[i] = q->flcoeffs3[i] - log(q->flcoeffs5[i]) / log(2);
    q->flcoeffs4[BANDS - 1] = limit;
    highest = highest * 0.25;
    for (i = 0; i < BANDS; i++) {
        indx = -1;
        if ((band_tab[i + 1] - band_tab[i]) == q->bandWidthT[i])
            indx = 0;
        if ((band_tab[i + 1] - band_tab[i]) > q->bandWidthT[i])
            indx = 1;
        if (((band_tab[i + 1] - band_tab[i]) / 2) >= q->bandWidthT[i])
            indx = 2;
        if (indx == -1)
            return AVERROR_INVALIDDATA;
        q->flcoeffs4[i] += xTab[(indx * 2 + (q->flcoeffs1[i] < highest)) * 2 + flag];
    }
    if (stream_format_code & 0x2) {
        q->flcoeffs4[0] = limit;
        q->flcoeffs4[1] = limit;
        q->flcoeffs4[2] = limit;
        q->flcoeffs4[3] = limit;
    }
    for (i = (stream_format_code & 0x2) ? 4 : 0; i < BANDS - 1; i++) {
        iacc  += q->bandWidthT[i];
        summa += q->bandWidthT[i] * q->flcoeffs4[i];
    }
    q->bandWidthT[BANDS - 1] = 0;
    summa = (summa * 0.5 - freebits) / iacc;
    for (i = 0; i < BANDS / 2; i++) {
        rres = summer - freebits;
        if ((rres >= -8) && (rres <= 8))
            break;
        summer = 0;
        iacc   = 0;
        for (j = (stream_format_code & 0x2) ? 4 : 0; j < BANDS; j++) {
            cwlen = av_clipf(((q->flcoeffs4[j] * 0.5) - summa + 0.5), 0, 6);
            q->bitsBandT[j] = cwlen;
            summer += q->bandWidthT[j] * cwlen;
            if (cwlen > 0)
                iacc += q->bandWidthT[j];
        }
        flg = t2;
        t2 = 1;
        if (freebits < summer)
            t2 = -1;
        if (i == 0)
            flg = t2;
        if (flg != t2)
            t1++;
        summa = (float)(summer - freebits) / ((t1 + 1) * iacc) + summa;
    }
    for (i = (stream_format_code & 0x2) ? 4 : 0; i < BANDS; i++) {
        for (j = band_tab[i]; j < band_tab[i + 1]; j++)
            q->CWlengthT[j] = q->bitsBandT[i];
    }
    if (freebits > summer) {
        for (i = 0; i < BANDS; i++) {
            workT[i] = (q->bitsBandT[i] == 6) ? -1.e20
                                              : (q->bitsBandT[i] * -2 + q->flcoeffs4[i] - 0.415);
        }
        highest = 0.0;
        do {
            if (highest <= -1.e20)
                break;
            found_indx = 0;
            highest = -1.e20;
            for (i = 0; i < BANDS; i++) {
                if (workT[i] > highest) {
                    highest = workT[i];
                    found_indx = i;
                }
            }
            if (highest > -1.e20) {
                workT[found_indx] -= 2.0;
                if (++q->bitsBandT[found_indx] == 6)
                    workT[found_indx] = -1.e20;
                for (j = band_tab[found_indx]; j < band_tab[found_indx + 1] && (freebits > summer); j++) {
                    q->CWlengthT[j]++;
                    summer++;
                }
            }
        } while (freebits > summer);
    }
    if (freebits < summer) {
        for (i = 0; i < BANDS; i++) {
            workT[i] = q->bitsBandT[i] ? (q->bitsBandT[i] * -2 + q->flcoeffs4[i] + 1.585)
                                       : 1.e20;
        }
        if (stream_format_code & 0x2) {
            workT[0] = 1.e20;
            workT[1] = 1.e20;
            workT[2] = 1.e20;
            workT[3] = 1.e20;
        }
        while (freebits < summer) {
            lowest   = 1.e10;
            low_indx = 0;
            for (i = 0; i < BANDS; i++) {
                if (workT[i] < lowest) {
                    lowest   = workT[i];
                    low_indx = i;
                }
            }
            workT[low_indx] = lowest + 2.0;
            if (!--q->bitsBandT[low_indx])
                workT[low_indx] = 1.e20;
            for (j = band_tab[low_indx]; j < band_tab[low_indx+1] && (freebits < summer); j++) {
                if (q->CWlengthT[j] > 0) {
                    q->CWlengthT[j]--;
                    summer--;
                }
            }
        }
    }
    return 0;
}
['static int bit_allocation(IMCContext *q, int stream_format_code, int freebits,\n                          int flag)\n{\n    int i, j;\n    const float limit = -1.e20;\n    float highest = 0.0;\n    int indx;\n    int t1 = 0;\n    int t2 = 1;\n    float summa = 0.0;\n    int iacc = 0;\n    int summer = 0;\n    int rres, cwlen;\n    float lowest = 1.e10;\n    int low_indx = 0;\n    float workT[32];\n    int flg;\n    int found_indx = 0;\n    for (i = 0; i < BANDS; i++)\n        highest = FFMAX(highest, q->flcoeffs1[i]);\n    for (i = 0; i < BANDS - 1; i++)\n        q->flcoeffs4[i] = q->flcoeffs3[i] - log(q->flcoeffs5[i]) / log(2);\n    q->flcoeffs4[BANDS - 1] = limit;\n    highest = highest * 0.25;\n    for (i = 0; i < BANDS; i++) {\n        indx = -1;\n        if ((band_tab[i + 1] - band_tab[i]) == q->bandWidthT[i])\n            indx = 0;\n        if ((band_tab[i + 1] - band_tab[i]) > q->bandWidthT[i])\n            indx = 1;\n        if (((band_tab[i + 1] - band_tab[i]) / 2) >= q->bandWidthT[i])\n            indx = 2;\n        if (indx == -1)\n            return AVERROR_INVALIDDATA;\n        q->flcoeffs4[i] += xTab[(indx * 2 + (q->flcoeffs1[i] < highest)) * 2 + flag];\n    }\n    if (stream_format_code & 0x2) {\n        q->flcoeffs4[0] = limit;\n        q->flcoeffs4[1] = limit;\n        q->flcoeffs4[2] = limit;\n        q->flcoeffs4[3] = limit;\n    }\n    for (i = (stream_format_code & 0x2) ? 4 : 0; i < BANDS - 1; i++) {\n        iacc  += q->bandWidthT[i];\n        summa += q->bandWidthT[i] * q->flcoeffs4[i];\n    }\n    q->bandWidthT[BANDS - 1] = 0;\n    summa = (summa * 0.5 - freebits) / iacc;\n    for (i = 0; i < BANDS / 2; i++) {\n        rres = summer - freebits;\n        if ((rres >= -8) && (rres <= 8))\n            break;\n        summer = 0;\n        iacc   = 0;\n        for (j = (stream_format_code & 0x2) ? 4 : 0; j < BANDS; j++) {\n            cwlen = av_clipf(((q->flcoeffs4[j] * 0.5) - summa + 0.5), 0, 6);\n            q->bitsBandT[j] = cwlen;\n            summer += q->bandWidthT[j] * cwlen;\n            if (cwlen > 0)\n                iacc += q->bandWidthT[j];\n        }\n        flg = t2;\n        t2 = 1;\n        if (freebits < summer)\n            t2 = -1;\n        if (i == 0)\n            flg = t2;\n        if (flg != t2)\n            t1++;\n        summa = (float)(summer - freebits) / ((t1 + 1) * iacc) + summa;\n    }\n    for (i = (stream_format_code & 0x2) ? 4 : 0; i < BANDS; i++) {\n        for (j = band_tab[i]; j < band_tab[i + 1]; j++)\n            q->CWlengthT[j] = q->bitsBandT[i];\n    }\n    if (freebits > summer) {\n        for (i = 0; i < BANDS; i++) {\n            workT[i] = (q->bitsBandT[i] == 6) ? -1.e20\n                                              : (q->bitsBandT[i] * -2 + q->flcoeffs4[i] - 0.415);\n        }\n        highest = 0.0;\n        do {\n            if (highest <= -1.e20)\n                break;\n            found_indx = 0;\n            highest = -1.e20;\n            for (i = 0; i < BANDS; i++) {\n                if (workT[i] > highest) {\n                    highest = workT[i];\n                    found_indx = i;\n                }\n            }\n            if (highest > -1.e20) {\n                workT[found_indx] -= 2.0;\n                if (++q->bitsBandT[found_indx] == 6)\n                    workT[found_indx] = -1.e20;\n                for (j = band_tab[found_indx]; j < band_tab[found_indx + 1] && (freebits > summer); j++) {\n                    q->CWlengthT[j]++;\n                    summer++;\n                }\n            }\n        } while (freebits > summer);\n    }\n    if (freebits < summer) {\n        for (i = 0; i < BANDS; i++) {\n            workT[i] = q->bitsBandT[i] ? (q->bitsBandT[i] * -2 + q->flcoeffs4[i] + 1.585)\n                                       : 1.e20;\n        }\n        if (stream_format_code & 0x2) {\n            workT[0] = 1.e20;\n            workT[1] = 1.e20;\n            workT[2] = 1.e20;\n            workT[3] = 1.e20;\n        }\n        while (freebits < summer) {\n            lowest   = 1.e10;\n            low_indx = 0;\n            for (i = 0; i < BANDS; i++) {\n                if (workT[i] < lowest) {\n                    lowest   = workT[i];\n                    low_indx = i;\n                }\n            }\n            workT[low_indx] = lowest + 2.0;\n            if (!--q->bitsBandT[low_indx])\n                workT[low_indx] = 1.e20;\n            for (j = band_tab[low_indx]; j < band_tab[low_indx+1] && (freebits < summer); j++) {\n                if (q->CWlengthT[j] > 0) {\n                    q->CWlengthT[j]--;\n                    summer--;\n                }\n            }\n        }\n    }\n    return 0;\n}']