1/* { dg-do compile } */
2
3typedef void * gzFile;
4typedef struct
5{
6  int mode;
7  int direct;
8  int seek;
9  int err;
10  char *msg;
11}
12gz_state;
13
14void gz_error (gz_state *state, int err, char *msg);
15void foo (char *);
16void bar (char *, char *);
17
18static void
19gz_reset (gz_state *state)
20{
21  if (state->mode == 7247)
22    {
23      state->direct = 1;
24    }
25  state->seek = 0;
26  gz_error (state, 0, 0);
27}
28
29int
30gzbuffer (void *file, int size)
31{
32  gz_state *state;
33  gz_reset (state);
34}
35
36void gz_error (gz_state *state, int err, char *msg)
37{
38  if (state->msg != 0)
39    {
40      if (state->err != -4)
41	foo (state->msg);
42    }
43  if (msg == 0)
44    return;
45  bar (state->msg, msg);
46}
47