]> git.saurik.com Git - bison.git/blame - ChangeLog
* src/bison.simple: Remove #line just before %%epilogue. It
[bison.git] / ChangeLog
CommitLineData
710ddc4f
MA
12001-12-11 Marc Autret <autret_m@epita.fr>
2
3 * src/bison.simple: Remove #line just before %%epilogue. It
4 is now handled in ...
5 * src/reader.c (read_additionnal_code): Add the output of a
6 #line for the epilogue.
7
e83d80b8
MA
82001-12-10 Marc Autret <autret_m@epita.fr>
9
10 * src/reader.c (copy_definition): Re-use CPP-outed code which
11 replace precedent remove.
12 * src/bison.simple: Remove #line before %%prologue because
13 %%input-line is wrong at this time.
14
971d5158
MA
152001-12-10 Marc Autret <autret_m@epita.fr>
16
17 * src/reader.c (symbols_output): Clean up.
18 * src/output.c (output_gram, output): Clean up.
19
5edafffd
AD
202001-12-10 Akim Demaille <akim@epita.fr>
21
22 * src/lalr.c (initialize_lookaheads): New. Extracted from...
23 * src/LR0.c (set_state_table): here.
24 * src/lalr.c (lalr): Call it.
25
0279f8e9
AD
262001-12-10 Akim Demaille <akim@epita.fr>
27
28 * src/state.h (shifts): Remove the `number' member: shifts are
29 attached to state, hence no longer need to be labelled with a
30 state number.
31
190c4f5f
AD
322001-12-10 Akim Demaille <akim@epita.fr>
33
34 Now that states have a complete set of members, the linked list of
35 shifts is useless: just fill directly the state's shifts member.
36
37 * src/state.h (shifts): Remove the `next' member.
38 * src/LR0.c (first_state, last_state): Remove.
39 Adjust the callers.
40 (augment_automaton): Don't look for the shifts that must be added
41 a shift on EOF: it is those of the state we looked for! But now,
42 since shifts are attached, it is no longer needed to looking
43 merely by its id: its number.
44
2a73b93d
AD
452001-12-10 Akim Demaille <akim@epita.fr>
46
47 * src/LR0.c (augment_automaton): Better variable locality.
48 Remove an impossible branch: if there is a state corresponding to
49 the start symbol being shifted, then there is shift for the start
50 symbol from the initial state.
51
74392f6a
AD
522001-12-10 Akim Demaille <akim@epita.fr>
53
54 * src/LR0.c (augment_automaton): Call `insert_eof_shifting_state'
55 only when appropriate: when insert_start_shifting_state' is not
56 invoked.
57 * tests/regression.at (Rule Line Numbers): Adjust.
58
37c82725
AD
592001-12-10 Akim Demaille <akim@epita.fr>
60
61 * src/LR0.c (augment_automaton): Now that all states have shifts,
62 merge the two cases addition shifts to the initial state.
63
6a164e0c
AD
642001-12-10 Akim Demaille <akim@epita.fr>
65
66 * src/lalr.c (set_state_table): Move to...
67 * src/LR0.c: here.
68 * src/lalr.c (lalr): Don't call it...
69 * src/LR0.c (generate_states): do it.
70 * src/LR0.h (first_state): Remove, only the table is used.
71
7215de24
AD
722001-12-10 Akim Demaille <akim@epita.fr>
73
74 * src/LR0.h (first_shift, first_reduction): Remove.
75 * src/lalr.c: Don't use first_shift: find shifts through the
76 states.
77
80e25d4d
AD
782001-12-10 Akim Demaille <akim@epita.fr>
79
80 * src/LR0.c: Attach shifts to states as soon as they are
81 computed.
82 * src/lalr.c (set_state_table): Instead of assigning shifts to
83 state, just assert that the mapping was properly done.
84
0ab3728b
AD
852001-12-10 Akim Demaille <akim@epita.fr>
86
87 * src/LR0.c (insert_start_shift): Rename as...
88 (insert_start_shifting_state): this.
89 (insert_eof_shifting_state, insert_accepting_state): New.
90 (augment_automaton): Adjust.
91 Better locality of the variables.
92 When looking if the start_symbol is shifted from the initial
93 state, using `while (... symbol != start_symbol ...)' sounds
94 better than `while (... symbol < start_symbol ...)': If fail
95 to see how the order between symbols could be relevant!
96
78af9bbc
AD
972001-12-10 Akim Demaille <akim@epita.fr>
98
99 * src/getargs.h: Don't declare `spec_name_prefix' and
100 `spec_file_prefix', declared by src/files.h.
101 * src/files.c, src/files.h: Default for spec_name_prefix is "yy".
102 * src/muscle_tab.c (muscle_init): Default prefix to NULL.
103 * src/output.c (prepare): Adjust.
104 * src/reader.c (symbols_output): Likewise.
105 * src/vmsgetargs.c: Vaguely adjust, but who cares?
106
bdef2a41
AD
1072001-12-10 Akim Demaille <akim@epita.fr>
108
109 * src/muscle_tab.c (muscle_init): NULL is a better default than
110 `"0"'.
111
3735969c
AD
1122001-12-10 Akim Demaille <akim@epita.fr>
113
114 * src/reader.c (reader): Calling symbols_output once is enough.
115
49701457
AD
1162001-12-10 Akim Demaille <akim@epita.fr>
117
118 Now that states have a complete set of members, the linked list of
119 reductions is useless: just fill directly the state's reductions
120 member.
121
122 * src/state.h (struct reductions): Remove member `number' and
123 `next'.
124 * src/LR0.c (first_reduction, last_reduction): Remove.
125 (save_reductions): Don't link the new reductions, store them in
126 this_state.
127 * src/lalr.c (set_state_table): No need to attach reductions to
128 states, it's already done.
129 * src/output.c (output_actions): No longer free the shifts, then
130 the reductions, then the states: free all the states and their
131 members.
132
0edad749
AD
1332001-12-10 Akim Demaille <akim@epita.fr>
134
135 * src/options.c (OPTN, DRTV, BOTH): New.
136 (option_table): Use them.
137
0edad749
AD
138 * src/muscle_tab.c: Don't include xalloc.h and string.h: that's
139 the job of system.h.
140 * src/options.c: Don't include stdio.h and xalloc.h for the same
141 reasons.
142
5449dd0f
AD
1432001-12-10 Akim Demaille <akim@epita.fr>
144
145 * src/output.c (output, prepare): Make sure the values of the
146 muscles `action' and `prologue' are 0-terminated.
147
a870c567
AD
1482001-12-10 Akim Demaille <akim@epita.fr>
149
150 Clean up GCC warnings.
151
152 * src/reader.c (copy_action): `buf' is not used.
153 (parse_skel_decl): Be static.
154 * src/muscle_tab.c (mhash1, mhash2, muscle_insert): Preserve `const'.
155 * src/options.h (create_long_option_table): Have a real prototype.
156 * lib/hash.c, lib/hash.h (hash_insert, hash_insert_at, hash_delete)
157 (hash_delete_at): Return const void *.
158 Adjust casts to preserve the const.
159
80df8768
AD
1602001-12-10 Akim Demaille <akim@epita.fr>
161
162 * configure.in: Require 2.52g.
163 M4 is not needed, but AUTOM4TE is.
164 * m4/m4.m4: Remove.
165 * tests/Makefile.am: Adjust.
166
f693ad14
AD
1672001-12-10 Akim Demaille <akim@epita.fr>
168
169 One structure for states is enough, even though theoretically
170 there are LR(0) states and LALR(1) states.
171
172 * src/lalr.h (state_t): Remove.
173 (state_table): Be state_t **, not state_t *.
174 * src/state.h (core, CORE_ALLOC): Rename as...
175 (state_t, STATE_ALLOC): this.
176 Add the LALR(1) members: shifts, reductions, errs.
177 * src/LR0.c (state_table): Rename as...
178 (state_hash): this, to avoid name clashes with the global
179 `state_table'.
180 * src/print_graph.c, src/LR0.c, src/LR0.h, src/conflicts.c
181 * src/lalr.c, src/lalr.h, src/output.c, src/print.c: Adjust.
182
74ffbcb6
AD
1832001-12-10 Akim Demaille <akim@epita.fr>
184
185 Bison dumps core on bash.y.
186 Reported by Pascal Bart.
187
188 * src/warshall.c (bitmatrix_print): New.
189 (TC): Use it.
190 When performing a transitive closure R(i, j) && R(j, k) => R(i, k),
191 j must be the outer loop.
192 * tests/regression.at (Broken Closure): New.
193
07708e19
AD
1942001-12-05 Akim Demaille <akim@epita.fr>
195
196 * tests/atlocal.in (CPPFLAGS): Do not leave a space between -I and
197 its argument.
198