This is Unofficial EPICS BASE Doxygen Site
defs.h File Reference
#include <assert.h>
#include <ctype.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <errno.h>
+ Include dependency graph for defs.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  bucket
 Internal: Hash table structure. More...
 
struct  core
 
struct  shifts
 
struct  reductions
 
struct  action
 

Macros

#define MAXCHAR   255
 
#define MAXSHORT   32767
 
#define MINSHORT   -32768
 
#define MAXTABLE   32500
 
#define BITS_PER_WORD   32
 
#define WORDSIZE(n)   (((n)+(BITS_PER_WORD-1))/BITS_PER_WORD)
 
#define BIT(r, n)   ((((r)[(n)>>5])>>((n)&31))&1)
 
#define SETBIT(r, n)   ((r)[(n)>>5]|=((unsigned)1<<((n)&31)))
 
#define NUL   '\0' /* the null character */
 
#define NEWLINE   '\n' /* line feed */
 
#define SP   ' ' /* space */
 
#define BS   '\b' /* backspace */
 
#define HT   '\t' /* horizontal tab */
 
#define VT   '\013' /* vertical tab */
 
#define CR   '\r' /* carriage return */
 
#define FF   '\f' /* form feed */
 
#define QUOTE   '\'' /* single quote */
 
#define DOUBLE_QUOTE   '\"' /* double quote */
 
#define BACKSLASH   '\\' /* backslash */
 
#define CODE_SUFFIX   ".code.c"
 
#define DEFINES_SUFFIX   ".tab.h"
 
#define OUTPUT_SUFFIX   ".tab.c"
 
#define VERBOSE_SUFFIX   ".output"
 
#define TOKEN   0
 
#define LEFT   1
 
#define RIGHT   2
 
#define NONASSOC   3
 
#define MARK   4
 
#define TEXT   5
 
#define TYPE   6
 
#define START   7
 
#define UNION   8
 
#define IDENT   9
 
#define UNKNOWN   0
 
#define TERM   1
 
#define NONTERM   2
 
#define UNDEFINED   (-1)
 
#define SHIFT   1
 
#define REDUCE   2
 
#define IS_IDENT(c)   (isalnum(c) || (c) == '_' || (c) == '.' || (c) == '$')
 
#define IS_OCTAL(c)   ((c) >= '0' && (c) <= '7')
 
#define NUMERIC_VALUE(c)   ((c) - '0')
 
#define ISTOKEN(s)   ((s) < start_symbol)
 
#define ISVAR(s)   ((s) >= start_symbol)
 
#define CALLOC(k, n)   (calloc((unsigned)(k),(unsigned)(n)))
 
#define FREE(x)   (free((char*)(x)))
 
#define MALLOC(n)   (malloc((unsigned)(n)))
 
#define NEW(t)   ((t*)allocate(sizeof(t)))
 
#define NEW2(n, t)   ((t*)allocate((unsigned)((n)*sizeof(t))))
 
#define REALLOC(p, n)   (realloc((char*)(p),(unsigned)(n)))
 
#define NORETURN
 

Typedefs

typedef struct bucket bucket
 
typedef struct core core
 
typedef struct shifts shifts
 
typedef struct reductions reductions
 
typedef struct action action
 

Functions

void done (int k) NORETURN
 
char * allocate (unsigned int n)
 
void no_space (void) NORETURN
 
void fatal (char *msg) NORETURN
 
void open_error (char *filename) NORETURN
 
void unexpected_EOF (void) NORETURN
 
void syntax_error (int st_lineno, char *st_line, char *st_cptr) NORETURN
 
void unterminated_comment (int c_lineno, char *c_line, char *c_cptr) NORETURN
 
void unterminated_string (int s_lineno, char *s_line, char *s_cptr) NORETURN
 
void unterminated_text (int t_lineno, char *t_line, char *t_cptr) NORETURN
 
void unterminated_union (int u_lineno, char *u_line, char *u_cptr) NORETURN
 
void over_unionized (char *u_cptr) NORETURN
 
void illegal_tag (int t_lineno, char *t_line, char *t_cptr) NORETURN
 
void illegal_character (char *c_cptr) NORETURN
 
void used_reserved (char *s) NORETURN
 
void tokenized_start (char *s) NORETURN
 
void retyped_warning (char *s)
 
void reprec_warning (char *s)
 
void revalued_warning (char *s)
 
void terminal_start (char *s)
 
void restarted_warning (void)
 
void no_grammar (void) NORETURN
 
void terminal_lhs (int s_lineno) NORETURN
 
void prec_redeclared (void)
 
void unterminated_action (int a_lineno, char *a_line, char *a_cptr) NORETURN
 
void dollar_warning (int a_lineno, int i)
 
void dollar_error (int a_lineno, char *a_line, char *a_cptr) NORETURN
 
void untyped_lhs (void) NORETURN
 
void untyped_rhs (int i, char *s) NORETURN
 
void unknown_rhs (int i) NORETURN
 
void default_action_warning (void)
 
void undefined_goal (char *s) NORETURN
 
void undefined_symbol_warning (char *s)
 
bucketmake_bucket (char *name)
 
bucketlookup (char *name)
 
void create_symbol_table (void)
 
void free_symbol_table (void)
 
void free_symbols (void)
 
void set_first_derives (void)
 
void closure (short int *nucleus, int n)
 
void finalize_closure (void)
 
void reader (void)
 
void lr0 (void)
 
void lalr (void)
 
void make_parser (void)
 
void free_parser (void)
 
void reflexive_transitive_closure (unsigned int *R, int n)
 
void output (void)
 
int default_goto (int symbol)
 
int matching_vector (int vector)
 
int pack_vector (int vector)
 
void write_section (char *section[])
 
void verbose (void)
 

Variables

char dflag
 
char lflag
 
char rflag
 
char tflag
 
char vflag
 
char * symbol_prefix
 
char * myname
 
char * cptr
 
char * line
 
int lineno
 
int outline
 
char * banner []
 
char * tables []
 
char * header []
 
char * body []
 
char * trailer []
 
char * code_file_name
 
char * defines_file_name
 
char * input_file_name
 
char * output_file_name
 
char * verbose_file_name
 
FILE * action_file
 
FILE * code_file
 
FILE * defines_file
 
FILE * input_file
 
FILE * output_file
 
FILE * text_file
 
FILE * union_file
 
FILE * verbose_file
 
int nitems
 
