]> git.saurik.com Git - bison.git/blame - src/files.h
Don't use `atexit'.
[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
DM
26
27#define PFILE XPFILE /* Simple parser */
28#define PFILE1 XPFILE1 /* Semantic parser */
29
f7d4d87a
DM
30/* File name specified with -o for the output file, or 0 if no -o. */
31extern char *spec_outfile;
32
0dbb648e
AD
33/* For -a, from getargs.c */
34extern char *spec_name_prefix;
f7d4d87a
DM
35
36/* File name pfx specified with -b, or 0 if no -b. */
37extern char *spec_file_prefix;
38
0dbb648e
AD
39
40/* Read grammar specifications. */
41extern FILE *finput;
42
43/* Optionally output messages describing the actions taken. */
44extern FILE *foutput;
45
46/* If semantic parser, output yyguard, containing all the guard code. */
47extern FILE *fguard;
48
49/* Read the parser to copy into TABLE_OBSTACK. */
50extern FILE *fparser;
51
52
8c7ebe49
AD
53/* Output all the action code; precise form depends on which parser. */
54extern struct obstack action_obstack;
55
dd60faec
AD
56/* If semantic parser, output a .h file that defines YYSTYPE */
57extern struct obstack attrs_obstack;
8c7ebe49 58
896fe5c1
AD
59/* Output the tables and the parser and also contains all the %{
60 ... %} definitions. */
61extern struct obstack table_obstack;
62
63/* optionally output #define's for token numbers. */
64extern struct obstack defines_obstack;
65
66
f7d4d87a 67extern char *infile;
a0f6b076 68extern int lineno;
f7d4d87a
DM
69extern char *outfile;
70extern char *defsfile;
71extern char *tabfile;
72extern char *attrsfile;
73extern char *guardfile;
74extern char *actfile;
a0f6b076 75
8963a27b
AD
76void open_files PARAMS((void));
77void open_extra_files PARAMS((void));
78
d8880f69 79void output_files PARAMS((void));
8c7ebe49 80#endif /* !FILES_H_ */