libavcodec/g2meet.c:704: error: Integer Overflow L2
  ([0, +oo] - 1):unsigned32 by call to `log2_ceil`.

libavcodec/g2meet.c:612:1: Parameter `tile_width`
610. }
611. 
612. static int epic_decode_run_length(ePICContext *dc, int x, int y, int tile_width,
     ^
613.                                   const uint32_t *curr_row,
614.                                   const uint32_t *above_row,

libavcodec/g2meet.c:696:13: Assignment
694.         if (!NWneW && NW == N && N == NE) {
695.             int pos, run, rle;
696.             int start_pos = x + *pRun;
                 ^
697. 
698.             /* scan for a run of pix in the line above */

libavcodec/g2meet.c:703:13: Assignment
701.                 if (!(above_row[pos] == pix))
702.                     break;
703.             run = pos - start_pos - 1;
                 ^
704.             idx = log2_ceil(run);
705.             if (ff_els_decode_bit(&dc->els_ctx, &dc->prev_row_rung[idx]))

libavcodec/g2meet.c:704:19: Call
702.                     break;
703.             run = pos - start_pos - 1;
704.             idx = log2_ceil(run);
                       ^
705.             if (ff_els_decode_bit(&dc->els_ctx, &dc->prev_row_rung[idx]))
706.                 *pRun += run;

libavcodec/g2meet.c:389:1: <LHS trace>
387. #define B_shift  0
388. 
389. static inline int log2_ceil(uint32_t x)
     ^
390. {
391.     int c = 0;

libavcodec/g2meet.c:389:1: Parameter `x`
  387. #define B_shift  0
  388. 
  389. static inline int log2_ceil(uint32_t x)
       ^
  390. {
  391.     int c = 0;

libavcodec/g2meet.c:393:10: Binary operation: ([0, +oo] - 1):unsigned32 by call to `log2_ceil` 
  391.     int c = 0;
  392. 
  393.     for (--x; x > 0; x >>= 1)
                ^
  394.         c++;
  395. 

static inline int log2_ceil(uint32_t x)
{
    int c = 0;
    for (--x; x > 0; x >>= 1)
        c++;
    return c;
}
['static int epic_decode_run_length(ePICContext *dc, int x, int y, int tile_width,\n                                  const uint32_t *curr_row,\n                                  const uint32_t *above_row,\n                                  const uint32_t *above2_row,\n                                  uint32_t *pPix, int *pRun)\n{\n    int idx, got_pixel = 0, WWneW, old_WWneW = 0;\n    uint32_t W, WW, N, NN, NW, NE, NWW, NNW, NNE;\n    *pRun = 0;\n    LOAD_NEIGHBOURS(x);\n    if (dc->next_run_pos == x) {\n        WWneW = 1;\n    } else {\n        idx = (WW  != W)  << 7 |\n              (NW  != W)  << 6 |\n              (N   != NE) << 5 |\n              (NW  != N)  << 4 |\n              (NWW != NW) << 3 |\n              (NNE != NE) << 2 |\n              (NN  != N)  << 1 |\n              (NNW != NW);\n        WWneW = ff_els_decode_bit(&dc->els_ctx, &dc->W_ctx_rung[idx]);\n    }\n    if (WWneW)\n        dc->stack[dc->stack_pos++ & EPIC_PIX_STACK_MAX] = W;\n    else {\n        *pPix     = W;\n        got_pixel = 1;\n    }\n    do {\n        int NWneW = 1;\n        if (got_pixel)\n            NWneW = *pPix != N;\n        else {\n            NWneW = *pRun ? NWneW : NW != W;\n            switch (((NW != N) << 2) | (NWneW << 1) | WWneW) {\n            case 0:\n                break;\n            case 3:\n            case 5:\n            case 6:\n            case 7:\n                if (!is_pixel_on_stack(dc, N)) {\n                    idx = WWneW       << 8 |\n                          (*pRun ? old_WWneW : WW != W) << 7 |\n                          NWneW       << 6 |\n                          (N   != NE) << 5 |\n                          (NW  != N)  << 4 |\n                          (NWW != NW) << 3 |\n                          (NNE != NE) << 2 |\n                          (NN  != N)  << 1 |\n                          (NNW != NW);\n                    if (!ff_els_decode_bit(&dc->els_ctx, &dc->N_ctx_rung[idx])) {\n                        NWneW = 0;\n                        *pPix = N;\n                        got_pixel = 1;\n                        break;\n                    }\n                }\n            default:\n                NWneW = 1;\n                old_WWneW = WWneW;\n                if (!is_pixel_on_stack(dc, N))\n                    dc->stack[dc->stack_pos++ & EPIC_PIX_STACK_MAX] = N;\n            }\n        }\n        (*pRun)++;\n        if (x + *pRun >= tile_width - 1)\n            break;\n        UPDATE_NEIGHBOURS(x + *pRun);\n        if (!NWneW && NW == N && N == NE) {\n            int pos, run, rle;\n            int start_pos = x + *pRun;\n            uint32_t pix = above_row[start_pos + 1];\n            for (pos = start_pos + 2; pos < tile_width; pos++)\n                if (!(above_row[pos] == pix))\n                    break;\n            run = pos - start_pos - 1;\n            idx = log2_ceil(run);\n            if (ff_els_decode_bit(&dc->els_ctx, &dc->prev_row_rung[idx]))\n                *pRun += run;\n            else {\n                int flag;\n                for (pos = idx - 1, rle = 0, flag = 0; pos >= 0; pos--) {\n                    if ((1 << pos) + rle < run &&\n                        ff_els_decode_bit(&dc->els_ctx,\n                                          flag ? &dc->runlen_one\n                                               : &dc->runlen_zeroes[pos])) {\n                        flag = 1;\n                        rle |= 1 << pos;\n                    }\n                }\n                *pRun += rle;\n                break;\n            }\n            if (x + *pRun >= tile_width - 1)\n                break;\n            LOAD_NEIGHBOURS(x + *pRun);\n            WWneW = 0;\n            NWneW = 0;\n        }\n        idx = WWneW       << 7 |\n              NWneW       << 6 |\n              (N   != NE) << 5 |\n              (NW  != N)  << 4 |\n              (NWW != NW) << 3 |\n              (NNE != NE) << 2 |\n              (NN  != N)  << 1 |\n              (NNW != NW);\n        WWneW = ff_els_decode_bit(&dc->els_ctx, &dc->W_ctx_rung[idx]);\n    } while (!WWneW);\n    dc->next_run_pos = x + *pRun;\n    return got_pixel;\n}', 'static inline int log2_ceil(uint32_t x)\n{\n    int c = 0;\n    for (--x; x > 0; x >>= 1)\n        c++;\n    return c;\n}']