(root)/
gcc-13.2.0/
gcc/
testsuite/
gcc.dg/
analyzer/
zlib-6.c
       1  typedef unsigned char Byte;
       2  typedef unsigned int uInt;
       3  typedef unsigned long uLong;
       4  
       5  typedef struct z_stream_s {
       6    Byte *next_in;
       7    uInt avail_in;
       8    uLong total_in;
       9  } z_stream;
      10  
      11  typedef struct inflate_blocks_state {
      12    uInt bitk;
      13    uLong bitb;
      14    Byte *write;
      15  } inflate_blocks_statef;
      16  
      17  extern int inflate_flush(inflate_blocks_statef *, z_stream *, int);
      18  
      19  int inflate_blocks(inflate_blocks_statef *s, z_stream *z, int r,
      20  		   uLong b, uInt k, Byte *p, uInt n, Byte *q, uInt m) {
      21    while (k < (3)) {
      22      {
      23        if (n)
      24          r = 0;
      25        else {
      26          {
      27  	  s->bitb = b;
      28  	  s->bitk = k;
      29  	  z->avail_in = n;
      30  	  z->total_in += p - z->next_in;
      31  	  z->next_in = p;
      32            s->write = q;
      33          }
      34          return inflate_flush(s, z, r);
      35        }
      36      };
      37      b |= ((uLong)(n--, *p++)) << k;
      38      k += 8;
      39    }
      40  }