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