int nrules
 
int nsyms
 
int ntokens
 
int nvars
 
int ntags
 
char unionized
 
char line_format []
 
int start_symbol
 
char ** symbol_name
 
short * symbol_value
 
short * symbol_prec
 
char * symbol_assoc
 
short * ritem
 
short * rlhs
 
short * rrhs
 
short * rprec
 
char * rassoc
 
short ** derives
 
char * nullable
 
bucketfirst_symbol
 
bucketlast_symbol
 
int nstates
 
corefirst_state
 
shiftsfirst_shift
 
reductionsfirst_reduction
 
short * accessing_symbol
 
core ** state_table
 
shifts ** shift_table
 
reductions ** reduction_table
 
unsigned * LA
 
short * LAruleno
 
short * lookaheads
 
short * goto_map
 
short * from_state
 
short * to_state
 
action ** parser
 
int SRtotal
 
int RRtotal
 
short * SRconflicts
 
short * RRconflicts
 
short * defred
 
short * rules_used
 
short nunused
 
short final_state
 

Macro Definition Documentation

#define BACKSLASH   '\\' /* backslash */

Definition at line 51 of file defs.h.

#define BIT (   r,
 
)    ((((r)[(n)>>5])>>((n)&31))&1)

Definition at line 35 of file defs.h.

#define BITS_PER_WORD   32

Definition at line 33 of file defs.h.

#define BS   '\b' /* backspace */

Definition at line 44 of file defs.h.

#define CALLOC (   k,
 
)    (calloc((unsigned)(k),(unsigned)(n)))

Definition at line 109 of file defs.h.

#define CODE_SUFFIX   ".code.c"

Definition at line 56 of file defs.h.

#define CR   '\r' /* carriage return */

Definition at line 47 of file defs.h.

#define DEFINES_SUFFIX   ".tab.h"

Definition at line 57 of file defs.h.

#define DOUBLE_QUOTE   '\"' /* double quote */

Definition at line 50 of file defs.h.

#define FF   '\f' /* form feed */

Definition at line 48 of file defs.h.

#define FREE (   x)    (free((char*)(x)))

Definition at line 110 of file defs.h.

#define HT   '\t' /* horizontal tab */

Definition at line 45 of file defs.h.

#define IDENT   9

Definition at line 73 of file defs.h.

#define IS_IDENT (   c)    (isalnum(c) || (c) == '_' || (c) == '.' || (c) == '$')

Definition at line 96 of file defs.h.

#define IS_OCTAL (   c)    ((c) >= '0' && (c) <= '7')

Definition at line 97 of file defs.h.

#define ISTOKEN (   s)    ((s) < start_symbol)

Definition at line 103 of file defs.h.

#define ISVAR (   s)    ((s) >= start_symbol)

Definition at line 104 of file defs.h.

#define LEFT   1

Definition at line 65 of file defs.h.

#define MALLOC (   n)    (malloc((unsigned)(n)))

Definition at line 111 of file defs.h.

#define MARK   4

Definition at line 68 of file defs.h.

#define MAXCHAR   255

Definition at line 29 of file defs.h.

#define MAXSHORT   32767

Definition at line 30 of file defs.h.

#define MAXTABLE   32500

Definition at line 32 of file defs.h.

#define MINSHORT   -32768

Definition at line 31 of file defs.h.

#define NEW (   t)    ((t*)allocate(sizeof(t)))

Definition at line 112 of file defs.h.

#define NEW2 (   n,
 
)    ((t*)allocate((unsigned)((n)*sizeof(t))))

Definition at line 113 of file defs.h.

#define NEWLINE   '\n' /* line feed */

Definition at line 42 of file defs.h.

#define NONASSOC   3

Definition at line 67 of file defs.h.

#define NONTERM   2

Definition at line 80 of file defs.h.

#define NORETURN

Definition at line 283 of file defs.h.

#define NUL   '\0' /* the null character */

Definition at line 41 of file defs.h.

#define NUMERIC_VALUE (   c)    ((c) - '0')

Definition at line 98 of file defs.h.

#define OUTPUT_SUFFIX   ".tab.c"

Definition at line 58 of file defs.h.

#define QUOTE   '\'' /* single quote */

Definition at line 49 of file defs.h.

#define REALLOC (   p,
 
)    (realloc((char*)(p),(unsigned)(n)))

Definition at line 114 of file defs.h.

#define REDUCE   2

Definition at line 91 of file defs.h.

#define RIGHT   2

Definition at line 66 of file defs.h.

#define SETBIT (   r,
 
)    ((r)[(n)>>5]|=((unsigned)1<<((n)&31)))

Definition at line 36 of file defs.h.

#define SHIFT   1

Definition at line 90 of file defs.h.

#define SP   ' ' /* space */

Definition at line 43 of file defs.h.

#define START   7

Definition at line 71 of file defs.h.

#define TERM   1

Definition at line 79 of file defs.h.

#define TEXT   5

Definition at line 69 of file defs.h.

#define TOKEN   0

Definition at line 64 of file defs.h.

#define TYPE   6

Definition at line 70 of file defs.h.

#define UNDEFINED   (-1)

Definition at line 85 of file defs.h.

#define UNION   8

Definition at line 72 of file defs.h.

#define UNKNOWN   0

Definition at line 78 of file defs.h.

#define VERBOSE_SUFFIX   ".output"

Definition at line 59 of file defs.h.

#define VT   '\013' /* vertical tab */

Definition at line 46 of file defs.h.

#define WORDSIZE (   n)    (((n)+(BITS_PER_WORD-1))/BITS_PER_WORD)

Definition at line 34 of file defs.h.

Typedef Documentation

typedef struct action action

Definition at line 174 of file defs.h.

typedef struct bucket bucket

Definition at line 119 of file defs.h.

typedef struct core core

Definition at line 136 of file defs.h.

typedef struct reductions reductions

Definition at line 162 of file defs.h.

typedef struct shifts shifts

Definition at line 150 of file defs.h.

Function Documentation

char* allocate ( unsigned int  n)

Definition at line 230 of file antelope.c.

231 {
232  char *p;
233 
234  p = NULL;
235  if (n)
236  {
237  p = CALLOC(1, n);
238  if (!p) no_space();
239  }
240  return (p);
241 }
#define NULL
Definition: catime.c:38
#define CALLOC(k, n)
Definition: defs.h:109
void no_space(void) NORETURN
Definition: error.c:23
void closure ( short int *  nucleus,
int  n 
)

