libavcodec/alsdec.c:1426: error: Integer Overflow L2
  ([-2, +oo] - 1):unsigned32 by call to `read_block`.

libavcodec/alsdec.c:1402:9: Call
1400.         bd.prev_raw_samples = ctx->prev_raw_samples;
1401. 
1402.         get_block_sizes(ctx, div_blocks, &bs_info);
              ^
1403. 
1404.         for (b = 0; b < ctx->num_blocks; b++) {

libavcodec/alsdec.c:504:1: Parameter `ctx->bc.bits_left`
  502.  *  actual number of samples.
  503.  */
  504. static void get_block_sizes(ALSDecContext *ctx, unsigned int *div_blocks,
       ^
  505.                             uint32_t *bs_info)
  506. {

libavcodec/alsdec.c:1426:28: Call
1424.                 bd.raw_other   = NULL;
1425. 
1426.                 if ((ret = read_block(ctx, &bd)) < 0)
                                 ^
1427.                     return ret;
1428.                 if ((ret = read_channel_data(ctx, ctx->chan_data[c], c)) < 0)

libavcodec/alsdec.c:968:1: Parameter `ctx->bc.bits_left`
  966. /** Read the block data.
  967.  */
  968. static int read_block(ALSDecContext *ctx, ALSBlockData *bd)
       ^
  969. {
  970.     int ret = 0;

libavcodec/alsdec.c:975:9: Call
  973.     *bd->shift_lsbs = 0;
  974.     // read block type flag and read the samples accordingly
  975.     if (bitstream_read_bit(bc)) {
               ^
  976.         ret = read_var_block_data(ctx, bd);
  977.     } else {

libavcodec/bitstream.h:145:1: Parameter `bc->bits_left`
    143. 
    144. /* Return one bit from the buffer. */
    145. static inline unsigned bitstream_read_bit(BitstreamContext *bc)
         ^
    146. {
    147.     if (!bc->bits_left)

libavcodec/bitstream.h:150:12: Call
    148.         refill_64(bc);
    149. 
    150.     return get_val(bc, 1);
                    ^
    151. }
    152. 

libavcodec/bitstream.h:130:1: Parameter `n`
      128. }
      129. 
      130. static inline uint64_t get_val(BitstreamContext *bc, unsigned n)
           ^
      131. {
      132. #ifdef BITSTREAM_READER_LE

libavcodec/bitstream.h:139:5: Assignment
      137.     bc->bits <<= n;
      138. #endif
      139.     bc->bits_left -= n;
               ^
      140. 
      141.     return ret;

libavcodec/alsdec.c:976:15: Call
  974.     // read block type flag and read the samples accordingly
  975.     if (bitstream_read_bit(bc)) {
  976.         ret = read_var_block_data(ctx, bd);
                     ^
  977.     } else {
  978.         read_const_block_data(ctx, bd);

libavcodec/alsdec.c:596:1: Parameter `ctx->bc.bits_left`
    594. /** Read the block data for a non-constant block
    595.  */
    596. static int read_var_block_data(ALSDecContext *ctx, ALSBlockData *bd)
         ^
    597. {
    598.     ALSSpecificConfig *sconf = &ctx->sconf;

libavcodec/alsdec.c:616:23: Call
    614. 
    615.     *bd->opt_order  = 1;
    616.     bd->js_blocks   = bitstream_read_bit(bc);
                               ^
    617. 
    618.     opt_order       = *bd->opt_order;

libavcodec/bitstream.h:145:1: Parameter `bc->bits_left`
      143. 
      144. /* Return one bit from the buffer. */
      145. static inline unsigned bitstream_read_bit(BitstreamContext *bc)
           ^
      146. {
      147.     if (!bc->bits_left)

libavcodec/bitstream.h:150:12: Call
      148.         refill_64(bc);
      149. 
      150.     return get_val(bc, 1);
                      ^
      151. }
      152. 

libavcodec/bitstream.h:130:1: Parameter `n`
        128. }
        129. 
        130. static inline uint64_t get_val(BitstreamContext *bc, unsigned n)
             ^
        131. {
        132. #ifdef BITSTREAM_READER_LE

libavcodec/bitstream.h:139:5: Assignment
        137.     bc->bits <<= n;
        138. #endif
        139.     bc->bits_left -= n;
                 ^
        140. 
        141.     return ret;

libavcodec/alsdec.c:627:35: Call
    625.             log2_sub_blocks = bitstream_read(bc, 2);
    626.         else
    627.             log2_sub_blocks = 2 * bitstream_read_bit(bc);
                                           ^
    628.     }
    629. 

libavcodec/bitstream.h:145:1: Parameter `bc->bits_left`
      143. 
      144. /* Return one bit from the buffer. */
      145. static inline unsigned bitstream_read_bit(BitstreamContext *bc)
           ^
      146. {
      147.     if (!bc->bits_left)

libavcodec/bitstream.h:150:12: Call
      148.         refill_64(bc);
      149. 
      150.     return get_val(bc, 1);
                      ^
      151. }
      152. 

libavcodec/bitstream.h:130:1: <LHS trace>
128. }
129. 
130. static inline uint64_t get_val(BitstreamContext *bc, unsigned n)
     ^
131. {
132. #ifdef BITSTREAM_READER_LE

libavcodec/bitstream.h:130:1: Parameter `bc->bits_left`
        128. }
        129. 
        130. static inline uint64_t get_val(BitstreamContext *bc, unsigned n)
             ^
        131. {
        132. #ifdef BITSTREAM_READER_LE

libavcodec/bitstream.h:130:1: <RHS trace>
128. }
129. 
130. static inline uint64_t get_val(BitstreamContext *bc, unsigned n)
     ^
131. {
132. #ifdef BITSTREAM_READER_LE

libavcodec/bitstream.h:130:1: Parameter `n`
        128. }
        129. 
        130. static inline uint64_t get_val(BitstreamContext *bc, unsigned n)
             ^
        131. {
        132. #ifdef BITSTREAM_READER_LE

libavcodec/bitstream.h:139:5: Binary operation: ([-2, +oo] - 1):unsigned32 by call to `read_block` 
        137.     bc->bits <<= n;
        138. #endif
        139.     bc->bits_left -= n;
                 ^
        140. 
        141.     return ret;
