* g++.old-deja/g++.other/init15.C: New test.
[official-gcc.git] / gcc / c-lex.h
blob532027e7b11ae9281897ef39e922a0f1e9d0f89c
1 /* Define constants for communication with c-parse.y.
2 Copyright (C) 1987, 1992, 1998, 1999, 2000 Free Software Foundation, Inc.
4 This file is part of GNU CC.
6 GNU CC 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 2, or (at your option)
9 any later version.
11 GNU CC 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.
16 You should have received a copy of the GNU General Public License
17 along with GNU CC; see the file COPYING. If not, write to
18 the Free Software Foundation, 59 Temple Place - Suite 330,
19 Boston, MA 02111-1307, USA. */
23 enum rid
25 RID_UNUSED,
26 RID_INT,
27 RID_CHAR,
28 RID_FLOAT,
29 RID_DOUBLE,
30 RID_VOID,
31 RID_UNUSED1,
33 RID_UNSIGNED,
34 RID_SHORT,
35 RID_LONG,
36 RID_AUTO,
37 RID_STATIC,
38 RID_EXTERN,
39 RID_REGISTER,
40 RID_TYPEDEF,
41 RID_SIGNED,
42 RID_CONST,
43 RID_RESTRICT,
44 RID_VOLATILE,
45 RID_BOUNDED,
46 RID_UNBOUNDED,
47 RID_INLINE,
48 RID_NOALIAS,
49 RID_ITERATOR,
50 RID_COMPLEX,
52 RID_IN,
53 RID_OUT,
54 RID_INOUT,
55 RID_BYCOPY,
56 RID_BYREF,
57 RID_ONEWAY,
58 RID_ID,
60 RID_MAX
63 #define NORID RID_UNUSED
65 #define RID_FIRST_MODIFIER RID_UNSIGNED
67 /* The elements of `ridpointers' are identifier nodes
68 for the reserved type names and storage classes.
69 It is indexed by a RID_... value. */
70 extern tree ridpointers[(int) RID_MAX];
72 extern char *token_buffer; /* Pointer to token buffer. */
74 extern tree make_pointer_declarator PARAMS ((tree, tree));
75 extern void reinit_parse_for_function PARAMS ((void));
76 extern void position_after_white_space PARAMS ((void));
77 extern int check_newline PARAMS ((void));
79 extern int yylex PARAMS ((void));
80 extern void yyerror PARAMS ((const char *));
82 extern void forget_protocol_qualifiers PARAMS ((void));
83 extern void remember_protocol_qualifiers PARAMS ((void));
84 extern tree is_class_name PARAMS ((tree));