Definition at line 120 of file closure.c.

121 {
122  int ruleno;
123  unsigned word;
124  unsigned i;
125  short *csp;
126  unsigned *dsp;
127  unsigned *rsp;
128  int rulesetsize;
129 
130  short *csend;
131  unsigned *rsend;
132  int symbol;
133  int itemno;
134 
135  rulesetsize = WORDSIZE(nrules);
136  rsp = ruleset;
137  rsend = ruleset + rulesetsize;
138  for (rsp = ruleset; rsp < rsend; rsp++)
139  *rsp = 0;
140 
141  csend = nucleus + n;
142  for (csp = nucleus; csp < csend; ++csp)
143  {
144  symbol = ritem[*csp];
145  if (ISVAR(symbol))
146  {
147  dsp = first_derives + symbol * rulesetsize;
148  rsp = ruleset;
149  while (rsp < rsend)
150  *rsp++ |= *dsp++;
151  }
152  }
153 
154  ruleno = 0;
156  csp = nucleus;
157  for (rsp = ruleset; rsp < rsend; ++rsp)
158  {
159  word = *rsp;
160  if (word)
161  {
162  for (i = 0; i < BITS_PER_WORD; ++i)
163  {
164  if (word & (1 << i))
165  {
166  itemno = rrhs[ruleno+i];
167  while (csp < csend && *csp < itemno)
168  *itemsetend++ = *csp++;
169  *itemsetend++ = itemno;
170  while (csp < csend && *csp == itemno)
171  ++csp;
172  }
173  }
174  }
175  ruleno += BITS_PER_WORD;
176  }
177 
178  while (csp < csend)
179  *itemsetend++ = *csp++;
180 
181 #ifdef DEBUG
182  print_closure(n);
183 #endif
184 }
int i
Definition: scan.c:967
unsigned * ruleset
Definition: closure.c:14
short * itemset
Definition: closure.c:12
short * itemsetend
Definition: closure.c:13
int nrules
Definition: antelope.c:56
#define ISVAR(s)
Definition: defs.h:104
#define BITS_PER_WORD
Definition: defs.h:33
#define WORDSIZE(n)
Definition: defs.h:34
short * ritem
Definition: antelope.c:67
short * rrhs
Definition: antelope.c:69
void create_symbol_table ( void  )

Definition at line 88 of file symtab.c.

89 {
90  int i;
91  bucket *bp;
92 
93  symbol_table = (bucket **) MALLOC(TABLE_SIZE*sizeof(bucket *));
94  if (symbol_table == 0) no_space();
95  for (i = 0; i < TABLE_SIZE; i++)
96  symbol_table[i] = 0;
97 
98  bp = make_bucket("error");
99  bp->index = 1;
100  bp->class = TERM;
101 
102  first_symbol = bp;
103  last_symbol = bp;
104  symbol_table[hash("error")] = bp;
105 }
#define MALLOC(n)
Definition: defs.h:111
int i
Definition: scan.c:967
bucket ** symbol_table
Definition: symtab.c:18
#define TERM
Definition: defs.h:79
bucket * make_bucket(char *name)
Definition: symtab.c:40
char class
Definition: defs.h:129
bucket * first_symbol
Definition: symtab.c:19
bucket * last_symbol
Definition: symtab.c:20
short index
Definition: defs.h:127
#define TABLE_SIZE
Definition: symtab.c:15
void no_space(void) NORETURN
Definition: error.c:23
Internal: Hash table structure.
Definition: bucketLib.h:48
void default_action_warning ( void  )

Definition at line 295 of file error.c.

296 {
297  fprintf(stderr, "%s: warning - line %d of \"%s\", the default action assigns an \
298 undefined value to $$\n", myname, lineno, input_file_name);
299 }
int lineno
Definition: antelope.c:33
char * myname
Definition: antelope.c:30
#define stderr
Definition: epicsStdio.h:32
char * input_file_name
Definition: antelope.c:38
int default_goto ( int  symbol)

Definition at line 358 of file output.c.

359 {
360  int i;
361  int m;
362  int n;
363  int default_state;
364  int max;
365 
366  m = goto_map[symbol];
367  n = goto_map[symbol + 1];
368 
369  if (m == n) return (0);
370 
371  for (i = 0; i < nstates; i++)
372  state_count[i] = 0;
373 
374  for (i = m; i < n; i++)
375  state_count[to_state[i]]++;
376 
377  max = 0;
378  default_state = 0;
379  for (i = 0; i < nstates; i++)
380  {
381  if (state_count[i] > max)
382  {
383  max = state_count[i];
384  default_state = i;
385  }
386  }
387 
388  return (default_state);
389 }
#define max(x, y)
Definition: flexdef.h:81
int i
Definition: scan.c:967
int nstates
Definition: lr0.c:16
short * goto_map
Definition: lalr.c:27
short * to_state
Definition: lalr.c:29
void dollar_error ( int  a_lineno,
char *  a_line,
char *  a_cptr 
)

Definition at line 258 of file error.c.

259 {
260  fprintf(stderr, "%s: error - line %d of \"%s\", illegal $-name\n",
261  myname, a_lineno, input_file_name);
262  print_pos(a_line, a_cptr);
263  done(1);
264 }
char * myname
Definition: antelope.c:30
void done(int k)
Definition: antelope.c:77
#define stderr
Definition: epicsStdio.h:32
char * input_file_name
Definition: antelope.c:38
void dollar_warning ( int  a_lineno,
int  i 
)

Definition at line 250 of file error.c.

251 {
252  fprintf(stderr, "%s: warning - line %d of \"%s\", $%d references beyond the \
253 end of the current rule\n", myname, a_lineno, input_file_name, i);
254 }
int i
Definition: scan.c:967
char * myname
Definition: antelope.c:30
#define stderr
Definition: epicsStdio.h:32
char * input_file_name
Definition: antelope.c:38
void done ( int  k)

Definition at line 77 of file antelope.c.

78 {
79  if (action_file) { fclose(action_file); }
80  if (text_file) { fclose(text_file); }
81  if (union_file) { fclose(union_file); }
82  exit(k);
83 }
FILE * union_file
Definition: antelope.c:50
FILE * text_file
Definition: antelope.c:48
FILE * action_file
Definition: antelope.c:42
void fatal ( char *  msg)

Definition at line 15 of file error.c.

