summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorXavier Leroy <xavier.leroy@inria.fr>1995-08-08 16:44:29 +0000
committerXavier Leroy <xavier.leroy@inria.fr>1995-08-08 16:44:29 +0000
commit260bb413e941897bdb84efc2b4da4bad5cf0dc0e (patch)
treec6fa717c213f7b6cdfa4b2414be552b9d1a32c63
parentf99a06904dbcf3cffdb7c33fb15939a004d34f2c (diff)
Nettoyages pour supprimer bien des warnings
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@186 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
-rw-r--r--yacc/closure.c25
-rw-r--r--yacc/defs.h20
-rw-r--r--yacc/error.c163
-rw-r--r--yacc/lalr.c62
-rw-r--r--yacc/lr0.c51
-rw-r--r--yacc/main.c29
-rw-r--r--yacc/mkpar.c43
-rw-r--r--yacc/output.c87
-rw-r--r--yacc/parsing.c136
-rw-r--r--yacc/reader.c84
-rw-r--r--yacc/skeleton.c4
-rw-r--r--yacc/symtab.c15
-rw-r--r--yacc/verbose.c52
-rw-r--r--yacc/warshall.c12
14 files changed, 368 insertions, 415 deletions
diff --git a/yacc/closure.c b/yacc/closure.c
index c69457c5d..b67245c78 100644
--- a/yacc/closure.c
+++ b/yacc/closure.c
@@ -8,7 +8,12 @@ static unsigned *first_derives;
static unsigned *EFF;
-set_EFF()
+
+void print_EFF ();
+void print_first_derives ();
+void print_closure ();
+
+void set_EFF()
{
register unsigned *row;
register int symbol;
@@ -44,7 +49,7 @@ set_EFF()
}
-set_first_derives()
+void set_first_derives()
{
register unsigned *rrow;
register unsigned *vrow;
@@ -101,9 +106,9 @@ set_first_derives()
}
-closure(nucleus, n)
-short *nucleus;
-int n;
+void closure(nucleus, n)
+ short int *nucleus;
+ int n;
{
register int ruleno;
register unsigned word;
@@ -176,7 +181,7 @@ int n;
-finalize_closure()
+void finalize_closure()
{
FREE(itemset);
FREE(ruleset);
@@ -186,8 +191,8 @@ finalize_closure()
#ifdef DEBUG
-print_closure(n)
-int n;
+void print_closure(n)
+ int n;
{
register short *isp;
@@ -197,7 +202,7 @@ int n;
}
-print_EFF()
+void print_EFF()
{
register int i, j, k;
register unsigned *rowp;
@@ -229,7 +234,7 @@ print_EFF()
}
-print_first_derives()
+void print_first_derives()
{
register int i;
register int j;
diff --git a/yacc/defs.h b/yacc/defs.h
index b79a1137c..506ad60a9 100644
--- a/yacc/defs.h
+++ b/yacc/defs.h
@@ -290,7 +290,25 @@ extern short final_state;
extern char *allocate();
extern bucket *lookup();
extern bucket *make_bucket();
-
+extern action *parse_actions();
+extern action *get_shifts();
+extern action *add_reductions();
+extern action *add_reduce();
+extern void closure (), create_symbol_table (), default_action_error ();
+extern void done (), entry_without_type (), fatal (), finalize_closure ();
+extern void free_parser (), free_symbol_table (), free_symbols ();
+extern void illegal_character (), illegal_token_ref (), lalr (), lr0 ();
+extern void make_parser (), no_grammar (), no_space (), open_error ();
+extern void output (), over_unionized (), prec_redeclared (), reader ();
+extern void reflexive_transitive_closure (), reprec_warning ();
+extern void retyped_warning (), revalued_warning (), set_first_derives ();
+extern void syntax_error (), terminal_lhs (), terminal_start ();
+extern void tokenized_start (), too_many_entries (), undefined_goal ();
+extern void undefined_symbol_warning (), unexpected_EOF (), unknown_rhs ();
+extern void unterminated_action (), unterminated_comment ();
+extern void unterminated_string (), unterminated_text ();
+extern void unterminated_union (), used_reserved ();
+extern void verbose (), write_section ();
/* system variables */
diff --git a/yacc/error.c b/yacc/error.c
index 06b3653b4..82ae1bd2c 100644
--- a/yacc/error.c
+++ b/yacc/error.c
@@ -2,31 +2,30 @@
#include "defs.h"
-
-fatal(msg)
-char *msg;
+void fatal(msg)
+ char *msg;
{
fprintf(stderr, "%s: f - %s\n", myname, msg);
done(2);
}
-no_space()
+void no_space()
{
fprintf(stderr, "%s: f - out of space\n", myname);
done(2);
}
-open_error(filename)
-char *filename;
+void open_error(filename)
+ char *filename;
{
fprintf(stderr, "%s: f - cannot open \"%s\"\n", myname, filename);
done(2);
}
-unexpected_EOF()
+void unexpected_EOF()
{
fprintf(stderr, "%s: e - line %d of \"%s\", unexpected end-of-file\n",
myname, lineno, input_file_name);
@@ -34,9 +33,9 @@ unexpected_EOF()
}
-print_pos(st_line, st_cptr)
-char *st_line;
-char *st_cptr;
+void print_pos(st_line, st_cptr)
+ char *st_line;
+ char *st_cptr;
{
register char *s;
@@ -61,10 +60,10 @@ char *st_cptr;
}
-syntax_error(st_lineno, st_line, st_cptr)
-int st_lineno;
-char *st_line;
-char *st_cptr;
+void syntax_error(st_lineno, st_line, st_cptr)
+ int st_lineno;
+ char *st_line;
+ char *st_cptr;
{
fprintf(stderr, "%s: e - line %d of \"%s\", syntax error\n",
myname, st_lineno, input_file_name);
@@ -73,10 +72,10 @@ char *st_cptr;
}
-unterminated_comment(c_lineno, c_line, c_cptr)
-int c_lineno;
-char *c_line;
-char *c_cptr;
+void unterminated_comment(c_lineno, c_line, c_cptr)
+ int c_lineno;
+ char *c_line;
+ char *c_cptr;
{
fprintf(stderr, "%s: e - line %d of \"%s\", unmatched /*\n",
myname, c_lineno, input_file_name);
@@ -85,10 +84,10 @@ char *c_cptr;
}
-unterminated_string(s_lineno, s_line, s_cptr)
-int s_lineno;
-char *s_line;
-char *s_cptr;
+void unterminated_string(s_lineno, s_line, s_cptr)
+ int s_lineno;
+ char *s_line;
+ char *s_cptr;
{
fprintf(stderr, "%s: e - line %d of \"%s\", unterminated string\n",
myname, s_lineno, input_file_name);
@@ -97,10 +96,10 @@ char *s_cptr;
}
-unterminated_text(t_lineno, t_line, t_cptr)
-int t_lineno;
-char *t_line;
-char *t_cptr;
+void unterminated_text(t_lineno, t_line, t_cptr)
+ int t_lineno;
+ char *t_line;
+ char *t_cptr;
{
fprintf(stderr, "%s: e - line %d of \"%s\", unmatched %%{\n",
myname, t_lineno, input_file_name);
@@ -109,10 +108,10 @@ char *t_cptr;
}
-unterminated_union(u_lineno, u_line, u_cptr)
-int u_lineno;
-char *u_line;
-char *u_cptr;
+void unterminated_union(u_lineno, u_line, u_cptr)
+ int u_lineno;
+ char *u_line;
+ char *u_cptr;
{
fprintf(stderr, "%s: e - line %d of \"%s\", unterminated %%union \
declaration\n", myname, u_lineno, input_file_name);
@@ -121,8 +120,8 @@ declaration\n", myname, u_lineno, input_file_name);
}
-over_unionized(u_cptr)
-char *u_cptr;
+void over_unionized(u_cptr)
+ char *u_cptr;
{
fprintf(stderr, "%s: e - line %d of \"%s\", too many %%union \
declarations\n", myname, lineno, input_file_name);
@@ -131,10 +130,10 @@ declarations\n", myname, lineno, input_file_name);
}
-illegal_tag(t_lineno, t_line, t_cptr)
-int t_lineno;
-char *t_line;
-char *t_cptr;
+void illegal_tag(t_lineno, t_line, t_cptr)
+ int t_lineno;
+ char *t_line;
+ char *t_cptr;
{
fprintf(stderr, "%s: e - line %d of \"%s\", illegal tag\n",
myname, t_lineno, input_file_name);
@@ -143,8 +142,8 @@ char *t_cptr;
}
-illegal_character(c_cptr)
-char *c_cptr;
+void illegal_character(c_cptr)
+ char *c_cptr;
{
fprintf(stderr, "%s: e - line %d of \"%s\", illegal character\n",
myname, lineno, input_file_name);
@@ -153,8 +152,8 @@ char *c_cptr;
}
-used_reserved(s)
-char *s;
+void used_reserved(s)
+ char *s;
{
fprintf(stderr, "%s: e - line %d of \"%s\", illegal use of reserved symbol \
%s\n", myname, lineno, input_file_name, s);
@@ -162,8 +161,8 @@ char *s;
}
-tokenized_start(s)
-char *s;
+void tokenized_start(s)
+ char *s;
{
fprintf(stderr, "%s: e - line %d of \"%s\", the start symbol %s cannot be \
declared to be a token\n", myname, lineno, input_file_name, s);
@@ -171,39 +170,39 @@ declared to be a token\n", myname, lineno, input_file_name, s);
}
-retyped_warning(s)
-char *s;
+void retyped_warning(s)
+ char *s;
{
fprintf(stderr, "%s: w - line %d of \"%s\", the type of %s has been \
redeclared\n", myname, lineno, input_file_name, s);
}
-reprec_warning(s)
-char *s;
+void reprec_warning(s)
+ char *s;
{
fprintf(stderr, "%s: w - line %d of \"%s\", the precedence of %s has been \
redeclared\n", myname, lineno, input_file_name, s);
}
-revalued_warning(s)
-char *s;
+void revalued_warning(s)
+ char *s;
{
fprintf(stderr, "%s: w - line %d of \"%s\", the value of %s has been \
redeclared\n", myname, lineno, input_file_name, s);
}
-terminal_start(s)
-char *s;
+void terminal_start(s)
+ char *s;
{
fprintf(stderr, "%s: e - line %d of \"%s\", the entry point %s is a \
token\n", myname, lineno, input_file_name, s);
done(1);
}
-too_many_entries()
+void too_many_entries()
{
fprintf(stderr, "%s: e - line %d of \"%s\", more than 256 entry points\n",
myname, lineno, input_file_name);
@@ -211,7 +210,7 @@ too_many_entries()
}
-no_grammar()
+void no_grammar()
{
fprintf(stderr, "%s: e - line %d of \"%s\", no grammar has been \
specified\n", myname, lineno, input_file_name);
@@ -219,8 +218,8 @@ specified\n", myname, lineno, input_file_name);
}
-terminal_lhs(s_lineno)
-int s_lineno;
+void terminal_lhs(s_lineno)
+ int s_lineno;
{
fprintf(stderr, "%s: e - line %d of \"%s\", a token appears on the lhs \
of a production\n", myname, s_lineno, input_file_name);
@@ -228,17 +227,17 @@ of a production\n", myname, s_lineno, input_file_name);
}
-prec_redeclared()
+void prec_redeclared()
{
fprintf(stderr, "%s: w - line %d of \"%s\", conflicting %%prec \
specifiers\n", myname, lineno, input_file_name);
}
-unterminated_action(a_lineno, a_line, a_cptr)
-int a_lineno;
-char *a_line;
-char *a_cptr;
+void unterminated_action(a_lineno, a_line, a_cptr)
+ int a_lineno;
+ char *a_line;
+ char *a_cptr;
{
fprintf(stderr, "%s: e - line %d of \"%s\", unterminated action\n",
myname, a_lineno, input_file_name);
@@ -247,19 +246,19 @@ char *a_cptr;
}
-dollar_warning(a_lineno, i)
-int a_lineno;
-int i;
+void dollar_warning(a_lineno, i)
+ int a_lineno;
+ int i;
{
fprintf(stderr, "%s: w - line %d of \"%s\", $%d references beyond the \
end of the current rule\n", myname, a_lineno, input_file_name, i);
}
-dollar_error(a_lineno, a_line, a_cptr)
-int a_lineno;
-char *a_line;
-char *a_cptr;
+void dollar_error(a_lineno, a_line, a_cptr)
+ int a_lineno;
+ char *a_line;
+ char *a_cptr;
{
fprintf(stderr, "%s: e - line %d of \"%s\", illegal $-name\n",
myname, a_lineno, input_file_name);
@@ -268,7 +267,7 @@ char *a_cptr;
}
-untyped_lhs()
+void untyped_lhs()
{
fprintf(stderr, "%s: e - line %d of \"%s\", $$ is untyped\n",
myname, lineno, input_file_name);
@@ -276,9 +275,9 @@ untyped_lhs()
}
-untyped_rhs(i, s)
-int i;
-char *s;
+void untyped_rhs(i, s)
+ int i;
+ char *s;
{
fprintf(stderr, "%s: e - line %d of \"%s\", $%d (%s) is untyped\n",
myname, lineno, input_file_name, i, s);
@@ -286,24 +285,24 @@ char *s;
}
-unknown_rhs(i)
-int i;
+void unknown_rhs(i)
+ int i;
{
fprintf(stderr, "%s: e - line %d of \"%s\", $%d is unbound\n",
myname, lineno, input_file_name, i);
done(1);
}
-illegal_token_ref(i, name)
-int i;
-char *name;
+void illegal_token_ref(i, name)
+ int i;
+ char *name;
{
fprintf(stderr, "%s: e - line %d of \"%s\", $%d refers to terminal `%s', which has no argument\n",
myname, lineno, input_file_name, i, name);
done(1);
}
-default_action_error()
+void default_action_error()
{
fprintf(stderr, "%s: e - line %d of \"%s\", no action specified for this production\n",
myname, lineno, input_file_name);
@@ -311,23 +310,23 @@ default_action_error()
}
-undefined_goal(s)
-char *s;
+void undefined_goal(s)
+ char *s;
{
fprintf(stderr, "%s: e - the start symbol %s is undefined\n", myname, s);
done(1);
}
-undefined_symbol_warning(s)
-char *s;
+void undefined_symbol_warning(s)
+ char *s;
{
fprintf(stderr, "%s: w - the symbol %s is undefined\n", myname, s);
}
-entry_without_type(s)
-char *s;
+void entry_without_type(s)
+ char *s;
{
fprintf(stderr,
"%s: e - no type has been declared for the start symbol %s\n",
diff --git a/yacc/lalr.c b/yacc/lalr.c
index 640ddc4ca..21322dd4b 100644
--- a/yacc/lalr.c
+++ b/yacc/lalr.c
@@ -34,7 +34,23 @@ static short *VERTICES;
static int top;
-lalr()
+
+void set_state_table ();
+void set_accessing_symbol ();
+void set_shift_table ();
+void set_reduction_table ();
+void set_maxrhs ();
+void initialize_LA ();
+void set_goto_map ();
+void initialize_F ();
+void build_relations ();
+void compute_FOLLOWS ();
+void compute_lookaheads ();
+void digraph ();
+void add_lookback_edge ();
+void traverse ();
+
+void lalr()
{
tokensetsize = WORDSIZE(ntokens);
@@ -53,7 +69,7 @@ lalr()
-set_state_table()
+void set_state_table()
{
register core *sp;
@@ -64,7 +80,7 @@ set_state_table()
-set_accessing_symbol()
+void set_accessing_symbol()
{
register core *sp;
@@ -75,7 +91,7 @@ set_accessing_symbol()
-set_shift_table()
+void set_shift_table()
{
register shifts *sp;
@@ -86,7 +102,7 @@ set_shift_table()
-set_reduction_table()
+void set_reduction_table()
{
register reductions *rp;
@@ -97,7 +113,7 @@ set_reduction_table()
-set_maxrhs()
+void set_maxrhs()
{
register short *itemp;
register short *item_end;
@@ -125,7 +141,7 @@ set_maxrhs()
-initialize_LA()
+void initialize_LA()
{
register int i, j, k;
register reductions *rp;
@@ -162,7 +178,7 @@ initialize_LA()
}
-set_goto_map()
+void set_goto_map()
{
register shifts *sp;
register int i;
@@ -233,8 +249,8 @@ set_goto_map()
int
map_goto(state, symbol)
-int state;
-int symbol;
+ int state;
+ int symbol;
{
register int high;
register int low;
@@ -260,7 +276,7 @@ int symbol;
-initialize_F()
+void initialize_F()
{
register int i;
register int j;
@@ -337,7 +353,7 @@ initialize_F()
-build_relations()
+void build_relations()
{
register int i;
register int j;
@@ -429,8 +445,10 @@ build_relations()
}
-add_lookback_edge(stateno, ruleno, gotono)
-int stateno, ruleno, gotono;
+void add_lookback_edge(stateno, ruleno, gotono)
+ int stateno;
+ int ruleno;
+ int gotono;
{
register int i, k;
register int found;
@@ -458,8 +476,8 @@ int stateno, ruleno, gotono;
short **
transpose(R, n)
-short **R;
-int n;
+ short int **R;
+ int n;
{
register short **new_R;
register short **temp_R;
@@ -514,13 +532,13 @@ int n;
-compute_FOLLOWS()
+void compute_FOLLOWS()
{
digraph(includes);
}
-compute_lookaheads()
+void compute_lookaheads()
{
register int i, n;
register unsigned *fp1, *fp2, *fp3;
@@ -554,8 +572,8 @@ compute_lookaheads()
}
-digraph(relation)
-short **relation;
+void digraph(relation)
+ short int **relation;
{
register int i;
@@ -581,8 +599,8 @@ short **relation;
-traverse(i)
-register int i;
+void traverse(i)
+ register int i;
{
register unsigned *fp1;
register unsigned *fp2;
diff --git a/yacc/lr0.c b/yacc/lr0.c
index 3ee42a884..6ea4e2b65 100644
--- a/yacc/lr0.c
+++ b/yacc/lr0.c
@@ -30,7 +30,15 @@ static short **kernel_end;
static short *kernel_items;
-allocate_itemsets()
+
+void initialize_states ();
+void save_reductions ();
+void new_itemsets ();
+void save_shifts ();
+void print_derives ();
+void show_cores (), show_ritems (), show_rrhs (), show_shifts ();
+
+void allocate_itemsets()
{
register short *itemp;
register short *item_end;
@@ -72,7 +80,7 @@ allocate_itemsets()
}
-allocate_storage()
+void allocate_storage()
{
allocate_itemsets();
shiftset = NEW2(nsyms, short);
@@ -81,7 +89,7 @@ allocate_storage()
}
-append_states()
+void append_states()
{
register int i;
register int j;
@@ -110,7 +118,7 @@ append_states()
}
-free_storage()
+void free_storage()
{
FREE(shift_symbol);
FREE(redset);
@@ -123,7 +131,7 @@ free_storage()
-generate_states()
+void generate_states()
{
allocate_storage();
itemset = NEW2(nitems, short);
@@ -152,7 +160,7 @@ generate_states()
int
get_state(symbol)
-int symbol;
+ int symbol;
{
register int key;
register short *isp1;
@@ -215,7 +223,7 @@ int symbol;
-initialize_states()
+void initialize_states()
{
register int i;
register short *start_derives;
@@ -242,7 +250,7 @@ initialize_states()
}
-new_itemsets()
+void new_itemsets()
{
register int i;
register int shiftcount;
@@ -280,7 +288,7 @@ new_itemsets()
core *
new_state(symbol)
-int symbol;
+ int symbol;
{
register int n;
register core *p;
@@ -319,7 +327,7 @@ int symbol;
/* show_cores is used for debugging */
-show_cores()
+void show_cores()
{
core *p;
int i, j, k, n;
@@ -354,7 +362,7 @@ show_cores()
/* show_ritems is used for debugging */
-show_ritems()
+void show_ritems()
{
int i;
@@ -364,7 +372,8 @@ show_ritems()
/* show_rrhs is used for debugging */
-show_rrhs()
+
+void show_rrhs()
{
int i;
@@ -375,7 +384,7 @@ show_rrhs()
/* show_shifts is used for debugging */
-show_shifts()
+void show_shifts()
{
shifts *p;
int i, j, k;
@@ -393,7 +402,7 @@ show_shifts()
}
-save_shifts()
+void save_shifts()
{
register shifts *p;
register short *sp1;
@@ -427,7 +436,7 @@ save_shifts()
-save_reductions()
+void save_reductions()
{
register short *isp;
register short *rp1;
@@ -476,7 +485,7 @@ save_reductions()
}
-set_derives()
+void set_derives()
{
register int i, k;
register int lhs;
@@ -506,14 +515,14 @@ set_derives()
#endif
}
-free_derives()
+void free_derives()
{
FREE(derives[start_symbol]);
FREE(derives);
}
#ifdef DEBUG
-print_derives()
+void print_derives()
{
register int i;
register short *sp;
@@ -535,7 +544,7 @@ print_derives()
#endif
-set_nullable()
+void set_nullable()
{
register int i, j;
register int empty;
@@ -584,13 +593,13 @@ set_nullable()
}
-free_nullable()
+void free_nullable()
{
FREE(nullable);
}
-lr0()
+void lr0()
{
set_derives();
set_nullable();
diff --git a/yacc/main.c b/yacc/main.c
index c509386ea..98325d893 100644
--- a/yacc/main.c
+++ b/yacc/main.c
@@ -1,4 +1,5 @@
#include <signal.h>
+#include <string.h>
#include "defs.h"
char dflag;
@@ -73,8 +74,8 @@ extern char *mktemp();
extern char *getenv();
-done(k)
-int k;
+void done(k)
+ int k;
{
if (action_file) { fclose(action_file); unlink(action_file_name); }
if (entry_file) { fclose(entry_file); unlink(entry_file_name); }
@@ -91,13 +92,13 @@ int k;
void onintr(dummy)
- int dummy;
+ int dummy;
{
done(1);
}
-set_signals()
+void set_signals()
{
#ifdef SIGINT
if (signal(SIGINT, SIG_IGN) != SIG_IGN)
@@ -114,16 +115,16 @@ set_signals()
}
-usage()
+void usage()
{
fprintf(stderr, "usage: %s [-vs] [-b file_prefix] filename\n",
myname);
exit(1);
}
-getargs(argc, argv)
-int argc;
-char *argv[];
+void getargs(argc, argv)
+ int argc;
+ char **argv;
{
register int i;
register char *s;
@@ -209,7 +210,7 @@ no_more_options:;
char *
allocate(n)
-unsigned n;
+ unsigned int n;
{
register char *p;
@@ -223,7 +224,7 @@ unsigned n;
}
-create_file_names()
+void create_file_names()
{
int i, len;
char *tmpdir;
@@ -310,7 +311,7 @@ create_file_names()
}
-open_files()
+void open_files()
{
create_file_names();
@@ -370,9 +371,9 @@ open_files()
}
-main(argc, argv)
-int argc;
-char *argv[];
+void main(argc, argv)
+ int argc;
+ char **argv;
{
set_signals();
getargs(argc, argv);
diff --git a/yacc/mkpar.c b/yacc/mkpar.c
index e1aef60fe..4ba590b0d 100644
--- a/yacc/mkpar.c
+++ b/yacc/mkpar.c
@@ -14,13 +14,13 @@ short final_state;
static int SRcount;
static int RRcount;
-extern action *parse_actions();
-extern action *get_shifts();
-extern action *add_reductions();
-extern action *add_reduce();
+void find_final_state ();
+void remove_conflicts ();
+void unused_rules ();
+void total_conflicts ();
+void defreds ();
-
-make_parser()
+void make_parser()
{
register int i;
@@ -38,7 +38,7 @@ make_parser()
action *
parse_actions(stateno)
-register int stateno;
+ register int stateno;
{
register action *actions;
@@ -50,7 +50,7 @@ register int stateno;
action *
get_shifts(stateno)
-int stateno;
+ int stateno;
{
register action *actions, *temp;
register shifts *sp;
@@ -85,8 +85,8 @@ int stateno;
action *
add_reductions(stateno, actions)
-int stateno;
-register action *actions;
+ int stateno;
+ register action *actions;
{
register int i, j, m, n;
register int ruleno, tokensetsize;
@@ -111,8 +111,9 @@ register action *actions;
action *
add_reduce(actions, ruleno, symbol)
-register action *actions;
-register int ruleno, symbol;
+ register action *actions;
+ register int ruleno;
+ register int symbol;
{
register action *temp, *prev, *next;
@@ -150,7 +151,7 @@ register int ruleno, symbol;
}
-find_final_state()
+void find_final_state()
{
register int goal, i;
register short *to_state;
@@ -167,7 +168,7 @@ find_final_state()
}
-unused_rules()
+void unused_rules()
{
register int i;
register action *p;
@@ -199,7 +200,7 @@ unused_rules()
}
-remove_conflicts()
+void remove_conflicts()
{
register int i;
register int symbol;
@@ -274,7 +275,7 @@ remove_conflicts()
}
-total_conflicts()
+void total_conflicts()
{
fprintf(stderr, "%s: ", myname);
if (SRtotal == 1)
@@ -296,7 +297,7 @@ total_conflicts()
int
sole_reduction(stateno)
-int stateno;
+ int stateno;
{
register int count, ruleno;
register action *p;
@@ -323,7 +324,7 @@ int stateno;
}
-defreds()
+void defreds()
{
register int i;
@@ -332,8 +333,8 @@ defreds()
defred[i] = sole_reduction(i);
}
-free_action_row(p)
-register action *p;
+void free_action_row(p)
+ register action *p;
{
register action *q;
@@ -345,7 +346,7 @@ register action *p;
}
}
-free_parser()
+void free_parser()
{
register int i;
diff --git a/yacc/output.c b/yacc/output.c
index 83caa905f..30353f93d 100644
--- a/yacc/output.c
+++ b/yacc/output.c
@@ -17,7 +17,32 @@ static int lowzero;
static int high;
-output()
+void free_itemsets ();
+void free_shifts ();
+void free_reductions ();
+void output_stored_text ();
+void output_transl ();
+void output_rule_data ();
+void output_yydefred ();
+void output_actions ();
+void output_debug ();
+void output_trailing_text ();
+void output_semantic_actions ();
+void output_entries ();
+void token_actions ();
+void goto_actions ();
+void sort_actions ();
+void pack_table ();
+void output_base ();
+void output_table ();
+void output_check ();
+int default_goto ();
+void save_column ();
+int matching_vector ();
+int pack_vector ();
+
+
+void output()
{
extern char *header[], *define_tables[];
@@ -49,7 +74,7 @@ output()
static void output_char(n)
- unsigned n;
+ unsigned int n;
{
n = n & 0xFF;
putc('\\', output_file);
@@ -59,13 +84,13 @@ static void output_char(n)
}
static void output_short(n)
- int n;
+ int n;
{
output_char(n);
output_char(n >> 8);
}
-output_rule_data()
+void output_rule_data()
{
register int i;
register int j;
@@ -113,7 +138,7 @@ output_rule_data()
}
-output_yydefred()
+void output_yydefred()
{
register int i, j;
@@ -140,7 +165,7 @@ output_yydefred()
}
-output_actions()
+void output_actions()
{
nvectors = 2*nstates + nvars;
@@ -168,7 +193,7 @@ output_actions()
}
-token_actions()
+void token_actions()
{
register int i, j;
register int shiftcount, reducecount;
@@ -252,7 +277,7 @@ token_actions()
FREE(actionrow);
}
-goto_actions()
+void goto_actions()
{
register int i, j, k;
@@ -288,7 +313,7 @@ goto_actions()
int
default_goto(symbol)
-int symbol;
+ int symbol;
{
register int i;
register int m;
@@ -323,9 +348,9 @@ int symbol;
-save_column(symbol, default_state)
-int symbol;
-int default_state;
+void save_column(symbol, default_state)
+ int symbol;
+ int default_state;
{
register int i;
register int m;
@@ -365,7 +390,7 @@ int default_state;
width[symno] = sp1[-1] - sp[0] + 1;
}
-sort_actions()
+void sort_actions()
{
register int i;
register int j;
@@ -400,7 +425,7 @@ sort_actions()
}
-pack_table()
+void pack_table()
{
register int i;
register int place;
@@ -464,7 +489,7 @@ pack_table()
int
matching_vector(vector)
-int vector;
+ int vector;
{
register int i;
register int j;
@@ -505,7 +530,7 @@ int vector;
int
pack_vector(vector)
-int vector;
+ int vector;
{
register int i, j, k, l;
register int t;
@@ -581,7 +606,7 @@ int vector;
-output_base()
+void output_base()
{
register int i, j;
@@ -652,7 +677,7 @@ output_base()
-output_table()
+void output_table()
{
register int i;
register int j;
@@ -684,7 +709,7 @@ output_table()
-output_check()
+void output_check()
{
register int i;
register int j;
@@ -713,7 +738,7 @@ output_check()
}
-output_transl()
+void output_transl()
{
int i;
@@ -733,7 +758,7 @@ output_transl()
fprintf(code_file, " 0|]\n\n");
}
-output_stored_text()
+void output_stored_text()
{
register int c;
register FILE *in, *out;
@@ -760,11 +785,11 @@ output_stored_text()
}
-output_debug()
+void output_debug()
{
}
-output_trailing_text()
+void output_trailing_text()
{
register int c, last;
register FILE *in, *out;
@@ -821,9 +846,9 @@ output_trailing_text()
}
-copy_file(file, file_name)
- FILE ** file;
- char * file_name;
+void copy_file(file, file_name)
+ FILE **file;
+ char *file_name;
{
register int c, last;
register FILE *out;
@@ -857,17 +882,17 @@ copy_file(file, file_name)
}
-output_semantic_actions()
+void output_semantic_actions()
{
copy_file (&action_file, action_file_name);
}
-output_entries()
+void output_entries()
{
copy_file (&entry_file, entry_file_name);
}
-free_itemsets()
+void free_itemsets()
{
register core *cp, *next;
@@ -880,7 +905,7 @@ free_itemsets()
}
-free_shifts()
+void free_shifts()
{
register shifts *sp, *next;
@@ -894,7 +919,7 @@ free_shifts()
-free_reductions()
+void free_reductions()
{
register reductions *rp, *next;
diff --git a/yacc/parsing.c b/yacc/parsing.c
deleted file mode 100644
index 1b6099322..000000000
--- a/yacc/parsing.c
+++ /dev/null
@@ -1,136 +0,0 @@
-int yydebug;
-int yynerrs;
-int yyerrflag;
-int yychar;
-short *yyssp;
-YYSTYPE *yyvsp;
-YYSTYPE yyval;
-YYSTYPE yylval;
-short yyss[YYSTACKSIZE];
-YYSTYPE yyvs[YYSTACKSIZE];
-#define yystacksize YYSTACKSIZE
-#define YYABORT goto yyabort
-#define YYACCEPT goto yyaccept
-#define YYERROR goto yyerrlab
-
-value yyparse(tables, entrypoint, lexbuf)
- value tables, entrypoint, lexbuf;
-{
- register int yym, yyn, yystate;
-
-#define yyact FIELD(tables,0)
-#define yytransl FIELD(tables,1)
-#define yylhs FIELD(tables, 2)
-#define yylen FIELD(tables, 3)
-#define yydefred FIELD(tables, 4)
-#define yydgoto FIELD(tables, 5)
-#define yysindex FIELD(tables, 6)
-#define yyrindex FIELD(tables, 7)
-#define yygindex FIELD(tables, 8)
-#define YYTABLESIZE CINT(FIELD(tables, 9))
-#define yytable FIELD(tables, 10)
-#define yycheck FIELD(tables, 11)
-
- yynerrs = 0;
- yyerrflag = 0;
- yychar = (-1);
-
- yyssp = yyss;
- yyvsp = yyvs;
- *yyssp = yystate = 0;
-
- yychar = CINT(entrypoint);
-
-yyloop:
- if (yyn = yydefred[yystate]) goto yyreduce;
- if (yychar < 0) {
- token = yylex(lexbuf);
- yychar = CINT(yytransl[TAG(token)]);
- yylval = FIELD(token, 0);
- }
- if ((yyn = CINT(yysindex[yystate])) && (yyn += yychar) >= 0 &&
- yyn <= YYTABLESIZE && CINT(yycheck[yyn]) == yychar)
- {
- if (yyssp >= yyss + yystacksize - 1) grow_stacks();
-
- *++yyssp = yystate = CINT(yytable[yyn]);
- *++yyvsp = yylval;
- yychar = (-1);
- if (yyerrflag > 0) --yyerrflag;
- goto yyloop;
- }
- if ((yyn = CINT(yyrindex[yystate])) && (yyn += yychar) >= 0 &&
- yyn <= YYTABLESIZE && CINT(yycheck[yyn]) == yychar)
- {
- yyn = yytable[yyn];
- goto yyreduce;
- }
- if (yyerrflag) goto yyinrecovery;
-
-yynewerror:
- v = alloc(1, EXN_PARSING);
- FIELD(v, 0) = MLINT(yychar);
- mlraise(v);
-
-yyerrlab:
- ++yynerrs;
-
-yyinrecovery:
- if (yyerrflag < 3)
- {
- yyerrflag = 3;
- for (;;)
- {
- if ((yyn = CINT(yysindex[*yyssp])) && (yyn += YYERRCODE) >= 0 &&
- yyn <= YYTABLESIZE && CINT(yycheck[yyn]) == YYERRCODE)
- {
- if (yyssp >= yyss + yystacksize - 1) grow_stacks();
-
- *++yyssp = yystate = yytable[yyn];
- *++yyvsp = yylval;
- goto yyloop;
- }
- else
- {
- if (yyssp <= yyss) goto yyabort;
- --yyssp;
- --yyvsp;
- }
- }
- }
- else
- {
- if (yychar == 0) goto yyabort;
- yychar = (-1);
- goto yyloop;
- }
-
-yyreduce:
- yym = yylen[yyn];
- yyval = mlapply(FIELD(yyact, yyn), atom(0));
- yyssp -= yym;
- yystate = *yyssp;
- yyvsp -= yym;
- yym = yylhs[yyn];
- if (yystate == 0 && yym == 0)
- {
- yystate = YYFINAL;
- *++yyssp = YYFINAL;
- *++yyvsp = yyval;
- if (yychar < 0)
- {
- if ((yychar = yylex()) < 0) yychar = 0;
- }
- if (yychar == 0) goto yyaccept;
- goto yyloop;
- }
- if ((yyn = CINT(yygindex[yym])) && (yyn += yystate) >= 0 &&
- yyn <= YYTABLESIZE && CINT(yycheck[yyn]) == yystate)
- yystate = CINT(yytable[yyn]);
- else
- yystate = CINT(yydgoto[yym]);
- if (yyssp >= yyss + yystacksize - 1) grow_stacks();
- *++yyssp = yystate;
- *++yyvsp = yyval;
- goto yyloop;
-}
diff --git a/yacc/reader.c b/yacc/reader.c
index f821589fb..085ecb7c3 100644
--- a/yacc/reader.c
+++ b/yacc/reader.c
@@ -1,3 +1,4 @@
+#include <string.h>
#include "defs.h"
/* The line size must be a positive integer. One hundred was chosen */
@@ -34,8 +35,11 @@ char *name_pool;
char line_format[] = "(* Line %d, file %s *)\n";
-cachec(c)
-int c;
+
+void start_rule ();
+
+void cachec(c)
+ int c;
{
assert(cinc >= 0);
if (cinc >= cache_size)
@@ -49,7 +53,7 @@ int c;
}
-get_line()
+void get_line()
{
register FILE *f = input_file;
register int c;
@@ -113,7 +117,7 @@ dup_line()
}
-skip_comment()
+void skip_comment()
{
register char *s;
@@ -265,10 +269,11 @@ keyword()
}
syntax_error(lineno, line, t_cptr);
/*NOTREACHED*/
+ return 0;
}
-copy_ident()
+void copy_ident()
{
register int c;
register FILE *f = output_file;
@@ -297,7 +302,7 @@ copy_ident()
}
-copy_text()
+void copy_text()
{
register int c;
int quote;
@@ -319,7 +324,6 @@ loop:
switch (c)
{
case '\n':
- next_line:
putc('\n', f);
need_newline = 0;
get_line();
@@ -414,7 +418,7 @@ loop:
}
-copy_union()
+void copy_union()
{
register int c;
int quote;
@@ -442,7 +446,6 @@ loop:
switch (c)
{
case '\n':
- next_line:
get_line();
if (line == 0) unterminated_union(u_lineno, u_line, u_cptr);
goto loop;
@@ -537,7 +540,7 @@ loop:
int
hexval(c)
-int c;
+ int c;
{
if (c >= '0' && c <= '9')
return (c - '0');
@@ -690,7 +693,7 @@ get_literal()
int
is_reserved(name)
-char *name;
+ char *name;
{
char *s;
@@ -746,9 +749,7 @@ get_tag()
register int c;
register int i;
register char *s;
- int t_lineno = lineno;
char *t_line = dup_line();
- char *t_cptr = t_line + (cptr - line);
cinc = 0;
while (1) {
@@ -785,8 +786,8 @@ get_tag()
}
-declare_tokens(assoc)
-int assoc;
+void declare_tokens(assoc)
+ int assoc;
{
register int c;
register bucket *bp;
@@ -852,7 +853,7 @@ int assoc;
}
-declare_types()
+void declare_types()
{
register int c;
register bucket *bp;
@@ -880,7 +881,7 @@ declare_types()
}
-declare_start()
+void declare_start()
{
register int c;
register bucket *bp;
@@ -900,7 +901,7 @@ declare_start()
}
-read_declarations()
+void read_declarations()
{
register int c, k;
@@ -948,7 +949,7 @@ read_declarations()
}
}
-output_token_type()
+void output_token_type()
{
bucket * bp;
int n;
@@ -975,7 +976,7 @@ output_token_type()
fprintf(output_file, "\n");
}
-initialize_grammar()
+void initialize_grammar()
{
nitems = 4;
maxitems = 300;
@@ -1006,7 +1007,7 @@ initialize_grammar()
}
-expand_items()
+void expand_items()
{
maxitems += 300;
pitem = (bucket **) REALLOC(pitem, maxitems*sizeof(bucket *));
@@ -1014,7 +1015,7 @@ expand_items()
}
-expand_rules()
+void expand_rules()
{
maxrules += 100;
plhs = (bucket **) REALLOC(plhs, maxrules*sizeof(bucket *));
@@ -1026,7 +1027,7 @@ expand_rules()
}
-advance_to_start()
+void advance_to_start()
{
register int c;
register bucket *bp;
@@ -1076,9 +1077,9 @@ advance_to_start()
}
-start_rule(bp, s_lineno)
-register bucket *bp;
-int s_lineno;
+void start_rule(bp, s_lineno)
+ register bucket *bp;
+ int s_lineno;
{
if (bp->class == TERM)
terminal_lhs(s_lineno);
@@ -1091,7 +1092,7 @@ int s_lineno;
}
-end_rule()
+void end_rule()
{
if (!last_was_action) default_action_error();
@@ -1103,7 +1104,7 @@ end_rule()
}
-insert_empty_rule()
+void insert_empty_rule()
{
register bucket *bp, **bpp;
@@ -1119,7 +1120,7 @@ insert_empty_rule()
expand_items();
bpp = pitem + nitems - 1;
*bpp-- = bp;
- while (bpp[0] = bpp[-1]) --bpp;
+ while ((bpp[0] = bpp[-1])) --bpp;
if (++nrules >= maxrules)
expand_rules();
@@ -1132,7 +1133,7 @@ insert_empty_rule()
}
-add_symbol()
+void add_symbol()
{
register int c;
register bucket *bp;
@@ -1163,7 +1164,7 @@ add_symbol()
}
-copy_action()
+void copy_action()
{
register int c;
register int i, n;
@@ -1246,7 +1247,6 @@ loop:
switch (c)
{
case '\n':
- next_line:
get_line();
if (line) goto loop;
unterminated_action(a_lineno, a_line, a_cptr);
@@ -1373,7 +1373,7 @@ mark_symbol()
}
-read_grammar()
+void read_grammar()
{
register int c;
@@ -1406,7 +1406,7 @@ read_grammar()
}
-free_tags()
+void free_tags()
{
register int i;
@@ -1421,7 +1421,7 @@ free_tags()
}
-pack_names()
+void pack_names()
{
register bucket *bp;
register char *p, *s, *t;
@@ -1439,14 +1439,14 @@ pack_names()
{
p = t;
s = bp->name;
- while (*t++ = *s++) continue;
+ while ((*t++ = *s++)) continue;
FREE(bp->name);
bp->name = p;
}
}
-check_symbols()
+void check_symbols()
{
register bucket *bp;
@@ -1464,7 +1464,7 @@ check_symbols()
}
-pack_symbols()
+void pack_symbols()
{
register bucket *bp;
register bucket **v;
@@ -1600,7 +1600,7 @@ pack_symbols()
}
-make_goal()
+void make_goal()
{
static char name[7] = "'\\xxx'";
bucket * bp;
@@ -1646,7 +1646,7 @@ make_goal()
}
}
-pack_grammar()
+void pack_grammar()
{
register int i, j;
int assoc, prec;
@@ -1705,7 +1705,7 @@ pack_grammar()
}
-print_grammar()
+void print_grammar()
{
register int i, j, k;
int spacing;
@@ -1741,7 +1741,7 @@ print_grammar()
}
-reader()
+void reader()
{
create_symbol_table();
read_declarations();
diff --git a/yacc/skeleton.c b/yacc/skeleton.c
index e7149dc05..4dd090485 100644
--- a/yacc/skeleton.c
+++ b/yacc/skeleton.c
@@ -25,8 +25,8 @@ char *define_tables[] =
0
};
-write_section(section)
-char *section[];
+void write_section(section)
+ char **section;
{
register int i;
register FILE *fp;
diff --git a/yacc/symtab.c b/yacc/symtab.c
index 91e6bf100..4f52acf47 100644
--- a/yacc/symtab.c
+++ b/yacc/symtab.c
@@ -1,3 +1,4 @@
+#include <string.h>
#include "defs.h"
@@ -8,7 +9,7 @@ bucket *last_symbol;
int
hash(name)
-char *name;
+ char *name;
{
register char *s;
register int c, k;
@@ -16,7 +17,7 @@ char *name;
assert(name && *name);
s = name;
k = *s;
- while (c = *++s)
+ while ((c = *++s))
k = (31*k + c) & (TABLE_SIZE - 1);
return (k);
@@ -25,7 +26,7 @@ char *name;
bucket *
make_bucket(name)
-char *name;
+ char *name;
{
register bucket *bp;
@@ -54,7 +55,7 @@ char *name;
bucket *
lookup(name)
-char *name;
+ char *name;
{
register bucket *bp, **bpp;
@@ -76,7 +77,7 @@ char *name;
}
-create_symbol_table()
+void create_symbol_table()
{
register int i;
register bucket *bp;
@@ -96,14 +97,14 @@ create_symbol_table()
}
-free_symbol_table()
+void free_symbol_table()
{
FREE(symbol_table);
symbol_table = 0;
}
-free_symbols()
+void free_symbols()
{
register bucket *p, *q;
diff --git a/yacc/verbose.c b/yacc/verbose.c
index 2c7cc52c7..392b5e152 100644
--- a/yacc/verbose.c
+++ b/yacc/verbose.c
@@ -4,7 +4,19 @@
static short *null_rules;
-verbose()
+
+void print_state ();
+void log_unused ();
+void log_conflicts ();
+void print_conflicts ();
+void print_core ();
+void print_nulls ();
+void print_actions ();
+void print_shifts ();
+void print_reductions ();
+void print_gotos ();
+
+void verbose()
{
register int i;
@@ -28,7 +40,7 @@ verbose()
}
-log_unused()
+void log_unused()
{
register int i;
register short *p;
@@ -47,7 +59,7 @@ log_unused()
}
-log_conflicts()
+void log_conflicts()
{
register int i;
@@ -75,8 +87,8 @@ log_conflicts()
}
-print_state(state)
-int state;
+void print_state(state)
+ int state;
{
if (state)
fprintf(verbose_file, "\n\n");
@@ -89,8 +101,8 @@ int state;
}
-print_conflicts(state)
-int state;
+void print_conflicts(state)
+ int state;
{
register int symbol, act, number;
register action *p;
@@ -137,8 +149,8 @@ int state;
}
-print_core(state)
-int state;
+void print_core(state)
+ int state;
{
register int i;
register int k;
@@ -173,8 +185,8 @@ int state;
}
-print_nulls(state)
-int state;
+void print_nulls(state)
+ int state;
{
register action *p;
register int i, j, k, nnulls;
@@ -217,8 +229,8 @@ int state;
}
-print_actions(stateno)
-int stateno;
+void print_actions(stateno)
+ int stateno;
{
register action *p;
register shifts *sp;
@@ -244,8 +256,8 @@ int stateno;
}
-print_shifts(p)
-register action *p;
+void print_shifts(p)
+ register action *p;
{
register int count;
register action *q;
@@ -269,9 +281,9 @@ register action *p;
}
-print_reductions(p, defred)
-register action *p;
-register int defred;
+void print_reductions(p, defred)
+ register action *p;
+ register int defred;
{
register int k, anyreds;
register action *q;
@@ -307,8 +319,8 @@ register int defred;
}
-print_gotos(stateno)
-int stateno;
+void print_gotos(stateno)
+ int stateno;
{
register int i, k;
register int as;
diff --git a/yacc/warshall.c b/yacc/warshall.c
index 4d22ad741..d3a1f5732 100644
--- a/yacc/warshall.c
+++ b/yacc/warshall.c
@@ -1,8 +1,8 @@
#include "defs.h"
-transitive_closure(R, n)
-unsigned *R;
-int n;
+void transitive_closure(R, n)
+ unsigned int *R;
+ int n;
{
register int rowsize;
register unsigned mask;
@@ -53,9 +53,9 @@ int n;
}
}
-reflexive_transitive_closure(R, n)
-unsigned *R;
-int n;
+void reflexive_transitive_closure(R, n)
+ unsigned int *R;
+ int n;
{
register int rowsize;
register unsigned mask;