/* Definitions for symtab.c and callers, part of bison,
- Copyright (C) 1984, 1989 Free Software Foundation, Inc.
+ Copyright (C) 1984, 1989, 1992 Free Software Foundation, Inc.
This file is part of Bison, the GNU Compiler Compiler.
You should have received a copy of the GNU General Public License
along with Bison; see the file COPYING. If not, write to
-the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
+the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+Boston, MA 02111-1307, USA. */
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif
#define TABSIZE 1009
/* symbol classes */
#define SUNKNOWN 0
-#define STOKEN 1
-#define SNTERM 2
+#define STOKEN 1 /* terminal symbol */
+#define SNTERM 2 /* non-terminal */
+#define SALIAS -9991 /* for symbol generated with an alias */
typedef
struct bucket
short prec;
short assoc;
short user_token_number;
+ /* special value SALIAS in the identifier
+ half of the identifier-symbol pair for an alias */
+ struct bucket *alias;
+ /* points to the other in the identifier-symbol
+ pair for an alias */
char class;
}
bucket;
extern bucket **symtab;
extern bucket *firstsymbol;
-extern bucket *getsym();
+extern bucket *getsym PARAMS((char *));