]> CyberLeo.Net >> Repos - FreeBSD/releng/9.2.git/blob - contrib/binutils/ld/ldlex.h
- Copy stable/9 to releng/9.2 as part of the 9.2-RELEASE cycle.
[FreeBSD/releng/9.2.git] / contrib / binutils / ld / ldlex.h
1 /* ldlex.h -
2    Copyright 1991, 1992, 1993, 1994, 1995, 1997, 2000, 2003
3    Free Software Foundation, Inc.
4
5    This file is part of GLD, the Gnu Linker.
6
7    GLD is free software; you can redistribute it and/or modify
8    it under the terms of the GNU General Public License as published by
9    the Free Software Foundation; either version 1, or (at your option)
10    any later version.
11
12    GLD is distributed in the hope that it will be useful,
13    but WITHOUT ANY WARRANTY; without even the implied warranty of
14    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15    GNU General Public License for more details.
16
17    You should have received a copy of the GNU General Public License
18    along with GLD; see the file COPYING.  If not, write to the Free
19    Software Foundation, 51 Franklin Street - Fifth Floor, Boston, MA
20    02110-1301, USA.  */
21
22 #ifndef LDLEX_H
23 #define LDLEX_H
24
25 #include <stdio.h>
26
27 /* The initial parser states.  */
28 typedef enum input_enum {
29   input_selected,               /* We've set the initial state.  */
30   input_script,
31   input_mri_script,
32   input_version_script,
33   input_dynamic_list,
34   input_defsym
35 } input_type;
36
37 extern input_type parser_input;
38
39 extern unsigned int lineno;
40 extern const char *lex_string;
41
42 /* In ldlex.l.  */
43 extern int yylex (void);
44 extern void lex_push_file (FILE *, const char *);
45 extern void lex_redirect (const char *);
46 extern void ldlex_script (void);
47 extern void ldlex_mri_script (void);
48 extern void ldlex_version_script (void);
49 extern void ldlex_version_file (void);
50 extern void ldlex_defsym (void);
51 extern void ldlex_expression (void);
52 extern void ldlex_both (void);
53 extern void ldlex_command (void);
54 extern void ldlex_popstate (void);
55
56 /* In lexsup.c.  */
57 extern int lex_input (void);
58 extern void lex_unput (int);
59 #ifndef yywrap
60 extern int yywrap (void);
61 #endif
62 extern void parse_args (unsigned, char **);
63
64 #endif