+Sun Nov 19 09:22:26 2006 Ben Pfaff <blp@gnu.org>
+
+ * str.c (ss_get_long): New function.
+ (ss_compare_case) Ditto.
+ (ss_equals) Ditto.
+ (ss_equals_case) Ditto.
+
+Tue Oct 31 19:28:19 2006 Ben Pfaff <blp@gnu.org>
+
+ * str.h: [!HAVE_STRCHR] Drop compatibility code, because now we
+ assume a C89 compliant library. (Gnulib makes this assumption so
+ we might as well too.)
+ [!HAVE_STRRCHR] Ditto.
+
+Thu Oct 26 20:19:50 2006 Ben Pfaff <blp@gnu.org>
+
+ * automake.mk: Add the new files.
+
+ * legacy-encoding.c: New file.
+
+ * legacy-encoding.h: New file.
+
+ * float-format.c: New file.
+
+ * float-format.h: New file.
+
+ * integer-format.c: New file.
+
+ * integer-format.h: New file.
+
+Sun Oct 15 09:49:50 WST 2006 John Darrington <john@darrington.wattle.id.au>
+
+ * hash.c hash.h: Added hsh_create_pool, a hash which uses a pool
+ for its memory allocation.
+
+Mon Jul 31 15:49:46 2006 Ben Pfaff <blp@gnu.org>
+
+ * compiler.h: (macro CONST_FUNCTION) New macro.
+ (macro PURE_FUNCTION) New macro.
+
+Sun Jul 16 21:07:35 2006 Ben Pfaff <blp@gnu.org>
+
+ * message.c: (static int messages_disabled) New variable.
+ (msg_emit) Don't emit the message if messages are disabled.
+ (msg_disable) New function.
+ (msg_enable) New function.
+
+ * str.c: (free_string) New function.
+ (ds_register_pool) New function.
+ (ds_unregister_pool) New function.
+ (ds_set_length) New function.
+
+Mon Jul 10 17:26:58 WST 2006 John Darrington <john@darrington.wattle.id.au>
+
+ * llx.c: #included compiler.h and removed explicit preprocessor cruft.
+
+Fri Jul 7 20:01:26 2006 Ben Pfaff <blp@gnu.org>
+
+ * automake.mk: (src_libpspp_libpspp_a_SOURCES) Add assertion.h.
+
+ * assertion.h: New file. Replaced usage of assert(0) and abort()
+ with NOT_REACHED() from this file throughout the source tree.
+
+ * message.c: (request_bug_report_and_abort) Revise message printed
+ to include request to include lines above the message, which
+ should include an assertion failure message in many cases.
+ (msg_assert_fail) Removed.
+
+ * message.h: (assert) Removed.
+ (request_bug_report_and_abort) Mark NO_RETURN.
+
+Mon Jul 3 09:36:42 WST 2006 John Darrington <john@darrington.wattle.id.au>
+
+ * i18n.c: Made character conversion tolerant of failure to create the
+ necessary iconv structs.
+
+Sat Jul 1 15:32:54 2006 Ben Pfaff <blp@gnu.org>
+
+ * automake.mk: (src_libpspp_libpspp_a_SOURCES) Add new files.
+
+ * ll.c: New file.
+
+ * ll.h: New file.
+
+ * llx.c: New file.
+
+ * llx.h: New file.
+
+Sun Jun 25 22:35:28 2006 Ben Pfaff <blp@gnu.org>
+
+ Optimize rehashing: we know that none of the entries in the hash
+ table are equal, so we need not compare them to each other during
+ rehashing.
+
+ * hash.c: (locate_empty_entry) New function.
+ (rehash) Use locate_empty_entry() instead of
+ locate_matching_entry().
+
+Fri Jun 9 14:03:29 2006 Ben Pfaff <blp@gnu.org>
+
+ Reform string library.
+
+ * str.c (ss_empty): New function. Replaces some uses of ls_init()
+ or ls_null().
+ (ss_cstr) New function. Replaces some uses of ls_init().
+ (ss_buffer) New function. Replaces some uses of ls_init().
+ (ss_substr) New function.
+ (ss_head) New function.
+ (ss_tail) New function.
+ (ss_alloc_substring) New function. Replaces use of ls_create().
+ (ss_alloc_uninit) New function.
+ (ss_dealloc) New function. Replaces use of ls_destroy().
+ (ss_truncate) New function.
+ (ss_rtrim) New function.
+ (ss_ltrim) New function.
+ (ss_trim) New function.
+ (ss_chomp) New function.
+ (ss_separate) New function.
+ (ss_tokenize) New function.
+ (ss_advance) New function.
+ (ds_create) Renamed ds_init_cstr(). Updated all callers.
+ (ss_match_char) New function.
+ (ss_get_char) New function.
+ (ss_get_until) New function.
+ (ss_get_chars) New function.
+ (ss_is_empty) New function.
+ (ss_length) New function. Replaces ls_length().
+ (ss_data) New function. Replaces many uses of ls_c_str().
+ (ss_end) New function. Replaces ls_end().
+ (ss_at) New function.
+ (ss_first) New function.
+ (ss_last) New function.
+ (ss_span) New function.
+ (ss_cspan) New function.
+ (ss_compare) New function.
+ (ss_pointer_to_position) New function.
+ (ss_xstrdup) New function.
+ (ds_init) Renamed ds_init_empty(). All callers updated.
+ (ds_init_string) New function.
+ (ds_init_substring) Changed interface to take a struct substring.
+ Updated all callers.
+ (ds_init_cstr) New function. Replaces ds_create(). All callers
+ updated.
+ (ds_assign_substring) Changed interface to take a struct
+ substring. Updated all callers.
+ (ds_assign_buffer) Removed. Changed all callers to use
+ ds_assign_substring().
+ (ds_assign_c_str) Renamed ds_assign_cstr(). All callers updated.
+ (ds_ss) New function.
+ (ds_substr) New function.
+ (ds_head) New function.
+ (ds_tail) New function.
+ (ds_rtrim) New function. Replaces ds_rtrim_spaces(). All callers
+ updated.
+ (ds_ltrim) New function. Replaces ds_ltrim_spaces(). All callers
+ updated.
+ (ds_trim) New function. Replaces ds_trim_spaces(). All callers
+ updated.
+ (ds_rtrim_spaces) Removed.
+ (ds_ltrim_spaces) Removed.
+ (ds_trim_spaces) Removed.
+ (ds_separate) Changed interface to use substrings. All callers
+ updated.
+ (ds_tokenize) Changed interface to use substrings. All callers
+ updated.
+ (ds_c_str) Renamed ds_cstr(). All callers updated.
+ (ds_span) Changed interface to use substring for SKIP_SET and
+ dropped OFS. All callers updated.
+ (ds_cspan) Changed interface to use substring for STOP_SET and
+ dropped OFS. All callers updated.
+ (ds_find_char) New function.
+ (ds_compare) New function.
+ (ds_pointer_to_position) New function.
+ (ds_xstrdup) New function. Replaced all users of
+ xstrdup(ds_c_str(s)) by a call to this function.
+ (ds_gets) Renamed ds_read_line(). All callers updated.
+ (ds_get_config_line) Renamed ds_read_config_line(). All callers
+ updated.
+ (ds_puts) Renamed ds_put_cstr(). All callers updated.
+ (ds_put_substring) New function. Replaces ds_concat(). All
+ callers updated.
+ (ds_concat) Removed.
+ (ds_append_uninit) Renamed ds_put_uninit(). All callers updated.
+ (ds_printf) Renamed ds_put_format(). All callers updated.
+ (ds_vprintf) Renamed ds_put_vformat(). All callers updated.
+ (ds_putc) Renamed ds_put_char(). All callers updated.
+ (ds_putc_multiple) Renamed ds_put_char_multiple(). All callers
+ updated.
+ (ls_create) Removed. Replaced by ss_alloc_substring().
+ (ls_create_buffer) Removed. Replaced by ss_alloc_substring().
+ (ls_init) Removed. Replaced by ss_buffer().
+ (ls_shallow_copy) Removed. Just use assignment.
+ (ls_destroy) Removed. Replaced by ss_dealloc().
+ (ls_null) Removed.
+ (ls_null_p) Removed.
+ (ls_empty_p) Removed. Replaced by ss_is_empty().
+ (ls_c_str) Removed.
+ (ls_end) Removed. Replaced by ss_end().
+
+ * str.h (struct fixed_string): Renamed struct substring, updated
+ all users.
+ (CC_SPACES) New macro.
+ (CC_DIGITS) Ditto.
+ (CC_XDIGITS) Ditto.
+ (CC_LETTERS) Ditto.
+ (CC_ALNUM) Ditto.
+ (SS_EMPTY_INITIALIZER) Ditto.
+ (SS_LITERAL_INITIALIZER) Ditto.
+ (struct string) Removed string, length members. Add substring
+ member.
+ (DS_INITIALIZER) Rename DS_EMPTY_INITIALIZER.
+
+Tue May 30 19:45:12 WST 2006 John Darrington <john@darrington.wattle.id.au>
+
+ * i18n.c i18n.h: New files.
+
+Tue May 16 06:50:35 2006 Ben Pfaff <blp@gnu.org>
+
+ * automake.mk (src/libpspp/version.c): Removed groff_font_path,
+ which is no longer used.
+
+ * message.c (request_bug_report_and_abort): Don't print
+ groff_font_path, which no longer exists.
+
+ * version.h (locale_dir): Removed groff_font_path.
+
+Sun May 14 22:06:53 2006 Ben Pfaff <blp@gnu.org>
+
+ * str.c (spprintf): Moved definition of spprintf() here, from
+ str.h.
+
+ * str.h: (nsprintf) Removed. Changed all users to use sprintf()
+ instead.
+ (nvsprintf) Removed. Changed all users to use vsprintf() instead.
+
+Sun May 14 20:52:20 2006 Ben Pfaff <blp@gnu.org>
+
+ * str.c (ds_init): Remove `capacity' argument and just initialize
+ the string to a capacity of zero. Updated all callers.
+
+Tue May 9 09:56:57 2006 Ben Pfaff <blp@gnu.org>
+
+ * va_copy.h: Removed. Now use va_copy() provided by gnulib
+ instead.
+
+ * automake.mk: (src_libpspp_libpspp_a_SOURCES) Removed va_copy.h.
+
+Sun May 7 18:17:32 2006 Ben Pfaff <blp@gnu.org>
+
+ * pool.c (pool_vasprintf): New function.
+ (pool_asprintf) New function.
+
+Sun May 7 17:09:54 2006 Ben Pfaff <blp@gnu.org>
+
+ * compiler.h: (macro WARN_UNUSED_RESULT) New macro.
+
+Sun May 7 14:32:25 2006 Ben Pfaff <blp@gnu.org>
+
+ * va_copy.h: New header.
+
+ * str.c: Use header instead of inlining va_copy() macro
+ implementation.
+
+Sun May 7 10:06:29 WST 2006 John Darrington <john@darrington.wattle.id.au>
+
+ * array.c array.h: Constness of sort.
+