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