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