]> git.saurik.com Git - bison.git/blame - src/files.h
* src/main.c (main): Initialize the macro table.
[bison.git] / src / files.h
CommitLineData
8c7ebe49
AD
1#ifndef FILES_H_
2# define FILES_H_
f7d4d87a 3/* File names and variables for bison,
8c7ebe49 4 Copyright 1984, 1989, 2000 Free Software Foundation, Inc.
f7d4d87a 5
a0f6b076 6 This file is part of Bison, the GNU Compiler Compiler.
f7d4d87a 7
a0f6b076
AD
8 Bison is free software; you can redistribute it and/or modify
9 it under the terms of the GNU General Public License as published by
10 the Free Software Foundation; either version 2, or (at your option)
11 any later version.
f7d4d87a 12
a0f6b076
AD
13 Bison is distributed in the hope that it will be useful,
14 but WITHOUT ANY WARRANTY; without even the implied warranty of
15 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 GNU General Public License for more details.
f7d4d87a 17
a0f6b076
AD
18 You should have received a copy of the GNU General Public License
19 along with Bison; see the file COPYING. If not, write to
20 the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
21 Boston, MA 02111-1307, USA. */
f7d4d87a 22
f7d4d87a
DM
23/* These two should be pathnames for opening the sample parser files.
24 When bison is installed, they should be absolute pathnames.
9eceb6c6 25 XPFILE1 and XPFILE2 normally come from config.h. */
f7d4d87a 26
f7d4d87a
DM
27/* File name specified with -o for the output file, or 0 if no -o. */
28extern char *spec_outfile;
29
ea5607fd 30/* For -a. */
0dbb648e 31extern char *spec_name_prefix;
f7d4d87a
DM
32
33/* File name pfx specified with -b, or 0 if no -b. */
34extern char *spec_file_prefix;
35
0dbb648e
AD
36
37/* Read grammar specifications. */
38extern FILE *finput;
39
8c7ebe49
AD
40/* Output all the action code; precise form depends on which parser. */
41extern struct obstack action_obstack;
42
896fe5c1
AD
43/* Output the tables and the parser and also contains all the %{
44 ... %} definitions. */
45extern struct obstack table_obstack;
46
47/* optionally output #define's for token numbers. */
48extern struct obstack defines_obstack;
49
ea5607fd
AD
50/* If semantic parser, output a .h file that defines YYSTYPE... */
51extern struct obstack attrs_obstack;
52
53/* ... and output yyguard, containing all the guard code. */
54extern struct obstack guard_obstack;
55
ff4423cc
AD
56/* The verbose output. */
57extern struct obstack output_obstack;
58
22c2cbc0
AD
59/* The VCG graph output. */
60extern struct obstack graph_obstack;
896fe5c1 61
f7d4d87a 62extern char *infile;
f7d4d87a 63extern char *attrsfile;
a0f6b076 64
7333d403
AD
65extern const char *src_extension;
66extern const char *header_extension;
67
8963a27b 68void open_files PARAMS((void));
8963a27b 69
d8880f69 70void output_files PARAMS((void));
ff61dabd
AD
71
72FILE *xfopen PARAMS ((const char *name, const char *mode));
73int xfclose PARAMS ((FILE *ptr));
74
b0ce6046
AD
75const char *skeleton_find PARAMS ((const char *envvar,
76 const char *skeleton_name));
8c7ebe49 77#endif /* !FILES_H_ */