e00ac0c288209ef8f6aa0c4046422887915b3df4
[pspp-builds.git] / src / libpspp / ChangeLog
1 2007-09-16  Ben Pfaff  <blp@gnu.org>
2
3         * copyleft.c: Add trailing new-lines to lack-of-warranty
4         statement.
5
6 2007-09-05 John Darrington <john@darrington.wattle.id.au>
7
8         * getl.c: Add extra members to struct getl_source, to maintain the
9         error mode and the syntax_mode. 
10
11 2007-07-25  Ben Pfaff  <blp@gnu.org>
12
13         * getl.c (getl_append_source): Add source to *end* of list.
14         Otherwise the list ends up in reverse order.
15
16         * automake.mk (src/libpspp/version.c): Use $HOME instead of ~ in
17         paths.  We don't interpolate ~.
18
19 2007-07-22  Ben Pfaff  <blp@gnu.org>
20
21         * str.h: Include xstrndup.h also.
22
23         * float-format.c (float_get_double): New function.
24
25 2007-07-06  Ben Pfaff  <blp@gnu.org>
26
27         * copyleft.c (legal): Update startup notice to use format
28         recommended by latest GNU coding standards.
29
30 2007-06-06  Ben Pfaff  <blp@gnu.org>
31
32         * array.c (binary_search): Fix assertion.
33
34 2007-06-06  Ben Pfaff  <blp@gnu.org>
35
36         Add error propagation layer.  Patch #5916, slightly revised.
37
38         * automake.mk: Add new files.
39         
40         * taint.c: New file.
41
42         * taint.h: New file.
43
44 2007-06-03  Ben Pfaff  <blp@gnu.org>
45
46         Add ability for reverse iteration to tower code.
47         
48         * tower.c (tower_last): New function.
49         (tower_prev): New function.
50         (abt_to_tower_node): New function.
51         (first_node): Use abt_to_tower_node.
52         (last_node): New function.
53         (next_ndoe): Use abt_to_tower_node.
54         (prev_node): New function.
55
56 2007-06-03  Ben Pfaff  <blp@gnu.org>
57
58         * tower.c: Cache repeated lookups of a single tower element.  This
59         turns such lookups into O(1) operations without harming the big-O
60         of other operations.
61
62         * tower.h (struct tower): Add members for caching.
63
64         * range-set.c (range_set_clone): New function.
65
66         * array.c (insert_range): New function.
67         (insert_element): New function.
68         (move_range): New function.
69
70 2007-04-25  Ben Pfaff  <blp@gnu.org>
71
72         * model-checker.c: Don't use type sighandler_t, which is a GNU
73         extension.  Reported by "Daniel E WILLIAMS"
74         <Daniel.E.Williams@state.or.us>.
75
76 2007-04-25 John Darrington <john@darrington.wattle.id.au>
77
78         * i18n.c: Fixed bug converting long strings
79
80 2007-04-22  Ben Pfaff  <blp@gnu.org>
81
82         Patch #5884.
83         
84         * ll.h (ll_for_each_reverse): New macro.
85         (ll_for_each_reverse_continue): New macro.
86         (ll_for_each_reverse_safe): New macro.
87         (ll_for_each_safe_reverse_continue): New macro.
88         (ll_for_each_reverse_preremove): New macro.
89         (ll_for_each_reverse_postremove): New macro.
90         (ll_remove__): Removed (dead code).
91         (ll_tail__): New macro.
92         (ll_prev__): New macro.
93
94 2007-04-22  Ben Pfaff  <blp@gnu.org>
95
96         Implement model checker for testing purposes.
97
98         Patch #5873.
99         
100         * automake.mk (src_libpspp_libpspp_a_SOURCES): Add
101         model-checker.[ch].  Alphabetize.
102
103         * model-checker.c: New file.
104
105         * model-checker.h: New file.
106
107 2007-04-03  Ben Pfaff  <blp@gnu.org>
108
109         Apply patches #5828, #5837, #5841, #5843.
110
111         * abt.c (insert_relative): New function.
112         (abt_insert_after): New function.
113         (abt_insert_before): New function.
114
115         * range-map.c: New file.
116
117         * range-map.h: New file.
118
119         * range-set.c: New file.
120
121         * range-set.h: New file.
122
123         * tower.c: New file.
124
125         * tower.h: New file.
126
127 2007-04-01  Ben Pfaff  <blp@gnu.org>
128
129         * bt.c: Need #include <limits.h>.  Thanks to "John McCabe-Dansted"
130         <gmatht@gmail.com> for pointing this out.
131
132 2007-03-31  Ben Pfaff  <blp@gnu.org>
133
134         Patch #5827.
135
136         * automake.mk (src_libpspp_libpspp_a_SOURCES): Add bt.c.
137
138         * bt.h: New file.
139
140         * bt.c: New file.
141
142 2007-03-30  Ben Pfaff  <blp@gnu.org>
143
144         Patch #5829.
145
146         * automake.mk (src_libpspp_libpspp_a_SOURCES): Add deque.c.
147
148         * deque.h: Completely rewrote.  Adapted client to new interface.
149
150         * deque.c: New file.
151
152 2007-03-25  Ben Pfaff  <blp@gnu.org>
153
154         * automake.mk (src_libpspp_libpspp_a_SOURCES): Add
155         sparse-array.[ch].
156
157         * pool.c (pool_zalloc): New function.
158         (pool_calloc): New function.
159
160         * sparse-array.c: New file.
161
162         * sparse-array.h: New file.
163
164 Mon Mar  5 20:55:49 CET 2007 John Darrington <john@darrington.wattle.id.au>
165
166         * i18n.c: Cast second argument of iconv using ICONV_CONST
167
168 2007-02-22  Ben Pfaff  <blp@gnu.org>
169
170         * string.h: Don't include vsnprintf.h any more, because gnulib has
171         now absorbed it into string.h.
172
173 Thu Feb 22 12:25:52 CET 2007 John Darrington <john@darrington.wattle.id.au>
174
175         * syntax-gen.h syntax-gen.c: New files.
176
177 Sun Feb 18 11:21:41 2007  Ben Pfaff  <blp@gnu.org>
178
179         * alloc.h: Remove useless parentheses in #if "defined" operator.
180
181         * misc.h: Ditto.
182
183 Tue Feb  6 20:00:13 2007  Ben Pfaff  <blp@gnu.org>
184
185         * misc.h [!HAVE_ISINF] (isinf): Define only if isinf is not
186         defined as a macro, because mingw seems to have the macro without
187         the function.
188         [!HAVE_ISNAN] (isnan): Ditto, for symmetry only.
189         [!AHVE_FINITE] (finite): Ditto, for symmetry only.
190
191 Tue Feb  6 19:58:46 2007  Ben Pfaff  <blp@gnu.org>
192
193         * compiler.h (PRINTF_FORMAT): Use __printf__ instead of printf to
194         avoid problem with "#define printf libintl_printf" that libintl is
195         fond of doing.
196         (SCANF_FORMAT): Ditto, for symmetry only.
197
198 Tue Feb  6 19:47:10 2007  Ben Pfaff  <blp@gnu.org>
199
200         * float-format.h: [FPREP_IEEE754] [WORDS_BIGENDIAN] Add missing
201         comma.
202
203 Wed Jan 24 21:13:32 2007  Ben Pfaff  <blp@gnu.org>
204
205         * abt.c: New file.
206
207         * abt.h: New file.
208
209         * automake.mk: Add abt.c, abt.h to sources.
210
211 Sun Jan 14 21:44:18 2007  Ben Pfaff  <blp@gnu.org>
212
213         * automake.mk: Add deque.h to sources.
214         
215         * deque.h: New file.
216
217 Wed Jan 10 06:49:38 2007  Ben Pfaff  <blp@gnu.org>
218
219         * automake.mk: Add heap.c, heap.h to sources.
220
221         * heap.c: New file.
222
223         * heap.h: New file.
224
225 Sun Dec 10 13:54:03 2006  Ben Pfaff  <blp@gnu.org>
226
227         * str.c (ss_tokenize): Skip the first delimiter character
228         following the token.  Otherwise, changing delimiters from token to
229         token can't have a sensible effect, because we'll get the previous
230         delimiter as part of the next token.
231         (ss_match_string): New function.
232
233 Sat Dec  9 18:48:55 2006  Ben Pfaff  <blp@gnu.org>
234
235         * misc.h (macro range): Removed, as it was unused.
236
237 Sat Dec  9 07:19:01 WST 2006 John Darrington <john@darrington.wattle.id.au>
238
239         * array.c: Removed gratuitous #include
240
241 Thu Dec  7 20:33:23 WST 2006 John Darrington <john@darrington.wattle.id.au>
242
243         * getl.c getl.h : Changed signature of create function to take a 
244         string indicating the initial include path.
245
246 Sun Dec  3 11:36:10 2006  Ben Pfaff  <blp@gnu.org>
247
248         * str.h (SS_LITERAL_INITIALIZER): Cast the string literal to "char
249         *".  This normally does nothing but when GCC's -Wwrite-strings is
250         used it fixes a warning that otherwise can't be avoided.
251
252 Sun Dec  3 11:35:35 2006  Ben Pfaff  <blp@gnu.org>
253
254         * str.c (ss_alloc_substring_pool): New function.
255         (ss_alloc_uninit_pool) New function.
256
257 Sun Dec  3 11:28:06 2006  Ben Pfaff  <blp@gnu.org>
258
259         * getl.h: (enum getl_syntax) New enumeration to distinguish
260         between "batch" and "interactive" in a clearer way than a bool.
261         (struct getl_interface) Add an arg to "read" to return the
262         intended syntax mode.  Add an arg to "filter" to specify the
263         syntax mode of the line to filter.
264
265         * getl.c (do_read_line): Instead of returning the syntax type of
266         the line read based on whether the source itself is interactive,
267         return it based on whether the line itself should be treated as
268         having batch or interactive syntax.  Also, adapt interface to the
269         new interfaces of lex_init() and getl_interface.
270
271 Wed Nov 29 19:35:44 WST 2006 John Darrington <john@darrington.wattle.id.au>
272
273         * getl.c getl.h: New files. Created interface from base of 
274         language/line-buffer.[ch]
275
276         * msg-locator.c msg-locator.h: New files. Moved from
277         language/line-buffer.[ch]
278
279 Fri Nov 24 17:27:00 2006  Ben Pfaff  <blp@gnu.org>
280
281         * misc.h: (min) Removed.  All references updated to use MIN, from
282         minmax.h provided by gnulib.
283         (max) Ditto (for MAX).
284
285 Sun Nov 19 09:22:26 2006  Ben Pfaff  <blp@gnu.org>
286
287         * str.c (ss_get_long): New function.
288         (ss_compare_case) Ditto.
289         (ss_equals) Ditto.
290         (ss_equals_case) Ditto.
291
292 Tue Oct 31 19:28:19 2006  Ben Pfaff  <blp@gnu.org>
293
294         * str.h: [!HAVE_STRCHR] Drop compatibility code, because now we
295         assume a C89 compliant library.  (Gnulib makes this assumption so
296         we might as well too.)
297         [!HAVE_STRRCHR] Ditto.
298
299 Thu Oct 26 20:19:50 2006  Ben Pfaff  <blp@gnu.org>
300
301         * automake.mk: Add the new files.
302
303         * legacy-encoding.c: New file.
304
305         * legacy-encoding.h: New file.
306
307         * float-format.c: New file.
308
309         * float-format.h: New file.
310
311         * integer-format.c: New file.
312
313         * integer-format.h: New file.
314
315 Sun Oct 15 09:49:50 WST 2006 John Darrington <john@darrington.wattle.id.au>
316
317         * hash.c hash.h: Added hsh_create_pool, a hash which uses a pool
318         for its memory allocation.
319
320 Mon Jul 31 15:49:46 2006  Ben Pfaff  <blp@gnu.org>
321
322         * compiler.h: (macro CONST_FUNCTION) New macro.
323         (macro PURE_FUNCTION) New macro.
324
325 Sun Jul 16 21:07:35 2006  Ben Pfaff  <blp@gnu.org>
326
327         * message.c: (static int messages_disabled) New variable.
328         (msg_emit) Don't emit the message if messages are disabled.
329         (msg_disable) New function.
330         (msg_enable) New function.
331
332         * str.c: (free_string) New function.
333         (ds_register_pool) New function.
334         (ds_unregister_pool) New function.
335         (ds_set_length) New function.
336
337 Mon Jul 10 17:26:58 WST 2006 John Darrington <john@darrington.wattle.id.au>
338
339         * llx.c: #included compiler.h and removed explicit preprocessor cruft.
340
341 Fri Jul  7 20:01:26 2006  Ben Pfaff  <blp@gnu.org>
342
343         * automake.mk: (src_libpspp_libpspp_a_SOURCES) Add assertion.h.
344         
345         * assertion.h: New file.  Replaced usage of assert(0) and abort()
346         with NOT_REACHED() from this file throughout the source tree.
347
348         * message.c: (request_bug_report_and_abort) Revise message printed
349         to include request to include lines above the message, which
350         should include an assertion failure message in many cases.
351         (msg_assert_fail) Removed.
352
353         * message.h: (assert) Removed.
354         (request_bug_report_and_abort) Mark NO_RETURN.
355
356 Mon Jul  3 09:36:42 WST 2006 John Darrington <john@darrington.wattle.id.au>
357
358         * i18n.c: Made character conversion tolerant of failure to create the 
359         necessary iconv structs.
360
361 Sat Jul  1 15:32:54 2006  Ben Pfaff  <blp@gnu.org>
362
363         * automake.mk: (src_libpspp_libpspp_a_SOURCES) Add new files.
364
365         * ll.c: New file.
366
367         * ll.h: New file.
368
369         * llx.c: New file.
370
371         * llx.h: New file.
372
373 Sun Jun 25 22:35:28 2006  Ben Pfaff  <blp@gnu.org>
374
375         Optimize rehashing: we know that none of the entries in the hash
376         table are equal, so we need not compare them to each other during
377         rehashing.
378         
379         * hash.c: (locate_empty_entry) New function.
380         (rehash) Use locate_empty_entry() instead of
381         locate_matching_entry().
382
383 Fri Jun  9 14:03:29 2006  Ben Pfaff  <blp@gnu.org>
384
385         Reform string library.
386         
387         * str.c (ss_empty): New function.  Replaces some uses of ls_init()
388         or ls_null().
389         (ss_cstr) New function.  Replaces some uses of ls_init().
390         (ss_buffer) New function.  Replaces some uses of ls_init().
391         (ss_substr) New function.
392         (ss_head) New function.
393         (ss_tail) New function.
394         (ss_alloc_substring) New function.  Replaces use of ls_create().
395         (ss_alloc_uninit) New function.
396         (ss_dealloc) New function.  Replaces use of ls_destroy().
397         (ss_truncate) New function.
398         (ss_rtrim) New function.
399         (ss_ltrim) New function.
400         (ss_trim) New function.
401         (ss_chomp) New function.
402         (ss_separate) New function.
403         (ss_tokenize) New function.
404         (ss_advance) New function.
405         (ds_create) Renamed ds_init_cstr().  Updated all callers.
406         (ss_match_char) New function.
407         (ss_get_char) New function.
408         (ss_get_until) New function.
409         (ss_get_chars) New function.
410         (ss_is_empty) New function.
411         (ss_length) New function.  Replaces ls_length().
412         (ss_data) New function.  Replaces many uses of ls_c_str().
413         (ss_end) New function.  Replaces ls_end().
414         (ss_at) New function.
415         (ss_first) New function.
416         (ss_last) New function.
417         (ss_span) New function.
418         (ss_cspan) New function.
419         (ss_compare) New function.
420         (ss_pointer_to_position) New function.
421         (ss_xstrdup) New function.
422         (ds_init) Renamed ds_init_empty().  All callers updated.
423         (ds_init_string) New function.
424         (ds_init_substring) Changed interface to take a struct substring.
425         Updated all callers.
426         (ds_init_cstr) New function.  Replaces ds_create().  All callers
427         updated.
428         (ds_assign_substring) Changed interface to take a struct
429         substring.  Updated all callers.
430         (ds_assign_buffer) Removed.  Changed all callers to use
431         ds_assign_substring().
432         (ds_assign_c_str) Renamed ds_assign_cstr().  All callers updated.
433         (ds_ss) New function.
434         (ds_substr) New function.
435         (ds_head) New function.
436         (ds_tail) New function.
437         (ds_rtrim) New function.  Replaces ds_rtrim_spaces().  All callers
438         updated.
439         (ds_ltrim) New function.  Replaces ds_ltrim_spaces().  All callers
440         updated.
441         (ds_trim) New function.  Replaces ds_trim_spaces().  All callers
442         updated.
443         (ds_rtrim_spaces) Removed.
444         (ds_ltrim_spaces) Removed.
445         (ds_trim_spaces) Removed.
446         (ds_separate) Changed interface to use substrings.  All callers
447         updated.
448         (ds_tokenize) Changed interface to use substrings.  All callers
449         updated.
450         (ds_c_str) Renamed ds_cstr().  All callers updated.
451         (ds_span) Changed interface to use substring for SKIP_SET and
452         dropped OFS.  All callers updated.
453         (ds_cspan) Changed interface to use substring for STOP_SET and
454         dropped OFS.  All callers updated.
455         (ds_find_char) New function.
456         (ds_compare) New function.
457         (ds_pointer_to_position) New function.
458         (ds_xstrdup) New function.  Replaced all users of
459         xstrdup(ds_c_str(s)) by a call to this function.
460         (ds_gets) Renamed ds_read_line().  All callers updated.
461         (ds_get_config_line) Renamed ds_read_config_line().  All callers
462         updated.
463         (ds_puts) Renamed ds_put_cstr().  All callers updated.
464         (ds_put_substring) New function.  Replaces ds_concat().  All
465         callers updated.
466         (ds_concat) Removed.
467         (ds_append_uninit) Renamed ds_put_uninit().  All callers updated.
468         (ds_printf) Renamed ds_put_format().  All callers updated.
469         (ds_vprintf) Renamed ds_put_vformat().  All callers updated.
470         (ds_putc) Renamed ds_put_char().  All callers updated.
471         (ds_putc_multiple) Renamed ds_put_char_multiple().  All callers
472         updated.
473         (ls_create) Removed.  Replaced by ss_alloc_substring().
474         (ls_create_buffer) Removed.  Replaced by ss_alloc_substring().
475         (ls_init) Removed.  Replaced by ss_buffer().
476         (ls_shallow_copy) Removed.  Just use assignment.
477         (ls_destroy) Removed.  Replaced by ss_dealloc().
478         (ls_null) Removed.
479         (ls_null_p) Removed.
480         (ls_empty_p) Removed.  Replaced by ss_is_empty().
481         (ls_c_str) Removed.
482         (ls_end) Removed.  Replaced by ss_end().
483
484         * str.h (struct fixed_string): Renamed struct substring, updated
485         all users.
486         (CC_SPACES) New macro.
487         (CC_DIGITS) Ditto.
488         (CC_XDIGITS) Ditto.
489         (CC_LETTERS) Ditto.
490         (CC_ALNUM) Ditto.
491         (SS_EMPTY_INITIALIZER) Ditto.
492         (SS_LITERAL_INITIALIZER) Ditto.
493         (struct string) Removed string, length members.  Add substring
494         member.
495         (DS_INITIALIZER) Rename DS_EMPTY_INITIALIZER.
496
497 Tue May 30 19:45:12 WST 2006 John Darrington <john@darrington.wattle.id.au>
498
499         * i18n.c i18n.h: New files.
500
501 Tue May 16 06:50:35 2006  Ben Pfaff  <blp@gnu.org>
502
503         * automake.mk (src/libpspp/version.c): Removed groff_font_path,
504         which is no longer used.
505
506         * message.c (request_bug_report_and_abort): Don't print
507         groff_font_path, which no longer exists.
508
509         * version.h (locale_dir): Removed groff_font_path.
510
511 Sun May 14 22:06:53 2006  Ben Pfaff  <blp@gnu.org>
512
513         * str.c (spprintf): Moved definition of spprintf() here, from
514         str.h.
515
516         * str.h: (nsprintf) Removed.  Changed all users to use sprintf()
517         instead.
518         (nvsprintf) Removed.  Changed all users to use vsprintf() instead.
519
520 Sun May 14 20:52:20 2006  Ben Pfaff  <blp@gnu.org>
521
522         * str.c (ds_init): Remove `capacity' argument and just initialize
523         the string to a capacity of zero.  Updated all callers.
524
525 Tue May  9 09:56:57 2006  Ben Pfaff  <blp@gnu.org>
526
527         * va_copy.h: Removed.  Now use va_copy() provided by gnulib
528         instead.
529
530         * automake.mk: (src_libpspp_libpspp_a_SOURCES) Removed va_copy.h.
531
532 Sun May  7 18:17:32 2006  Ben Pfaff  <blp@gnu.org>
533
534         * pool.c (pool_vasprintf): New function.
535         (pool_asprintf) New function.
536
537 Sun May  7 17:09:54 2006  Ben Pfaff  <blp@gnu.org>
538
539         * compiler.h: (macro WARN_UNUSED_RESULT) New macro.
540
541 Sun May  7 14:32:25 2006  Ben Pfaff  <blp@gnu.org>
542
543         * va_copy.h: New header.
544
545         * str.c: Use header instead of inlining va_copy() macro
546         implementation.
547
548 Sun May  7 10:06:29 WST 2006 John Darrington <john@darrington.wattle.id.au>
549
550         * array.c array.h: Constness of sort.
551
552 Thu May  4 18:01:37 WST 2006 John Darrington <john@darrington.wattle.id.au>
553
554         * message.c message.h: Added functions to create and copy a msg.
555
556 Tue May  2 15:41:50 2006  Ben Pfaff  <blp@gnu.org>
557
558         * str.c (ds_append_uninit): No need to add 1 to arg passed to
559         ds_extend(), because the argument does not include space for a
560         null terminator.  Also, fix warning.
561
562 Tue Apr 25 11:07:19 2006  Ben Pfaff  <blp@gnu.org>
563
564         Finish reforming error message support.  In this phase, move
565         message.c into libpspp.
566         
567         * message.c: Move here from src/.  Also remove a few unneeded
568         headers.
569
570         * automake.mk (src_libpspp_libpspp_a_SOURCES): Add message.c. 
571
572 Tue Apr 25 10:54:44 2006  Ben Pfaff  <blp@gnu.org>
573
574         Continue reforming error message support.  In this phase, drop
575         actual message printing from core code, substituting a callback,
576         and add the callback to each UI.  Also, move verbose_msg() into
577         its own module.
578
579         * automake.mk (src_libpspp_libpspp_a_SOURCES): Added
580         verbose-msg.c, verbose-msg.h.
581
582         * verbose-msg.c: New file.
583
584         * verbose-msg.h: New file.
585
586 Mon Apr 24 17:26:47 2006  Ben Pfaff  <blp@gnu.org>
587
588         Continue reforming error message support.  In this phase, rename
589         all the message functions and types to start with "msg", except
590         for the ones that will be moving to other modules anyway.
591
592         All references to the identifiers below were updated likewise.
593         
594         * message.h: (enum file_locator) Renamed `enum msg_locator'.
595         (struct error) Renamed `struct msg'.
596         (err_assert_fail) Renamed msg_assert_fail().
597
598 Sun Apr 23 22:07:06 2006  Ben Pfaff  <blp@gnu.org>
599
600         Continue reforming error message support.  In this phase, get rid
601         of message "titles" and put the message text in `struct error'.
602         Now `struct error' encapsulates a message more properly.
603         
604         * message.h: (struct error) Remove `title' member.  Add `text'
605         member.
606         
607 Sun Apr 16 20:43:35 2006  Ben Pfaff  <blp@gnu.org>
608
609         Continue reforming error message support.  In this phase, we
610         divide the classification of messages along "category" and
611         "severity" axes.
612
613         * message.h: (enum msg_class) Named this set of enumerations.
614         (enum msg_category) New enum: MSG_GENERAL, MSG_SYNTAX, MSG_DATA.
615         (enum msg_severity) New enum: MSG_ERROR, MSG_WARNING, MSG_NOTE.
616         (msg_class_to_category) New inline function.
617         (msg_class_to_severity) New inline function.
618         (msg_class_from_category_and_severity) New inline function.
619         (struct error) Removed `class' member, added `category',
620         `severity'.  Updated all users of this struct to use the new
621         members.
622
623 Sun Apr 16 20:33:19 2006  Ben Pfaff  <blp@gnu.org>
624
625         * str.c (ds_vprintf): Don't try to write into the string if it is
626         null.
627
628 Sun Apr 16 18:52:41 2006  Ben Pfaff  <blp@gnu.org>
629
630         GNU standards require "file name" instead of "filename" in
631         documentation.  It's nice for our code to follow the convention
632         too.
633         
634         * message.h: (struct file_locator) Rename filename member to
635         file_name.  Updated all references.
636
637 Sun Apr 16 16:05:43 2006  Ben Pfaff  <blp@gnu.org>
638
639         Continue reforming error message support.  In this phase, we get
640         rid of VM() and the other msg() support for "verbosity", replacing
641         it by a new function verbose_msg().
642
643         * message.h: (enum ERR_CLASS_COUNT) Renamed ERR_CLASS_CNT.
644         (enum ERR_CLASS_MASK) Removed.
645         (enum ERR_VERBOSITY_SHIFT) Removed.
646         (enum ERR_VERBOSITY_MASK) Removed.
647         (macro VM) Removed.
648
649 Sun Apr 16 11:48:07 2006  Ben Pfaff  <blp@gnu.org>
650
651         Start reforming error message support.  In this phase, we get rid
652         of "installation errors" and change all uses of msg() in the
653         output drivers to uses of error() or error_at_line().
654
655         * message.h: Remove IE, IS enums.
656
657 Mon Apr  3 11:10:21 2006  Ben Pfaff  <blp@gnu.org>
658
659         * str.c: (ds_separate) Change interface for cleanliness and
660         consistency with ds_tokenize(), and rewrite to shorten and
661         simplify.  Updated all callers.
662         (ds_tokenize) New function.
663
664 Fri Mar 31 10:38:46 2006  Ben Pfaff  <blp@gnu.org>
665
666         Add freaderror() analogous to fwriteerror() in gnulib.
667
668         * freaderror.c: New file.
669
670         * freaderror.h: New file.
671
672 Thu Mar 30 16:15:37 2006  Ben Pfaff  <blp@gnu.org>
673
674         * str.c: (ds_create) Adjust capacity selection.
675         (ds_init) Use MAX macro for clarity.
676         (ds_create_substr) Rewrote.
677         (ds_replace) Renamed ds_assign_c_str(), reimplemented.  Changed
678         all callers to use a ds_assign_*() function.
679         (ds_init_substring) New function.
680         (ds_assign_string) New function.
681         (ds_assign_substring) New function.
682         (ds_assign_buffer) New function.
683         (ds_assign_c_str) New function.
684         (ds_truncate) Rewrote for clarity.
685         (ds_rpad) Reimplement in terms of ds_putc_multiple().
686         (ds_ltrim_spaces) Reimplement.
687         (ds_trim_spaces) New function.
688         (ds_separate) New function.
689         (ds_c_str) Make tolerant of null pointer, allowing static
690         initialization of strings.
691         (ds_find) Rename ds_span(), change interface.
692         (ds_n_find) Rename ds_cspan(), change interface.
693         (ds_at) New function.
694         (ds_first) Reimplement in terms of ds_at().
695         (remove_comment) New function.
696         (ds_get_config_line) Reimplement in terms of other functions.
697         Change type of LINE_NUMBER parameter.  Updated all callers.
698         (ds_vprintf) Modify for clarity.
699         (ds_putc) Better to be safe than sorry.
700         (ds_putc_multiple) New function.
701
702         * str.h: (struct string) Reorder members.
703         (macro DS_INITIALIZER) New macro that can be used to initialize a
704         string (as empty).
705         (ds_c_str) Remove inline version.
706
707 Tue Mar 28 13:49:11 WST 2006 John Darrington <john@darrington.wattle.id.au>
708
709         * str.[ch]: New functions ds_create_substr, ds_find, ds_n_find, 
710         ds_ltrim_spaces
711
712 Sat Mar  4 12:59:01 2006  Ben Pfaff  <blp@gnu.org>
713
714         * compiler.h: New file.
715
716 Sat Mar  4 11:55:16 2006  Ben Pfaff  <blp@gnu.org>
717
718         * str.h: Now assume that sprintf() returns the correct value.
719         Always implement spprintf as a static inline function.  Change
720         nsprintf, nvsprintf to simple macros that call sprintf, vsprintf.
721
722         * str.c: Remove spprintf, nsprintf, nvsprintf conditional
723         definitions.
724
725 Thu Mar  2 08:40:33 WST 2006 John Darrington <john@darrington.wattle.id.au>
726         
727         * Moved files from src directory