]> git.saurik.com Git - bison.git/blame - src/files.h
Warn about output files that are generated by the skeletons and that
[bison.git] / src / files.h
CommitLineData
f7d4d87a 1/* File names and variables for bison,
35fe0834
PE
2
3 Copyright (C) 1984, 1989, 2000, 2001, 2002, 2006 Free Software
4 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
0fb669f9
PE
20 the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
21 Boston, MA 02110-1301, USA. */
f7d4d87a 22
ea52d706
AD
23#ifndef FILES_H_
24# define FILES_H_
f7d4d87a 25
651ec3d0 26# include "uniqstr.h"
95612cfa 27
f7d4d87a 28/* File name specified with -o for the output file, or 0 if no -o. */
2b81e969 29extern char const *spec_outfile;
f7d4d87a 30
ea52d706 31/* File name for the parser (i.e., the one above, or its default.) */
eb095650 32extern char *parser_file_name;
ea52d706 33
e41fdc93 34/* Symbol prefix specified with -p, or 0 if no -p. */
78af9bbc 35extern const char *spec_name_prefix;
f7d4d87a 36
e41fdc93 37/* File name prefix specified with -b, or 0 if no -b. */
2b81e969 38extern char const *spec_file_prefix;
f7d4d87a 39
342b8b6e 40/* --verbose. */
eb095650 41extern char *spec_verbose_file;
342b8b6e 42
35fe0834 43/* File name specified for the output graph. */
eb095650 44extern char *spec_graph_file;
342b8b6e
AD
45
46/* File name specified with --defines. */
eb095650 47extern char *spec_defines_file;
0dbb648e 48
2b81e969 49/* Directory prefix of output file names. */
eb095650 50extern char *dir_prefix;
0dbb648e 51
342b8b6e 52
ea5607fd 53/* If semantic parser, output a .h file that defines YYSTYPE... */
0dd1580a
RA
54extern struct obstack pre_prologue_obstack;
55extern struct obstack post_prologue_obstack;
ea5607fd 56
95612cfa
AD
57/* The file name as given on the command line.
58 Not named "input_file" because Flex uses this name for an argument,
59 and therefore GCC warns about a name clash. */
651ec3d0 60extern uniqstr grammar_file;
95612cfa
AD
61
62/* The current file name. Might change with %include, or with #line. */
651ec3d0 63extern uniqstr current_file;
a0f6b076 64
d33cb3ae 65void compute_output_file_names (void);
eb095650 66void output_file_names_free (void);
3f7ca628 67void output_file_name_check (char const *file_name);
ff61dabd 68
d33cb3ae 69FILE *xfopen (const char *name, const char *mode);
760d7aa8 70void xfclose (FILE *ptr);
ff61dabd 71
8c7ebe49 72#endif /* !FILES_H_ */