diff --git a/Parser/parser.h b/Parser/parser.h
index b025a50..ed45d2e 100644
--- a/Parser/parser.h
+++ b/Parser/parser.h
@@ -5,7 +5,7 @@
 #endif
 
 /***********************************************************
-Copyright 1991, 1992, 1993 by Stichting Mathematisch Centrum,
+Copyright 1991, 1992, 1993, 1994 by Stichting Mathematisch Centrum,
 Amsterdam, The Netherlands.
 
                         All Rights Reserved
@@ -32,25 +32,25 @@
 
 #define MAXSTACK 500
 
-typedef struct _stackentry {
+typedef struct {
 	int		 s_state;	/* State in current DFA */
 	dfa		*s_dfa;		/* Current DFA */
 	struct _node	*s_parent;	/* Where to add next node */
 } stackentry;
 
-typedef struct _stack {
+typedef struct {
 	stackentry	*s_top;		/* Top entry */
 	stackentry	 s_base[MAXSTACK];/* Array of stack entries */
 					/* NB The stack grows down */
 } stack;
 
 typedef struct {
-	struct _stack	 p_stack;	/* Stack of parser states */
-	struct _grammar	*p_grammar;	/* Grammar to use */
-	struct _node	*p_tree;	/* Top of parse tree */
+	stack	 	p_stack;	/* Stack of parser states */
+	grammar		*p_grammar;	/* Grammar to use */
+	node		*p_tree;	/* Top of parse tree */
 } parser_state;
 
-parser_state *newparser PROTO((struct _grammar *g, int start));
+parser_state *newparser PROTO((grammar *g, int start));
 void delparser PROTO((parser_state *ps));
 int addtoken PROTO((parser_state *ps, int type, char *str, int lineno));
 void addaccelerators PROTO((grammar *g));