16 {
17  fprintf(stderr, "%s: fatal - %s\n", myname, msg);
18  done(2);
19 }
char * myname
Definition: antelope.c:30
void done(int k)
Definition: antelope.c:77
#define stderr
Definition: epicsStdio.h:32
void finalize_closure ( void  )

Definition at line 189 of file closure.c.

190 {
191  FREE(itemset);
192  FREE(ruleset);
193  FREE(first_derives + ntokens * WORDSIZE(nrules));
194 }
unsigned * ruleset
Definition: closure.c:14
short * itemset
Definition: closure.c:12
int nrules
Definition: antelope.c:56
#define WORDSIZE(n)
Definition: defs.h:34
#define FREE(x)
Definition: defs.h:110
int ntokens
Definition: antelope.c:58
void free_parser ( void  )

Definition at line 363 of file mkpar.c.

364 {
365  int i;
366 
367  for (i = 0; i < nstates; i++)
368  free_action_row(parser[i]);
369 
370  FREE(parser);
371 }
int i
Definition: scan.c:967
int nstates
Definition: lr0.c:16
action ** parser
Definition: mkpar.c:12
#define FREE(x)
Definition: defs.h:110
void free_symbol_table ( void  )

Definition at line 109 of file symtab.c.

110 {
112  symbol_table = 0;
113 }
bucket ** symbol_table
Definition: symtab.c:18
#define FREE(x)
Definition: defs.h:110
void free_symbols ( void  )

Definition at line 117 of file symtab.c.

118 {
119  bucket *p, *q;
120 
121  for (p = first_symbol; p; p = q)
122  {
123  q = p->next;
124  FREE(p);
125  }
126 }
bucket * first_symbol
Definition: symtab.c:19
#define FREE(x)
Definition: defs.h:110
struct bucket * next
Definition: defs.h:123
Internal: Hash table structure.
Definition: bucketLib.h:48
void illegal_character ( char *  c_cptr)

Definition at line 145 of file error.c.

