Assert
Assert (flush != Z_NO_FLUSH, "no flush?");
Assert(strm->avail_out > 0, "bug2");
Assert(s->bi_valid == 0, "bi_buf not flushed");
Assert(s->hash_bits >= 8 && MAX_MATCH == 258, "Code too clever");
Assert((ulg)s->strstart <= s->window_size-MIN_LOOKAHEAD, "need lookahead");
Assert(cur_match < s->strstart, "no future");
Assert(scan[2] == match[2], "scan[2]?");
Assert(scan <= s->window+(unsigned)(s->window_size-1), "wild scan");
Assert(*scan == *match, "match[2]?");
Assert(scan <= s->window+(unsigned)(s->window_size-1), "wild scan");
Assert(more >= 2, "more < 2");
Assert(s->strstart < s->w_size+MAX_DIST(s) ||
Assert(s->block_start >= 0L, "block gone");
Assert(s->pending < s->lit_bufsize + 2*lx, "pendingBuf overflow");
Assert (length == 256, "tr_static_init: length != 256");
Assert (dist == 256, "tr_static_init: dist != 256");
Assert (dist == 256, "tr_static_init: 256+dist != 512");
Assert (code + bl_count[MAX_BITS]-1 == (1<<MAX_BITS)-1,
Assert(count >= 3 && count <= 6, " 3_6?");
Assert (lcodes >= 257 && dcodes >= 1 && blcodes >= 4, "not enough codes");
Assert (lcodes <= L_CODES && dcodes <= D_CODES && blcodes <= BL_CODES,
Assert(buf != (char*)0, "lost buf");
Assert (s->compressed_len == s->bits_sent, "bad compressed size");
Assert((ush)dist < (ush)MAX_DIST(s) &&
Assert (code < D_CODES, "bad d_code");
Assert(length > 0 && length <= 15, "invalid length");
Assert(state->pending == 0, "There must be no pending bytes");
Assert(state->bi_valid < 8, "There must be less than 8 pending bits");
Assert(cc != DFLTCC_CC_OP2_CORRUPT || param->oesc == 0, "BUG");