1 /***************************************
4 C Cross Referencing & Documentation tool. Version 1.5f.
6 The function protypes that are missing from the lex and yacc output.
7 ******************/ /******************
8 Written by Andrew M. Bishop
10 This file Copyright 1995,96,99,2002,03 Andrew M. Bishop
11 It may be distributed under the GNU Public License, version 2, or
12 any higher version. See section COPYING of the GNU Public license
13 for conditions under which this file may be redistributed.
14 ***************************************/
17 #define PARSE_YY_H /*+ To stop multiple inclusions. +*/
22 /*+ Debugging output or not?
24 YYDEBUG=0 : No debugging at all, smaller, faster code.
26 YYDEBUG=1 : Debugging output only when parsing fails.
28 YYDEBUG=2 : Debugging output for each symbol from lex().
30 YYDEBUG=3 : Full yacc debugging output, state transitions etc.
34 /* Only the #define for YYDEBUG above is user editable,
35 those below are for fixing up yacc/lex only. */
37 /*+ Some versions of yacc (Sun) don't allow YYSTYPE to be #defined as char* +*/
38 typedef char* yystype
;
40 /*+ Semantic type is a char* +*/
41 #define YYSTYPE yystype
43 /*+ use prototypes in function declarations +*/
46 /*+ the "const" storage-class-modifier is valid +*/
51 /*+ Turn the debugging output on and off. +*/
54 /*+ Define verbose errors in Bison generated file +*/
55 #define YYERROR_VERBOSE 1
57 /*+ This is needed in the Bison generated code. +*/
58 #define xmalloc malloc
60 /*+ Print the semantic value +*/
61 #define YYPRINT(file,type,value) printf(" '%s'",value)
65 /* Extern variables */
67 /*+ The name of the current file. +*/
68 extern char* parse_file
;
70 /*+ The current line number in the file. +*/
71 extern int parse_line
;
73 /*+ For communication between the lex and yacc code. +*/
74 extern YYSTYPE yylval
;
76 /*+ The file that the lex code is to read from. +*/
79 /* Global functions */
84 void yyrestart (FILE *input_file
);
86 /* yywrap() function */
88 #define YY_SKIP_YYWRAP 1 /* Don't use yywrap prototype */
92 /*+ Needed in lex but does nothing. +*/