146 {
147  fprintf(stderr, "%s: error - line %d of \"%s\", illegal character\n",
149  print_pos(line, c_cptr);
150  done(1);
151 }
int lineno
Definition: antelope.c:33
char * line
Definition: reader.c:25
char * myname
Definition: antelope.c:30
void done(int k)
Definition: antelope.c:77
#define stderr
Definition: epicsStdio.h:32
char * input_file_name
Definition: antelope.c:38
void illegal_tag ( int  t_lineno,
char *  t_line,
char *  t_cptr 
)

Definition at line 135 of file error.c.

136 {
137  fprintf(stderr, "%s: error - line %d of \"%s\", illegal tag\n",
138  myname, t_lineno, input_file_name);
139  print_pos(t_line, t_cptr);
140  done(1);
141 }
char * myname
Definition: antelope.c:30
void done(int k)
Definition: antelope.c:77
#define stderr
Definition: epicsStdio.h:32
char * input_file_name
Definition: antelope.c:38
void lalr ( void  )

Definition at line 60 of file lalr.c.

61 {
63 
64  set_state_table();
65  set_accessing_symbol();
66  set_shift_table();
67  set_reduction_table();
68  set_maxrhs();
69  initialize_LA();
70  set_goto_map();
71  initialize_F();
72  build_relations();
73  compute_FOLLOWS();
74  compute_lookaheads();
75 }
#define WORDSIZE(n)
Definition: defs.h:34
int tokensetsize
Definition: lalr.c:19
int ntokens
Definition: antelope.c:58
bucket* lookup ( char *  name)

Definition at line 66 of file symtab.c.

67 {
68  bucket *bp, **bpp;
69 
70  bpp = symbol_table + hash(name);
71  bp = *bpp;
72 
73  while (bp)
74  {
75  if (strcmp(name, bp->name) == 0) return (bp);
76  bpp = &bp->link;
77  bp = *bpp;
78  }
79 
80  *bpp = bp = make_bucket(name);
81  last_symbol->next = bp;
82  last_symbol = bp;
83 
84  return (bp);
85 }
bucket ** symbol_table
Definition: symtab.c:18
char * name
Definition: defs.h:124
struct bucket * link
Definition: defs.h:122
bucket * make_bucket(char *name)
Definition: symtab.c:40
bucket * last_symbol
Definition: symtab.c:20
struct bucket * next
Definition: defs.h:123
Internal: Hash table structure.
Definition: bucketLib.h:48
void lr0 ( void  )

Definition at line 608 of file lr0.c.

609 {
610  set_derives();
611  set_nullable();
612  generate_states();
613 }
bucket* make_bucket ( char *  name)

Definition at line 40 of file symtab.c.

41 {
42  bucket *bp;
43 
44  assert(name);
45  bp = (bucket *) MALLOC(sizeof(bucket));
46  if (bp == 0) no_space();
47  bp->link = 0;
48  bp->next = 0;
49  bp->name = MALLOC(strlen(name) + 1);
50  if (bp->name == 0) no_space();
51  bp->tag = 0;
52  bp->value = UNDEFINED;
53  bp->index = 0;
54  bp->prec = 0;
55  bp-> class = UNKNOWN;
56  bp->assoc = TOKEN;
57 
58  if (bp->name == 0) no_space();
59  strcpy(bp->name, name);
60 
61  return (bp);
62 }
char * tag
Definition: defs.h:125
#define TOKEN
Definition: defs.h:64
#define assert(exp)
Declare that a condition should be true.
Definition: epicsAssert.h:70
#define MALLOC(n)
Definition: defs.h:111
#define UNDEFINED
Definition: defs.h:85
char * name
Definition: defs.h:124
#define UNKNOWN
Definition: defs.h:78
short prec
Definition: defs.h:128
struct bucket * link
Definition: defs.h:122
short index
Definition: defs.h:127
struct bucket * next
Definition: defs.h:123
short value
Definition: defs.h:126
void no_space(void) NORETURN
Definition: error.c:23
char assoc
Definition: defs.h:130
Internal: Hash table structure.
Definition: bucketLib.h:48
void make_parser ( void  )

Definition at line 37 of file mkpar.c.

38 {
39  int i;
40 
41  parser = NEW2(nstates, action *);
42  for (i = 0; i < nstates; i++)
43  parser[i] = parse_actions(i);
44 
45  find_final_state();
46  remove_conflicts();
47  unused_rules();
48  if (SRtotal + RRtotal > 0) total_conflicts();
49  defreds();
50 }
int i
Definition: scan.c:967
Definition: defs.h:175
#define NEW2(n, t)
Definition: defs.h:113
int SRtotal
Definition: mkpar.c:13
int nstates
Definition: lr0.c:16
action ** parser
Definition: mkpar.c:12
int RRtotal
Definition: mkpar.c:14
int matching_vector ( int  vector)

Definition at line 535 of file output.c.

536 {
537  int i;
538  int j;
539  int k;
540  int t;
541  int w;
542  int match;
543  int prev;
544 
545  i = order[vector];
546  if (i >= 2*nstates)
547  return (-1);
548 
549  t = tally[i];
550  w = width[i];
551 
552  for (prev = vector - 1; prev >= 0; prev--)
553  {
554  j = order[prev];
555  if (width[j] != w || tally[j] != t)
556  return (-1);
557 
558  match = 1;
559  for (k = 0; match && k < t; k++)
560  {
561  if (tos[j][k] != tos[i][k] || froms[j][k] != froms[i][k])
562  match = 0;
563  }
564 
565  if (match)
566  return (j);
567  }
568 
569  return (-1);
570 }
int i
Definition: scan.c:967
int nstates
Definition: lr0.c:16
void no_grammar ( void  )

Definition at line 214 of file error.c.

215 {
216  fprintf(stderr, "%s: error - line %d of \"%s\", no grammar has been \
217 specified\n", myname, lineno, input_file_name);
218  done(1);
219 }
int lineno
Definition: antelope.c:33
char * myname
Definition: antelope.c:30
void done(int k)
Definition: antelope.c:77
#define stderr
Definition: epicsStdio.h:32
char * input_file_name
Definition: antelope.c:38
void no_space ( void  )

Definition at line 23 of file error.c.

24 {
25  fprintf(stderr, "%s: fatal - out of space\n", myname);
26  done(2);
27 }
char * myname
Definition: antelope.c:30
void done(int k)
Definition: antelope.c:77
#define stderr
Definition: epicsStdio.h:32
void open_error ( char *  filename)

Definition at line 31 of file error.c.

32 {
33  fprintf(stderr, "%s: fatal - cannot open \"%s\"\n", myname, filename);
34  done(2);
35 }
char * myname
Definition: antelope.c:30
void done(int k)
Definition: antelope.c:77
#define stderr
Definition: epicsStdio.h:32
void output ( void  )

Definition at line 51 of file output.c.

52 {
53  free_itemsets();
54  free_shifts();
55  free_reductions();
56  output_prefix();
57  output_stored_text();
58  output_defines();
59  output_rule_data();
60  output_yydefred();
61  output_actions();
62  free_parser();
63  output_debug();
64  output_stype();
67  output_trailing_text();
69  output_semantic_actions();
71 }
void free_parser(void)
Definition: mkpar.c:363
char * body[]
Definition: skeleton.c:81
void write_section(char *section[])
Definition: skeleton.c:284
char * tables[]
Definition: skeleton.c:32
char * trailer[]
Definition: skeleton.c:221
char * header[]
Definition: skeleton.c:51
char rflag
Definition: antelope.c:24
void over_unionized ( char *  u_cptr)

Definition at line 125 of file error.c.

126 {
127  fprintf(stderr, "%s: error - line %d of \"%s\", too many %%union \
128 declarations\n", myname, lineno, input_file_name);
129  print_pos(line, u_cptr);
130  done(1);
131 }
int lineno
Definition: antelope.c:33
char * line
Definition: reader.c:25
char * myname
Definition: antelope.c:30
void done(int k)
Definition: antelope.c:77
#define stderr
Definition: epicsStdio.h:32
char * input_file_name
Definition: antelope.c:38
int pack_vector ( int  vector)

Definition at line 575 of file output.c.

576 {
577  int i, j, k, l;
578  int t;
579  int loc;
580  int ok;
581  short *from;
582  short *to;
583  int newmax;
584 
585  i = order[vector];
586  t = tally[i];
587  assert(t);
588 
589  from = froms[i];
590  to = tos[i];
591 
592  j = lowzero - from[0];
593  for (k = 1; k < t; ++k)
594  if (lowzero - from[k] > j)
595  j = lowzero - from[k];
596  for (;; ++j)
597  {
598  if (j == 0)
599  continue;
600  ok = 1;
601  for (k = 0; ok && k < t; k++)
602  {
603  loc = j + from[k];
604  if (loc >= maxtable)
605  {
606  if (loc >= MAXTABLE)
607  fatal("maximum table size exceeded");
608 
609  newmax = maxtable;
610  do { newmax += 200; } while (newmax <= loc);
611  table = (short *) REALLOC(table, newmax*sizeof(short));
612  if (table == 0) no_space();
613  check = (short *) REALLOC(check, newmax*sizeof(short));
614  if (check == 0) no_space();
615  for (l = maxtable; l < newmax; ++l)
616  {
617  table[l] = 0;
618  check[l] = -1;
619  }
620  maxtable = newmax;
621  }
622 
623  if (check[loc] != -1)
624  ok = 0;
625  }
626  for (k = 0; ok && k < vector; k++)
627  {
628  if (pos[k] == j)
629  ok = 0;
630  }
631  if (ok)
632  {
633  for (k = 0; k < t; k++)
634  {
635  loc = j + from[k];
636  table[loc] = to[k];
637  check[loc] = from[k];
638  if (loc > high) high = loc;
639  }
640 
641  while (check[lowzero] != -1)
642  ++lowzero;
643 
644  return (j);
645  }
646  }
647 }
void fatal(char *msg) NORETURN
Definition: error.c:15
#define MAXTABLE
Definition: defs.h:32
#define assert(exp)
Declare that a condition should be true.
Definition: epicsAssert.h:70
int i
Definition: scan.c:967
void no_space(void) NORETURN
Definition: error.c:23
#define REALLOC(p, n)
Definition: defs.h:114
void prec_redeclared ( void  )

Definition at line 232 of file error.c.

233 {
234  fprintf(stderr, "%s: warning - line %d of \"%s\", conflicting %%prec \
235 specifiers\n", myname, lineno, input_file_name);
236 }
int lineno
Definition: antelope.c:33
char * myname
Definition: antelope.c:30
#define stderr
Definition: epicsStdio.h:32
char * input_file_name
Definition: antelope.c:38
void reader ( void  )

Definition at line 1791 of file reader.c.

1792 {
1795  read_declarations();
1796  read_grammar();
1798  free_tags();
1799  pack_names();
1800  check_symbols();
1801  pack_symbols();
1802  pack_grammar();
1803  free_symbols();
1804  print_grammar();
1805 }
char * banner[]
Definition: skeleton.c:19
void write_section(char *section[])
Definition: skeleton.c:284
void free_symbols(void)
Definition: symtab.c:117
void create_symbol_table(void)
Definition: symtab.c:88
void free_symbol_table(void)
Definition: symtab.c:109
void reflexive_transitive_closure ( unsigned int *  R,
int  n 
)

Definition at line 63 of file warshall.c.

64 {
65  int rowsize;
66  unsigned i;
67  unsigned *rp;
68  unsigned *relend;
69 
70  transitive_closure(R, n);
71 
72  rowsize = WORDSIZE(n);
73  relend = R + n*rowsize;
74 
75  i = 0;
76  rp = R;
77  while (rp < relend)
78  {
79  *rp |= (1 << i);
80  if (++i >= BITS_PER_WORD)
81  {
82  i = 0;
83  rp++;
84  }
85 
86  rp += rowsize;
87  }
88 }
int i
Definition: scan.c:967
#define BITS_PER_WORD
Definition: defs.h:33
#define WORDSIZE(n)
Definition: defs.h:34
void reprec_warning ( char *  s)

Definition at line 181 of file error.c.

182 {
183  fprintf(stderr, "%s: warning - line %d of \"%s\", the precedence of %s has been \
184 redeclared\n", myname, lineno, input_file_name, s);
185 }
int lineno
Definition: antelope.c:33
char * myname
Definition: antelope.c:30
#define stderr
Definition: epicsStdio.h:32
char * input_file_name
Definition: antelope.c:38
void restarted_warning ( void  )

Definition at line 206 of file error.c.

207 {
208  fprintf(stderr, "%s: warning - line %d of \"%s\", the start symbol has been \
209 redeclared\n", myname, lineno, input_file_name);
210 }
int lineno
Definition: antelope.c:33
char * myname
Definition: antelope.c:30
#define stderr
Definition: epicsStdio.h:32
char * input_file_name
Definition: antelope.c:38
void retyped_warning ( char *  s)

Definition at line 173 of file error.c.

174 {
175  fprintf(stderr, "%s: warning - line %d of \"%s\", the type of %s has been \
176 redeclared\n", myname, lineno, input_file_name, s);
177 }
int lineno
Definition: antelope.c:33
char * myname
Definition: antelope.c:30
#define stderr
Definition: epicsStdio.h:32
char * input_file_name
Definition: antelope.c:38
void revalued_warning ( char *  s)

Definition at line 189 of file error.c.

190 {
191  fprintf(stderr, "%s: warning - line %d of \"%s\", the value of %s has been \
192 redeclared\n", myname, lineno, input_file_name, s);
193 }
int lineno
Definition: antelope.c:33
char * myname
Definition: antelope.c:30
#define stderr
Definition: epicsStdio.h:32
char * input_file_name
Definition: antelope.c:38
void set_first_derives ( void  )

Definition at line 64 of file closure.c.

65 {
66  unsigned *rrow;
67  unsigned *vrow;
68  int j;
69  unsigned k;
70  unsigned cword = 0;
71  short *rp;
72 
73  int rule;
74  int i;
75  int rulesetsize;
76  int varsetsize;
77 
78  rulesetsize = WORDSIZE(nrules);
79  varsetsize = WORDSIZE(nvars);
80  first_derives = NEW2(nvars * rulesetsize, unsigned) - ntokens * rulesetsize;
81 
82  set_EFF();
83 
84  rrow = first_derives + ntokens * rulesetsize;
85  for (i = start_symbol; i < nsyms; i++)
86  {
87  vrow = EFF + ((i - ntokens) * varsetsize);
88  k = BITS_PER_WORD;
89  for (j = start_symbol; j < nsyms; k++, j++)
90  {
91  if (k >= BITS_PER_WORD)
92  {
93  cword = *vrow++;
94  k = 0;
95  }
96 
97  if (cword & (1 << k))
98  {
99  rp = derives[j];
100  while ((rule = *rp++) >= 0)
101  {
102  SETBIT(rrow, rule);
103  }
104  }
105  }
106 
107  vrow += varsetsize;
108  rrow += rulesetsize;
109  }
110 
111 #ifdef DEBUG
112  print_first_derives();
113 #endif
114 
115  FREE(EFF);
116 }
int i
Definition: scan.c:967
#define NEW2(n, t)
Definition: defs.h:113
int nrules
Definition: antelope.c:56
int nsyms
Definition: antelope.c:57
#define BITS_PER_WORD
Definition: defs.h:33
int nvars
Definition: antelope.c:59
#define WORDSIZE(n)
Definition: defs.h:34
short ** derives
Definition: antelope.c:72
#define FREE(x)
Definition: defs.h:110
int start_symbol
Definition: antelope.c:61
#define SETBIT(r, n)
Definition: defs.h:36
int ntokens
Definition: antelope.c:58
void syntax_error ( int  st_lineno,
char *  st_line,
char *  st_cptr 
)

Definition at line 75 of file error.c.

76 {
77  fprintf(stderr, "%s: error - line %d of \"%s\", syntax error\n",
78  myname, st_lineno, input_file_name);
79  print_pos(st_line, st_cptr);
80  done(1);
81 }
char * myname
Definition: antelope.c:30
void done(int k)
Definition: antelope.c:77
#define stderr
Definition: epicsStdio.h:32
char * input_file_name
Definition: antelope.c:38
void terminal_lhs ( int  s_lineno)

Definition at line 223 of file error.c.

224 {
225  fprintf(stderr, "%s: error - line %d of \"%s\", a token appears on the lhs \
226 of a production\n", myname, s_lineno, input_file_name);
227  done(1);
228 }
char * myname
Definition: antelope.c:30
void done(int k)
Definition: antelope.c:77
#define stderr
Definition: epicsStdio.h:32
char * input_file_name
Definition: antelope.c:38
void terminal_start ( char *  s)

Definition at line 197 of file error.c.

198 {
199  fprintf(stderr, "%s: error - line %d of \"%s\", the start symbol %s is a \
200 token\n", myname, lineno, input_file_name, s);
201  done(1);
202 }
int lineno
Definition: antelope.c:33
char * myname
Definition: antelope.c:30
void done(int k)
Definition: antelope.c:77
#define stderr
Definition: epicsStdio.h:32
char * input_file_name
Definition: antelope.c:38
void tokenized_start ( char *  s)

Definition at line 164 of file error.c.

165 {
166  fprintf(stderr, "%s: error - line %d of \"%s\", the start symbol %s cannot be \
167 declared to be a token\n", myname, lineno, input_file_name, s);
168  done(1);
169 }
int lineno
Definition: antelope.c:33
char * myname
Definition: antelope.c:30
void done(int k)
Definition: antelope.c:77
#define stderr
Definition: epicsStdio.h:32
char * input_file_name
Definition: antelope.c:38
void undefined_goal ( char *  s)

Definition at line 303 of file error.c.

304 {
305  fprintf(stderr, "%s: error - the start symbol %s is undefined\n", myname, s);
306  done(1);
307 }
char * myname
Definition: antelope.c:30
void done(int k)
Definition: antelope.c:77
#define stderr
Definition: epicsStdio.h:32
void undefined_symbol_warning ( char *  s)

Definition at line 311 of file error.c.

312 {
313  fprintf(stderr, "%s: warning - the symbol %s is undefined\n", myname, s);
314 }
char * myname
Definition: antelope.c:30
#define stderr
Definition: epicsStdio.h:32
void unexpected_EOF ( void  )

Definition at line 39 of file error.c.

40 {
41  fprintf(stderr, "%s: error - line %d of \"%s\", unexpected end-of-file\n",
43  done(1);
44 }
int lineno
Definition: antelope.c:33
char * myname
Definition: antelope.c:30
void done(int k)
Definition: antelope.c:77
#define stderr
Definition: epicsStdio.h:32
char * input_file_name
Definition: antelope.c:38
void unknown_rhs ( int  i)

Definition at line 286 of file error.c.

287 {
288  fprintf(stderr, "%s: error - line %d of \"%s\", $%d is untyped\n",
290  done(1);
291 }
int lineno
Definition: antelope.c:33
int i
Definition: scan.c:967
char * myname
Definition: antelope.c:30
void done(int k)
Definition: antelope.c:77
#define stderr
Definition: epicsStdio.h:32
char * input_file_name
Definition: antelope.c:38
void unterminated_action ( int  a_lineno,
char *  a_line,
char *  a_cptr 
)

Definition at line 240 of file error.c.

241 {
242  fprintf(stderr, "%s: error - line %d of \"%s\", unterminated action\n",
243  myname, a_lineno, input_file_name);
244  print_pos(a_line, a_cptr);
245  done(1);
246 }
char * myname
Definition: antelope.c:30
void done(int k)
Definition: antelope.c:77
#define stderr
Definition: epicsStdio.h:32
char * input_file_name
Definition: antelope.c:38
void unterminated_comment ( int  c_lineno,
char *  c_line,
char *  c_cptr 
)

Definition at line 85 of file error.c.

86 {
87  fprintf(stderr, "%s: error - line %d of \"%s\", unmatched /*\n",
88  myname, c_lineno, input_file_name);
89  print_pos(c_line, c_cptr);
90  done(1);
91 }
char * myname
Definition: antelope.c:30
void done(int k)
Definition: antelope.c:77
#define stderr
Definition: epicsStdio.h:32
char * input_file_name
Definition: antelope.c:38
void unterminated_string ( int  s_lineno,
char *  s_line,
char *  s_cptr 
)

Definition at line 95 of file error.c.

96 {
97  fprintf(stderr, "%s: error - line %d of \"%s\", unterminated string\n",
98  myname, s_lineno, input_file_name);
99  print_pos(s_line, s_cptr);
100  done(1);
101 }
char * myname
Definition: antelope.c:30
void done(int k)
Definition: antelope.c:77
#define stderr
Definition: epicsStdio.h:32
char * input_file_name
Definition: antelope.c:38
void unterminated_text ( int  t_lineno,
char *  t_line,
char *  t_cptr 
)

Definition at line 105 of file error.c.

106 {
107  fprintf(stderr, "%s: error - line %d of \"%s\", unmatched %%{\n",
108  myname, t_lineno, input_file_name);
109  print_pos(t_line, t_cptr);
110  done(1);
111 }
char * myname
Definition: antelope.c:30
void done(int k)
Definition: antelope.c:77
#define stderr
Definition: epicsStdio.h:32
char * input_file_name
Definition: antelope.c:38
void unterminated_union ( int  u_lineno,
char *  u_line,
char *  u_cptr 
)

Definition at line 115 of file error.c.

116 {
117  fprintf(stderr, "%s: error - line %d of \"%s\", unterminated %%union \
118 declaration\n", myname, u_lineno, input_file_name);
119  print_pos(u_line, u_cptr);
120  done(1);
121 }
char * myname
Definition: antelope.c:30
void done(int k)
Definition: antelope.c:77
#define stderr
Definition: epicsStdio.h:32
char * input_file_name
Definition: antelope.c:38
void untyped_lhs ( void  )

Definition at line 268 of file error.c.

269 {
270  fprintf(stderr, "%s: error - line %d of \"%s\", $$ is untyped\n",
272  done(1);
273 }
int lineno
Definition: antelope.c:33
char * myname
Definition: antelope.c:30
void done(int k)
Definition: antelope.c:77
#define stderr
Definition: epicsStdio.h:32
char * input_file_name
Definition: antelope.c:38
void untyped_rhs ( int  i,
char *  s 
)

Definition at line 277 of file error.c.

278 {
279  fprintf(stderr, "%s: error - line %d of \"%s\", $%d (%s) is untyped\n",
281  done(1);
282 }
int lineno
Definition: antelope.c:33
int i
Definition: scan.c:967
char * myname
Definition: antelope.c:30
void done(int k)
Definition: antelope.c:77
#define stderr
Definition: epicsStdio.h:32
char * input_file_name
Definition: antelope.c:38
void used_reserved ( char *  s)

Definition at line 155 of file error.c.

156 {
157  fprintf(stderr, "%s: error - line %d of \"%s\", illegal use of reserved symbol \
158 %s\n", myname, lineno, input_file_name, s);
159  done(1);
160 }
int lineno
Definition: antelope.c:33
char * myname
Definition: antelope.c:30
void done(int k)
Definition: antelope.c:77
#define stderr
Definition: epicsStdio.h:32
char * input_file_name
Definition: antelope.c:38
void verbose ( void  )

Definition at line 27 of file verbose.c.

28 {
29  int i;
30 
31  if (!vflag) return;
32 
33  null_rules = (short *) MALLOC(nrules*sizeof(short));
34  if (null_rules == 0) no_space();
35  fprintf(verbose_file, "\f\n");
36  for (i = 0; i < nstates; i++)
37  print_state(i);
38  FREE(null_rules);
39 
40  if (nunused)
41  log_unused();
42  if (SRtotal || RRtotal)
43  log_conflicts();
44 
45  fprintf(verbose_file, "\n\n%d terminals, %d nonterminals\n", ntokens, nvars);
46  fprintf(verbose_file, "%d grammar rules, %d states\n", nrules - 2, nstates);
47 }
FILE * verbose_file
Definition: antelope.c:53
short nunused
Definition: mkpar.c:19
#define MALLOC(n)
Definition: defs.h:111
int i
Definition: scan.c:967
int nstates
Definition: lr0.c:16
int nrules
Definition: antelope.c:56
int nvars
Definition: antelope.c:59
int RRtotal
Definition: mkpar.c:14
#define FREE(x)
Definition: defs.h:110
char vflag
Definition: antelope.c:26
int ntokens
Definition: antelope.c:58
void no_space(void) NORETURN
Definition: error.c:23
int SRtotal
Definition: mkpar.c:13
void write_section ( char *  section[])

Definition at line 284 of file skeleton.c.

285 {
286  int c;
287  int i;
288  char *s;
289  FILE *f;
290 
291  f = code_file;
292  for (i = 0; (s = section[i]); ++i)
293  {
294  ++outline;
295  while ((c = *s))
296  {
297  putc(c, f);
298  ++s;
299  }
300  putc('\n', f);
301  }
302 }
int i
Definition: scan.c:967
FILE * code_file
Definition: antelope.c:44
int outline
Definition: antelope.c:34

Variable Documentation

short* accessing_symbol

Definition at line 23 of file lalr.c.

FILE* action_file

Definition at line 42 of file antelope.c.

char* banner[]

Definition at line 19 of file skeleton.c.

char* body[]

Definition at line 81 of file skeleton.c.

FILE* code_file

Definition at line 44 of file antelope.c.

char* code_file_name

Definition at line 36 of file antelope.c.

char* cptr

Definition at line 25 of file reader.c.

FILE* defines_file

Definition at line 45 of file antelope.c.

char* defines_file_name

Definition at line 37 of file antelope.c.

short* defred

Definition at line 17 of file mkpar.c.

short** derives

Definition at line 72 of file antelope.c.

char dflag

Definition at line 22 of file antelope.c.

short final_state

Definition at line 20 of file mkpar.c.

reductions* first_reduction

Definition at line 19 of file lr0.c.

shifts* first_shift

Definition at line 18 of file lr0.c.

core* first_state

Definition at line 17 of file lr0.c.

bucket* first_symbol

Definition at line 19 of file symtab.c.

short* from_state

Definition at line 28 of file lalr.c.

short* goto_map

Definition at line 27 of file lalr.c.

char* header[]

Definition at line 51 of file skeleton.c.

FILE* input_file

Definition at line 46 of file antelope.c.

char* input_file_name

Definition at line 38 of file antelope.c.

unsigned* LA

Definition at line 22 of file lalr.c.

short* LAruleno

Definition at line 21 of file lalr.c.

bucket* last_symbol

Definition at line 20 of file symtab.c.

char lflag

Definition at line 23 of file antelope.c.

char* line

Definition at line 25 of file reader.c.

char line_format[]

Definition at line 42 of file reader.c.

int lineno

Definition at line 33 of file antelope.c.

short* lookaheads

Definition at line 20 of file lalr.c.

char* myname

Definition at line 30 of file antelope.c.

int nitems

Definition at line 55 of file antelope.c.

int nrules

Definition at line 56 of file antelope.c.

int nstates

Definition at line 16 of file lr0.c.

int nsyms

Definition at line 57 of file antelope.c.

int ntags

Definition at line 21 of file reader.c.

int ntokens

Definition at line 58 of file antelope.c.

char* nullable

Definition at line 73 of file antelope.c.

short nunused

Definition at line 19 of file mkpar.c.

int nvars

Definition at line 59 of file antelope.c.

int outline

Definition at line 34 of file antelope.c.

FILE* output_file

Definition at line 47 of file antelope.c.

char* output_file_name

Definition at line 39 of file antelope.c.

action** parser

Definition at line 12 of file mkpar.c.

char* rassoc

Definition at line 71 of file antelope.c.

reductions** reduction_table

Definition at line 26 of file lalr.c.

char rflag

Definition at line 24 of file antelope.c.

short* ritem

Definition at line 67 of file antelope.c.

short* rlhs

Definition at line 68 of file antelope.c.

short* rprec

Definition at line 70 of file antelope.c.

short* RRconflicts

Definition at line 16 of file mkpar.c.

short* rrhs

Definition at line 69 of file antelope.c.

int RRtotal

Definition at line 14 of file mkpar.c.

short* rules_used

Definition at line 18 of file mkpar.c.

shifts** shift_table

Definition at line 25 of file lalr.c.

short* SRconflicts

Definition at line 15 of file mkpar.c.

int SRtotal

Definition at line 13 of file mkpar.c.

int start_symbol

Definition at line 61 of file antelope.c.

core** state_table

Definition at line 24 of file lalr.c.

char* symbol_assoc

Definition at line 65 of file antelope.c.

char** symbol_name

Definition at line 62 of file antelope.c.

short* symbol_prec

Definition at line 64 of file antelope.c.

char* symbol_prefix

Definition at line 28 of file antelope.c.

short* symbol_value

Definition at line 63 of file antelope.c.

char* tables[]

Definition at line 32 of file skeleton.c.

FILE* text_file

Definition at line 48 of file antelope.c.

char tflag

Definition at line 25 of file antelope.c.

short* to_state

Definition at line 29 of file lalr.c.

char* trailer[]

Definition at line 221 of file skeleton.c.

FILE* union_file

Definition at line 50 of file antelope.c.

char unionized

Definition at line 24 of file reader.c.

FILE* verbose_file

Definition at line 53 of file antelope.c.

char* verbose_file_name

Definition at line 40 of file antelope.c.

char vflag

Definition at line 26 of file antelope.c.