libavcodec/aac.c:1156: error: Uninitialized Value
  The value read from lpc[_] was never initialized.

libavcodec/aac.c:1156:21: 
1154.             for (m = 0; m < size; m++, start += inc)
1155.                 for (i = 1; i <= FFMIN(m, order); i++)
1156.                     coef[start] -= coef[start - i*inc] * lpc[i-1];
                          ^
1157.         }
1158.     }

static void apply_tns(float coef[1024], TemporalNoiseShaping * tns, IndividualChannelStream * ics, int decode) {
    const int mmm = FFMIN(ics->tns_max_bands,  ics->max_sfb);
    int w, filt, m, i;
    int bottom, top, order, start, end, size, inc;
    float lpc[TNS_MAX_ORDER];
    for (w = 0; w < ics->num_windows; w++) {
        bottom = ics->num_swb;
        for (filt = 0; filt < tns->n_filt[w]; filt++) {
            top    = bottom;
            bottom = FFMAX(0, top - tns->length[w][filt]);
            order  = tns->order[w][filt];
            if (order == 0)
                continue;
            for (m = 0; m < order; m++) {
                float tmp;
                lpc[m] = tns->coef[w][filt][m];
                for (i = 0; i < m/2; i++) {
                    tmp = lpc[i];
                    lpc[i]     += lpc[m] * lpc[m-1-i];
                    lpc[m-1-i] += lpc[m] * tmp;
                }
                if(m & 1)
                    lpc[i]     += lpc[m] * lpc[i];
            }
            start = ics->swb_offset[FFMIN(bottom, mmm)];
            end   = ics->swb_offset[FFMIN(   top, mmm)];
            if ((size = end - start) <= 0)
                continue;
            if (tns->direction[w][filt]) {
                inc = -1; start = end - 1;
            } else {
                inc = 1;
            }
            start += w * 128;
            for (m = 0; m < size; m++, start += inc)
                for (i = 1; i <= FFMIN(m, order); i++)
                    coef[start] -= coef[start - i*inc] * lpc[i-1];
        }
    }
}
['static void apply_tns(float coef[1024], TemporalNoiseShaping * tns, IndividualChannelStream * ics, int decode) {\n    const int mmm = FFMIN(ics->tns_max_bands,  ics->max_sfb);\n    int w, filt, m, i;\n    int bottom, top, order, start, end, size, inc;\n    float lpc[TNS_MAX_ORDER];\n    for (w = 0; w < ics->num_windows; w++) {\n        bottom = ics->num_swb;\n        for (filt = 0; filt < tns->n_filt[w]; filt++) {\n            top    = bottom;\n            bottom = FFMAX(0, top - tns->length[w][filt]);\n            order  = tns->order[w][filt];\n            if (order == 0)\n                continue;\n            for (m = 0; m < order; m++) {\n                float tmp;\n                lpc[m] = tns->coef[w][filt][m];\n                for (i = 0; i < m/2; i++) {\n                    tmp = lpc[i];\n                    lpc[i]     += lpc[m] * lpc[m-1-i];\n                    lpc[m-1-i] += lpc[m] * tmp;\n                }\n                if(m & 1)\n                    lpc[i]     += lpc[m] * lpc[i];\n            }\n            start = ics->swb_offset[FFMIN(bottom, mmm)];\n            end   = ics->swb_offset[FFMIN(   top, mmm)];\n            if ((size = end - start) <= 0)\n                continue;\n            if (tns->direction[w][filt]) {\n                inc = -1; start = end - 1;\n            } else {\n                inc = 1;\n            }\n            start += w * 128;\n            for (m = 0; m < size; m++, start += inc)\n                for (i = 1; i <= FFMIN(m, order); i++)\n                    coef[start] -= coef[start - i*inc] * lpc[i-1];\n        }\n    }\n}']