X-Git-Url: http://git.sourceforge.jp/view?a=blobdiff_plain;f=gcc%2Fc-lex.h;h=ac917b5cb5a552d18d82f703576119c8c78fcbd9;hb=7a16ce2ccee1abad5914ec94305cd1ddcc133204;hp=5515ce4191b611d9e15cfdb20fa5ddd8e879f25c;hpb=12693c8153016a21d356d907085cd5ca8bac4814;p=pf3gnuchains%2Fgcc-fork.git diff --git a/gcc/c-lex.h b/gcc/c-lex.h index 5515ce4191b..ac917b5cb5a 100644 --- a/gcc/c-lex.h +++ b/gcc/c-lex.h @@ -1,88 +1,35 @@ /* 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. +This file is part of GCC. -GNU CC is free software; you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation; either version 2, or (at your option) -any later version. +GCC is free software; you can redistribute it and/or modify it under +the terms of the GNU General Public License as published by the Free +Software Foundation; either version 2, or (at your option) any later +version. -GNU CC is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. +GCC is distributed in the hope that it will be useful, but WITHOUT ANY +WARRANTY; without even the implied warranty of MERCHANTABILITY or +FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +for more details. 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, 59 Temple Place - Suite 330, -Boston, MA 02111-1307, USA. */ +along with GCC; see the file COPYING. If not, write to 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, - RID_COMPLEX, +extern int indent_level; - RID_IN, - RID_OUT, - RID_INOUT, - RID_BYCOPY, - RID_ONEWAY, - RID_ID, +struct cpp_reader; +extern struct cpp_reader* parse_in; - RID_MAX -}; - -#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 ((tree, tree)); -extern void reinit_parse_for_function ((void)); -extern void position_after_whitespace PROTO((void)); -extern int check_newline PROTO((void)); - -extern int yylex PROTO((void)); -extern void yyerror PROTO((char *)); - -extern char *get_directive_line PROTO((FILE *)); - -extern void forget_protocol_qualifiers PROTO((void)); -extern void remember_protocol_qualifiers PROTO((void)); -extern tree is_class_name PROTO((void)); +#endif /* ! GCC_C_LEX_H */