/* Define constants for communication with c-parse.y.
- Copyright (C) 1987, 1992 Free Software Foundation, Inc.
+ Copyright (C) 1987, 1992, 1998, 1999, 2000 Free Software Foundation, Inc.
This file is part of GNU CC.
You should have received a copy of the GNU General Public License
along with GNU CC; see the file COPYING. If not, write to
-the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
+the Free Software Foundation, 59 Temple Place - Suite 330,
+Boston, MA 02111-1307, USA. */
+#ifndef GCC_C_LEX_H
+#define GCC_C_LEX_H
+extern tree make_pointer_declarator PARAMS ((tree, tree));
+extern void position_after_white_space PARAMS ((void));
-enum rid
-{
- RID_UNUSED,
- RID_INT,
- RID_CHAR,
- RID_FLOAT,
- RID_DOUBLE,
- RID_VOID,
- RID_UNUSED1,
+extern int c_lex PARAMS ((tree *));
+extern const char *init_c_lex PARAMS ((const char *));
- RID_UNSIGNED,
- RID_SHORT,
- RID_LONG,
- RID_AUTO,
- RID_STATIC,
- RID_EXTERN,
- RID_REGISTER,
- RID_TYPEDEF,
- RID_SIGNED,
- RID_CONST,
- RID_VOLATILE,
- RID_INLINE,
- RID_NOALIAS,
- RID_ITERATOR,
+extern int indent_level;
- RID_MAX
-};
+struct cpp_reader;
+extern struct cpp_reader* parse_in;
-#define NORID RID_UNUSED
-
-#define RID_FIRST_MODIFIER RID_UNSIGNED
-
-/* The elements of `ridpointers' are identifier nodes
- for the reserved type names and storage classes.
- It is indexed by a RID_... value. */
-extern tree ridpointers[(int) RID_MAX];
-
-/* the declaration found for the last IDENTIFIER token read in.
- yylex must look this up to detect typedefs, which get token type TYPENAME,
- so it is left around in case the identifier is not a typedef but is
- used in a context which makes it a reference to a variable. */
-extern tree lastiddecl;
-
-extern char *token_buffer; /* Pointer to token buffer. */
-
-extern tree make_pointer_declarator ();
-extern void reinit_parse_for_function ();
-extern int yylex ();
-
-extern char *get_directive_line ();
+#endif /* ! GCC_C_LEX_H */