Akim Demaille
d39a6b7ca9
Instead of mapping the LHS of unused rules to -1, keep the LHS
...
valid, but flag the rules as invalid.
* src/gram.h (rule_t): `useful' is a new member.
* src/print.c (print_grammar): Adjust.
* src/derives.c (set_derives): Likewise.
* src/reader.c (packgram, reduce_output): Likewise.
* src/reduce.c (reduce_grammar_tables): Likewise.
* tests/reduce.at (Underivable Rules, Useless Rules): New.
2001-11-30 10:46:08 +00:00
Akim Demaille
d287d66a69
* src/reduce.c (reduce_output): Formatting changes.
...
* src/print.c (print_results, print_grammar): Likewise.
* tests/regression.at (Rule Line Numbers)
(Solved SR Conflicts, Unresolved SR Conflicts): Adjust.
2001-11-30 10:45:45 +00:00
Akim Demaille
ea451a17d7
* src/reduce.c (nonterminals_reduce): Instead of throwing away
...
useless nonterminals, move them at the end of the symbol arrays.
(reduce_output): Adjust.
* tests/reduce.at (Useless Nonterminals): Adjust.
2001-11-30 10:45:28 +00:00
Akim Demaille
24b1e65f04
* src/reduce.c: Various comment/formatting changes.
...
(nonterminals_reduce): New, extracted from...
(reduce_grammar_tables): here.
(reduce_grammar): Call nonterminals_reduce.
2001-11-30 10:45:14 +00:00
Paul Eggert
7ad28769d6
(YYSTACK_REALLOC): Remove.
...
(YYSTACK_ALLOC): Resurrect this macro, with its old meaning.
(YYSTACK_FREE, YYSTACK_GAP_MAX, YYSTACK_BYTES, YYSTACK_RELOCATE):
New macros.
(union yyalloc): New type.
(__yy_memcpy): Last arg is size_t, not unsigned int, to remove
an arbitrary restriction on hosts where size_t is wider than int.
(yyparse): Don't dump core if alloca or malloc fails; instead, report
a parser stack overflow. Allocate just one block of memory for all
three stacks, instead of allocating three blocks; this typically is
faster and reduces fragmentation.
Do not limit the number of items in the stack to a value that fits
in 'int', as this is an arbitrary limit on hosts with 64-bit
size_t and 32-bit int.
2001-11-30 02:47:56 +00:00
Paul Eggert
57d4ee2b82
* src/bison.simple (YYSTACK_REALLOC): Remove.
...
(YYSTACK_ALLOC): Resurrect this macro, with its old meaning.
(YYSTACK_FREE, YYSTACK_GAP_MAX, YYSTACK_BYTES, YYSTACK_RELOCATE):
New macros.
(union yyalloc): New type.
(__yy_memcpy): Last arg is size_t, not unsigned int, to remove
an arbitrary restriction on hosts where size_t is wider than int.
(yyparse): Don't dump core if alloca or malloc fails; instead, report
a parser stack overflow. Allocate just one block of memory for all
three stacks, instead of allocating three blocks; this typically is
faster and reduces fragmentation.
Do not limit the number of items in the stack to a value that fits
in 'int', as this is an arbitrary limit on hosts with 64-bit
size_t and 32-bit int.
2001-11-30 02:45:34 +00:00
Akim Demaille
d8a9ec00b8
Regen.
2001-11-28 14:59:32 +00:00
Akim Demaille
872e1b86c4
Typo.
2001-11-28 14:58:05 +00:00
Akim Demaille
ad4c2c7a57
* src/LR0.c (shifts_new): New.
...
(save_shifts, insert_start_shift, augment_automaton): Use it.
2001-11-28 14:57:44 +00:00
Akim Demaille
0785dec2c8
* src/closure.c (closure): b' and ruleno' denote the same value:
...
keep ruleno only.
2001-11-28 14:57:30 +00:00
Akim Demaille
e1828f4f07
* src/closure.c (closure): Instead of looping over word in array
...
then bits in words, loop over bits in array.
2001-11-28 14:57:16 +00:00
Akim Demaille
a816bf3eac
* src/closure.c (closure): No longer optimize the special case
...
where all the bits of `ruleset[r]' are set to 0, to make the code
clearer.
2001-11-28 14:57:02 +00:00
Akim Demaille
2ce6476804
* src/closure.c (closure): r' and c' are new variables, used to
...
de-obfuscate accesses to RULESET and CORE.
2001-11-28 14:55:38 +00:00
Akim Demaille
457b6d1e72
* src/reduce.c (reduce_print): Use ngettext.
...
(dump_grammar): Improve the trace accuracy.
2001-11-28 13:38:15 +00:00
Akim Demaille
79ebbdb36a
* src/reduce.c (dump_grammar): Don't translate trace messages.
2001-11-28 11:58:00 +00:00
Akim Demaille
0aa2ac9063
* tests/reduce.at (Useless Terminals, Useless Nonterminals): New.
...
* src/reduce.c (reduce_grammar_tables): Do not free useless tags,
as all tags are free'ed afterwards.
From Enrico Scholz.
2001-11-28 11:42:56 +00:00
Akim Demaille
e7d79012ae
* src/system.h: Use intl/libgettext.h.
...
* src/Makefile.am (INCLUDES): Add -I $(top_srcdir).
2001-11-28 10:32:48 +00:00
Paul Eggert
eb4a4d73bc
* src/bison.simple (YYSTACK_REALLOC): Fix typo that caused us to
...
use alloca when we didn't want to, and vice versa.
2001-11-27 23:31:47 +00:00
Akim Demaille
dee96b5a07
* tests/torture.at (Exploding the Stack Size with Malloc):
...
s/YYSTACK_USE_ALLOCA_ALLOCA/YYSTACK_USE_ALLOCA/.
2001-11-27 18:57:02 +00:00
Akim Demaille
4bfeeafb00
* src/files.c: Include error.h.
...
From Hans Aberg.
2001-11-27 18:42:32 +00:00
Marc Autret
c18cf8cb26
Revert doc patch.
2001-11-26 19:19:21 +00:00
Akim Demaille
54b982ae70
Bump to 1.30f.
2001-11-26 17:13:05 +00:00
Akim Demaille
cf2e198269
Version 1.30e.
2001-11-26 16:47:53 +00:00
Akim Demaille
af4483a0ab
Typo.
2001-11-26 15:25:10 +00:00
Akim Demaille
674fd9acbc
* src/reader.c (readgram): Make sure rules for mid-rule actions
...
have a lineno equal to that of their host rule.
Reported by Hans Aberg.
* tests/regression.at (Rule Line Numbers): New.
2001-11-26 15:24:06 +00:00
Akim Demaille
6fedd4d1d6
* src/LR0.c (allocate_itemsets): kernel_size contains ints, not
...
size_ts.
Reported by Hans Aberg.
2001-11-26 13:01:10 +00:00
Akim Demaille
abe1baa044
* src/complain.c, src/complain.h (error): Remove, provided by
...
lib/error.[ch].
2001-11-26 11:26:35 +00:00
Akim Demaille
33285af04d
* src/reader.c (read_declarations): Don't abort on tok_illegal,
...
issue an error message.
* tests/regression.at (Invalid %directive): New.
Reported by Hans Aberg.
2001-11-26 09:49:58 +00:00
Akim Demaille
cd7f95831e
* configure.in: Invoke AC_FUNC_OBSTACK and AC_FUNC_ERROR_AT_LINE.
...
* lib/Makefile.am (libbison_a_SOURCES): Adjust.
2001-11-26 09:19:56 +00:00
Akim Demaille
1b9a8440cd
* src/conflicts.c (conflicts_print): Don't complain at all when
...
there are no reduce/reduce conflicts, and as many shift/reduce
conflicts as expected.
* tests/regression.at (%expect right): Adjust.
2001-11-26 09:18:40 +00:00
Marc Autret
aead559e00
* doc/bison.texinfo (Mystery Conflicts): Hint '-v' use.
...
From Golubev I. N.
2001-11-25 12:57:33 +00:00
Akim Demaille
92b69b7f09
* lib/alloca.c: Update, from fileutils.
2001-11-23 14:55:36 +00:00
Akim Demaille
6e303f08d6
* lib/Makefile.am (libbison_a_LIBADD): Add @ALLOCA@.
2001-11-23 14:18:36 +00:00
Akim Demaille
3dfc01e247
Regen.
2001-11-23 14:17:53 +00:00
Akim Demaille
1503820f54
1.30e.
2001-11-23 14:15:42 +00:00
Akim Demaille
bc9bb28004
Update.
2001-11-23 14:15:08 +00:00
Akim Demaille
16c4a35041
* src/system.h: Include alloca.h.
...
* src/main.c (main) [C_ALLOCA]: Call alloca (0).
2001-11-23 14:13:19 +00:00
Akim Demaille
f0451dba71
* src/print_graph.c (print_actions): Remove `rule', unused.
...
* src/LR0.c (kernel_size): Contain `int' instead of `size_t' to
pacify GCC's signed < unsigned warnings.
* src/closure.c (itemsetsize): Likewise.
* src/reader.c (symbol_list_new): Static.
2001-11-23 14:04:08 +00:00
Akim Demaille
a9f37dee0c
Attaching lineno to buckets is stupid, since only one copy of each
...
symbol is kept, only the line of the first occurrence is kept too.
* src/symtab.h, src/symtab.c (bucket): Remove the line member.
* src/reader.c (rline_allocated): Remove, unused.
(symbol_list): Have a `line' member.
(symbol_list_new): New.
(readgram): Use it.
* src/print.c (print_grammar): Output the rule line numbers.
* tests/regression.at (Solved SR Conflicts)
(Unresolved SR Conflicts): Adjust.
Reported by Hans Aberg.
2001-11-23 14:03:43 +00:00
Akim Demaille
4b0979fcf3
Englishoes reported by Jim.
2001-11-21 11:45:51 +00:00
Akim Demaille
cc35239e1b
Remove all po/ generated files from repository.
2001-11-20 13:30:31 +00:00
Akim Demaille
2e2cbb3fad
Remove doc/ generated files from the repository.
2001-11-20 13:29:40 +00:00
Akim Demaille
adb4edee47
Version 1.30d.
2001-11-20 13:26:58 +00:00
Akim Demaille
65490badba
.
2001-11-20 13:21:23 +00:00
Akim Demaille
8b044b8540
Adjust.
2001-11-20 13:14:13 +00:00
Akim Demaille
0704bc9b8e
* po/sv.po: New.
...
* configure.in (ALL_LINGUAS): Adjust.
* po/POTFILE.in: Remove `nullable.c' and `derives.c' which no
longer contains strings to translate.
2001-11-20 13:10:12 +00:00
Akim Demaille
2b7c2ef124
* src/conflicts.c (conflicts_print): Add a missing n.
2001-11-19 11:07:50 +00:00
Akim Demaille
48e38d301e
Formatting changes.
2001-11-19 10:28:25 +00:00
Akim Demaille
560757768c
* src/nullable.c (nullable_print): New.
...
(set_nullable): Call it when tracing.
Better locality of variables.
2001-11-19 09:27:37 +00:00
Akim Demaille
238b8134ec
* src/print.c (print_actions): Better locality of variables.
2001-11-19 09:27:24 +00:00