c10e681b4ca628d71bbf62a8a246416a9c88c259
[pspp-builds.git] / src / language / lexer / ChangeLog
1 2007-05-03  John Darrington <john@darrington.wattle.id.au>
2         
3         * lexer.c lexer.h: Added lex_is_string function.
4         
5 2007-04-15  Ben Pfaff  <blp@gnu.org>
6
7         * q2c.c: Fully support lists of integer values.  Add support for
8         lists of string values.  Add some more needed declarations to
9         headers.
10
11 Fri Feb 16 11:14:42 2007  Ben Pfaff  <blp@gnu.org>
12
13         Better support cross-compiling by using CC_FOR_BUILD and
14         EXEEXT_FOR_BUILD for q2c.
15         
16         * automake.mk: Use EXEEXT_FOR_BUILD and CC_FOR_BUILD to build and
17         clean q2c.
18
19         * q2c.c: Avoid external dependencies, besides the standard C
20         library.
21
22 Sun Feb 11 20:31:51 2007  Ben Pfaff  <blp@gnu.org>
23
24         * q2c.c: Make q2c link under mingw32, by eliminating the
25         dependency on localtime.  Gnulib replaces localtime by a fixed
26         version, but we don't link q2c against gnulib.  q2c only uses
27         localtime to put the time of processing into the output file,
28         which I've never in practice found to be useful, so the patch just
29         drops this feature.
30
31 Wed Dec 13 21:00:24 2006  Ben Pfaff  <blp@gnu.org>
32
33         * variable-parser.c (parse_variables): If not successful, set
34         output pointer to NULL and output count to 0.
35
36 Sat Dec  9 18:46:11 2006  Ben Pfaff  <blp@gnu.org>
37
38         * variable-parser.h: New PV_SAME_WIDTH variable parsing option.
39
40         * variable-parser.c (add_variable): Implement new PV_SAME_WIDTH
41         option.
42         (parse_var_set_vars) Ditto.
43         (array_var_set_lookup_var_idx) Use new var_create, var_destroy
44         functions.
45
46 Sat Dec  2 21:19:50 2006  Ben Pfaff  <blp@gnu.org>
47
48         General clean-up.
49         
50         * lexer.c: (lex_token_name) Don't use a static buffer or, rather,
51         use a separate static buffer for each possible answer.
52         (lex_token_representation) Now use lex_token_name as building
53         block.  Previously this broke lex_force_match because it uses
54         lex_token_name in a call to lex_error, which in turn uses
55         lex_token_representation.
56         (lex_force_match_id) Use lex_match_id as building block, to
57         simplify.
58         (parse_id) Rewrite to work with modified lex_id_to_token and
59         lex_id_get_length.  The computation of rest_of_line is a bit of an
60         abomination but it will get fixed later.
61         
62 Sat Dec  2 20:16:50 2006  Ben Pfaff  <blp@gnu.org>
63
64         * lexer.c (struct lexer): Change function signature for
65         `read_line' to take an "enum getl_syntax *" instead of "bool *".
66         (lex_create) Ditto, for argument.
67         (lex_preprocess_line) New function.
68         (lex_get_line_raw) New arg, to allow caller to obtain getl_syntax
69         of the line read.
70         (lex_get_line) Use lex_get_line_raw and lex_preprocess_line to
71         simplify.
72
73 Sun Nov 19 09:20:42 2006  Ben Pfaff  <blp@gnu.org>
74
75         * range-parser.c (parse_num_range): Because data_in takes an enum
76         fmt_type now, not a struct fmt_spec, change the type of the
77         corresponding argument.  Updated all callers.
78         (parse_number) Ditto.
79
80 Sun Nov 12 06:34:06 WST 2006 John Darrrington <john@darrington.wattle.id.au>
81
82         * format-parser.c format-parser.h lexer.c lexer.h q2c.c range-parser.c
83           range-parser.h subcommand-list.c variable-parser.c
84           variable-parser.h:
85
86         Encapsulated the lexer into an object, and updated everything
87         accordingly.
88
89 Tue Oct 31 18:09:32 2006  Ben Pfaff  <blp@gnu.org>
90
91         * range-parser.c (parse_number): Fix error message.
92
93 Sat Oct 28 16:17:18 WST 2006 John Darrington <john@darrington.wattle.id.au>
94
95         * lexer.c lexer.h: Added a line_buffer (previously an external
96         reference called getl_buf). 
97
98 Thu Oct 26 20:18:03 2006  Ben Pfaff  <blp@gnu.org>
99
100         * lexer.c (parse_string): Make lexing of binary, hex, and octal
101         strings work (fixes bug #17948).  Allow null bytes in strings, now
102         that there's a use for them (see tests/formats/float-format.sh).
103
104 Sun Jul 16 21:03:34 2006  Ben Pfaff  <blp@gnu.org>
105
106         * format-parser.h: New file.  Moved prototypes of format-parser.c
107         functions here, from lexer.h.
108
109         * format-parser.c: (parse_format_specifier_name) Rewrote and
110         changed semantics.
111         (parse_abstract_format_specifier) New function.
112         (parse_format_specifier) Rewrote in terms of
113         parse_abstract_format_specifier.  Removed "options" parameter, so
114         callers had to be updated.  Callers that didn't want messages
115         emitted were changed to use the new msg_disable/msg_enable
116         functions.
117
118         * variables-parser.c: (parse_variables_pool) New function.
119         (register_vars_pool) New function.
120         (parse_DATA_LIST_vars_pool) New function.
121         (parse_mixed_vars_pool) Use register_vars_pool.  Assert that
122         PV_APPEND is not in the options.
123         
124 Sat Jul  1 17:40:38 2006  Ben Pfaff  <blp@gnu.org>
125
126         Fix bug #11612, "q2c documentation does not agree with code".
127         
128         * q2c.c (parse_subcommand): Make "+" mean ARITY_MANY, absence
129         mean ARITY_ONCE_ONLY.
130
131 Tue Jul  4 09:45:12 2006  Ben Pfaff  <blp@gnu.org>
132
133         Fix bug #15766 (/KEEP subcommand on SAVE doesn't fully support
134         ALL) and additional underlying system file issues.
135         
136         * variable-parser.c (add_variable): Move test earlier for clarity
137         and efficiency.
138         (parse_var_set_vars) Accept ALL within a variable list, not just
139         at the beginning of one.
140
141 Tue Jun 27 22:54:30 2006  Ben Pfaff  <blp@gnu.org>
142
143         * automake.mk (src_language_lexer_liblexer_a_SOURCES): Add
144         variable-parser.h.
145
146 Tue Jun 27 19:15:33 2006  Ben Pfaff  <blp@gnu.org>
147
148         Add auxiliary data pointer to q2c parse_<command> function, and
149         pass it along to the custom parser functions.
150
151         Updated all uses of custom functions in all the existing .q files.
152         
153         * q2c.c (dump_declarations): Include auxiliary parameter in
154         function prototypes.
155         (dump_subcommand) Include aux arg in calls to custom functions.
156         (dump_parser) Include aux param in parse_<command> function
157         definition.  Include aux arg in calls to custom functions.
158
159 Tue Jun 27 12:07:34 2006  Ben Pfaff  <blp@gnu.org>
160
161         * variable-parser.h: New header.  Moved the var_set and variable
162         parsing declarations here.
163
164         * q2c.c (main): Emit include for new variable-parser.h header.
165
166 Sun Jun 25 22:41:00 2006  Ben Pfaff  <blp@gnu.org>
167
168         * q2c.c (dump_free): For SBC_DBL_LIST, enclose the output code in
169         curly braces, because it contains a variable declaration and might
170         not be at the beginning of a block.
171
172 Fri Jun  9 14:02:19 2006  Ben Pfaff  <blp@gnu.org>
173
174         Reform string library.
175         
176         * q2c.c (dump_subcommand): ds_c_str() became ds_cstr(), in
177         generated code.
178
179 Wed Apr 26 13:30:41 2006  Ben Pfaff  <blp@gnu.org>
180
181         * lexer.c: (lex_discard_rest_of_command) New function.
182
183 Mon Apr 24 14:12:08 2006  Ben Pfaff  <blp@gnu.org>
184
185         * q2c.c: Use exit.h from gnulib instead of checking for and
186         defining EXIT_SUCCESS and EXIT_FAILURE by hand.
187
188 Sat Apr 15 14:30:35 2006  Ben Pfaff  <blp@gnu.org>
189
190         * q2c.c: Change DEBUGGING macro to DUMP_TOKENS for clarity and to
191         avoid dumping all the tokens to stdout when --enable-debug is
192         passed to configure.
193
194 Fri Mar 10 08:29:25 2006  Ben Pfaff  <blp@gnu.org>
195
196         * q2c.c: (dump_free) Free proper member for var list, instead of
197         hard-coding to v_variables.  Thanks to Jason Stover for reporting
198         this bug.
199
200 Thu Mar  2 08:40:33 WST 2006 John Darrington <john@darrington.wattle.id.au>
201         
202         * Moved files from src directory