(U-0002195D): Add `ideographic-structure'; add `sound@ja/on'; add
[chise/xemacs-chise.git.1] / src / ChangeLog
index 1481e06..764402a 100644 (file)
@@ -1,3 +1,539 @@
+2017-06-08  MORIOKA Tomohiko  <tomo.git@chise.org>
+
+       * char-ucs.h (MAX_LEADING_BYTE_PRIVATE): Use 1024 instead of 512.
+
+2016-11-17  MORIOKA Tomohiko  <tomo.git@chise.org>
+
+       * chartab.h (USE_CONCORD_OBJECT_SYSTEM): New macro; use it instead
+       of `HAVE_LIBCHISE' to detect to use Concord Object System.
+       (USE_CONCORD_OBJECT_SYSTEM_TO_COMPOSE): New macro.
+
+       * text-coding.c: Use `USE_CONCORD_OBJECT_SYSTEM_TO_COMPOSE'
+       instead of `HAVE_LIBCHISE' to detect to use Concord Object System
+       for character composing.
+
+       * mule-charset.c (charset_code_point): Use
+       `USE_CONCORD_OBJECT_SYSTEM' instead of `HAVE_LIBCHISE' to detect
+       to use Concord Object System.
+
+2016-11-16  MORIOKA Tomohiko  <tomo.git@chise.org>
+
+       * chartab.c: Use `USE_CONCORD_OBJECT_SYSTEM' instead of
+       `HAVE_LIBCHISE' to detect to use Concord Object System.
+
+2016-07-23  MORIOKA Tomohiko  <tomo.git@chise.org>
+
+       * text-coding.c (Fmake_coding_system): Accept property
+       `charset-g3' for CODESYS_UTF8.
+       (char_encode_utf8): Refer `charset-g3'.
+
+2015-11-25  MORIOKA Tomohiko  <tomo.git@chise.org>
+
+       * chartab.c (Fchar_feature): When argument ATTRIBUTE is a CCS and
+       whose name is =>FOO, don't try to find =FOO; fix problem when
+       argument ATTRIBUTE is ==>FOO.
+
+2013-05-19  MORIOKA Tomohiko  <tomo.git@chise.org>
+
+       * text-coding.c (COMPOSE_ADD_CHAR): Use
+       `concord_object_get_attribute' instead of
+       `concord_object_get_feature_value'.
+
+       * chartab.c (char_table_get_db_cos): Use
+       `concord_object_get_attribute' instead of
+       `concord_object_get_feature_value'.
+
+2013-05-02  MORIOKA Tomohiko  <tomo.git@chise.org>
+
+       * chartab.h (get_char_id_table_ce): Use
+       `load_char_attribute_maybe_cos' instead of
+       `load_char_attribute_maybe'.
+
+       * chartab.c (load_char_attribute_maybe_cos): Return NULL instead
+       of Qunbound as the default value.
+
+2013-05-01  MORIOKA Tomohiko  <tomo.git@chise.org>
+
+       * chartab.h (load_char_attribute_maybe_cos): New prototype when
+       HAVE_LIBCHISE is defined.
+       (get_char_id_table_ce): New inline function when HAVE_LIBCHISE is
+       defined.
+
+       * mule-charset.c (charset_code_point): Use `get_char_id_table_ce'
+       instead of `get_char_id_table' when HAVE_LIBCHISE is defined.
+       (load_char_decoding_entry_maybe): Don't use
+       `decoding_table_put_char' to avoid GC.
+
+       * text-coding.c (concord_setup_env_maybe): Abolished.
+       (COMPOSE_ADD_CHAR): Use `open_chise_data_source_maybe' instead of
+       `concord_setup_env_maybe'.
+
+2013-05-01  MORIOKA Tomohiko  <tomo.git@chise.org>
+
+       * chartab.c (open_chise_data_source_maybe): New implementation;
+       don't use `build_string' and `Fexpand_file_name' to avoid GC.
+       (char_table_get_db_cos): New function when HAVE_LIBCHISE is
+       defined.
+       (load_char_attribute_maybe_cos): Likewise.
+
+2013-04-23  MORIOKA Tomohiko  <tomo.git@chise.org>
+
+       * text-coding.c (struct decoding_stream): Use COS_object instead
+       of Lisp_Object for `combining_table' if HAVE_LIBCHISE is defined.
+       (reset_decoding_stream): Likewise.
+       (COMPOSE_FLUSH_CHARS): Likewise.
+       (concord_setup_env_maybe): New function.
+       (COMPOSE_ADD_CHAR): Use COS API for `str->combining_table' if
+       HAVE_LIBCHISE is defined.
+
+2013-02-16  MORIOKA Tomohiko  <tomo.git@chise.org>
+
+       * chartab.c (find_char_feature_in_family): New implementation;
+       don't support multiple parents; support non-list mother.
+
+2012-06-11  MORIOKA Tomohiko  <tomo.git@chise.org>
+
+       * text-coding.c (Qenable_decomposition): New variable in XEmacs
+       CHISE.
+       (Fmake_coding_system): Add new property `enable-decomposition' in
+       XEmacs CHISE.
+       (char_encode_utf8): Don't decompose character if
+       CODING_SYSTEM_ENABLE_DECOMPOSITION (str->codesys) is false.
+       (syms_of_file_coding): Add new symbol `enable-decomposition' in
+       XEmacs CHISE.
+       (complex_vars_of_file_coding): Define new coding-system-property
+       `enable-decomposition' in XEmacs CHISE.
+
+       * file-coding.h (struct Lisp_Coding_System): Add
+       `enable_decomposition' in XEmacs CHISE.
+       (CODING_SYSTEM_ENABLE_DECOMPOSITION): New macro in XEmacs CHISE.
+       (XCODING_SYSTEM_ENABLE_DECOMPOSITION): New macro in XEmacs CHISE.
+
+2012-02-17  MORIOKA Tomohiko  <tomo@zinbun.kyoto-u.ac.jp>
+
+       * text-coding.c (DECODE_ADD_UCS_CHAR): Add `static'.
+
+2012-02-11  MORIOKA Tomohiko  <tomo@zinbun.kyoto-u.ac.jp>
+
+       * text-coding.c (DECODE_ADD_UCS_CHAR): Don't use `INLINE_HEADER'.
+
+       * chartab.c (UINT8_DECODE): Don't use `INLINE_HEADER'.
+       (UINT16_DECODE): Ditto.
+
+       * glyphs-eimage.c (png_instantiate):
+       - Use `png_get_image_height (png_ptr, info_ptr)' instead of
+         `info_ptr->height'.
+       - Use `png_get_image_width (png_ptr, info_ptr)' instead of
+         `info_ptr->width'.
+       - Use `png_get_color_type(png_ptr, info_ptr)' instead of
+         `info_ptr->color_type'.
+       - Use `png_get_bit_depth(png_ptr, info_ptr)' instead of
+         `info_ptr->bit_depth'.
+
+2011-07-20  MORIOKA Tomohiko  <tomo@zinbun.kyoto-u.ac.jp>
+
+       * mule-charset.c (charset_code_point): If nil is specified as a
+       feature-value, don't find in mother and return -1.
+
+2011-07-22  MORIOKA Tomohiko  <tomo@zinbun.kyoto-u.ac.jp>
+
+       * chartab.c (Fput_char_attribute): Accept nil as a value of
+       CCS-feature [it means that specified object does not have
+       code-point of the CCS-feature].
+
+2011-06-07  MORIOKA Tomohiko  <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+       * mule-charset.c (complex_vars_of_mule_charset): Use "jisx0208"
+       instead of "jisx0208\\.1990" as the X-registry of `=jis-x0208'.
+
+2011-05-10  MORIOKA Tomohiko  <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+       * text-coding.c (char_encode_as_entity_reference): Don't use
+       `DECODE_CHAR' to detect isolated characters.
+
+       * mule-charset.c (charset_code_point): Change the third argument
+       `defined_only' to `accepted_mode'; `accepted_mode' can be
+       CHAR_ISOLATED_ONLY, CHAR_ALL or CHAR_DEFINED_ONLY.
+
+       * char-ucs.h (CHAR_ISOLATED_ONLY): New macro.
+       (CHAR_ALL): New macro.
+       (CHAR_DEFINED_ONLY): New macro.
+
+2011-03-14  MORIOKA Tomohiko  <tomo@zinbun.kyoto-u.ac.jp>
+
+       * chartab.c (Fchar_feature_base_name_eq): New function when
+       UTF2000 is enabled.
+       (Fput_char_attribute): Use `Fchar_feature_base_name_eq'.
+       (syms_of_chartab): Add new builtin function
+       `char-feature-base-name=' when UTF2000 is enabled.
+
+2011-02-17  MORIOKA Tomohiko  <tomo@zinbun.kyoto-u.ac.jp>
+
+       * text-coding.c (Vdecomposition_feature_list): New variable when
+       UTF2000 is defined.
+       (char_encode_utf8): Refer variable `decomposition-feature-list'
+       instead of `=decomposition' feature.
+       (vars_of_file_coding): Add new variable
+       `decomposition-feature-list' when UTF2000 is defined.
+
+2011-02-16  MORIOKA Tomohiko  <tomo@zinbun.kyoto-u.ac.jp>
+
+       * chartab.c (Fput_char_attribute): Support `=decomposition@FOO' as
+       `=decomposition' feature.
+
+2011-02-12  MORIOKA Tomohiko  <tomo@zinbun.kyoto-u.ac.jp>
+
+       * mule-charset.c (Fmake_charset): Fix problem for 94^n or 96^n
+       coded-charsets with builtin characters.
+
+2011-02-09  MORIOKA Tomohiko  <tomo@zinbun.kyoto-u.ac.jp>
+
+       * text-coding.c (Qrep_decomposition): New extern.
+       (char_encode_utf8): Try to encode as combing sequence (or IVS).
+
+2011-01-04  MORIOKA Tomohiko  <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+       * concord.c (Fconcord_genre_ds): Add "#ifdef HAVE_LIBCHISE" ...
+       "#endif" for code to refer Vchise_system_db_directory.
+
+2010-12-07  MORIOKA Tomohiko  <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+       * concord.c (Fconcord_object_put): Use `member' instead of `memq'.
+       (Fconcord_object_adjoin): New function.
+       (Fconcord_object_adjoinX): New function.
+       (syms_of_concord): Defsubred `Fconcord_object_adjoin' and
+       `Fconcord_object_adjoinX'.
+
+2010-12-07  MORIOKA Tomohiko  <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+       * concord.c:
+       - Include "elconcord.h".
+       - Move EXFUNs for `Fconcord_decode_object', `Fconcord_object_put'
+         and `Fconcord_object_get' to elconcord.h.
+       (Lisp_CONCORD_DS): Moved to elconcord.h.
+       (struct Lisp_CONCORD_DS): Ditto.
+       (XCONCORD_DS): Ditto.
+       (XSET_CONCORD_DS): Ditto.
+       (CONCORD_DS_P): Ditto.
+       (CHECK_CONCORD_DS): Ditto.
+       (CONCHECK_CONCORD_DS): Ditto.
+       (Lisp_CONCORD_Object): Ditto.
+       (struct Lisp_CONCORD_Object): Ditto.
+       (XCONCORD_OBJECT): Ditto.
+       (XSET_CONCORD_OBJECT): Ditto.
+       (CONCORD_OBJECT_P): Ditto.
+       (CHECK_CONCORD_OBJECT): Ditto.
+       (CONCHECK_CONCORD_OBJECT): Ditto.
+       (CONCORD_OBJECT_GENRE): Ditto.
+       (CONCORD_OBJECT_ID): Ditto.
+       (XCONCORD_OBJECT_ID): Ditto.
+       (XCONCORD_OBJECT_GENRE): Ditto.
+       (concord_object_equal): New function.
+       (LRECORD_IMPLEMENTATION of "concord_object"): Use
+       `concord_object_equal'.
+
+       * elconcord.h: New file.
+
+2010-12-07  MORIOKA Tomohiko  <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+       * concord.c (print_concord_object): Use readable form even if
+       `print-readably' is nil.
+
+2010-11-19  MORIOKA Tomohiko  <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+       * concord.c (print_concord_object): Don't display location of
+       data-source when `print-readably' is nil.
+
+2010-11-15  MORIOKA Tomohiko  <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+       * concord.c (Fconcord_genre_ds): Use Vchise_system_db_directory as
+       the default location of data-source.
+       (complex_vars_of_concord): Use Vchise_system_db_directory to
+       assign genre `character' and `feature'.
+
+       * chartab.h (Vchise_system_db_directory): New extern when
+       HAVE_CONCORD is defined.
+
+2010-09-15  MORIOKA Tomohiko  <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+       * concord.c: Include <chise.h> if HAVE_LIBCHISE is defined.
+       (Qcharacter): New variable when HAVE_LIBCHISE is defined.
+       (Qfeature): Ditto.
+       (Fconcord_object_genre): New function.
+       (syms_of_concord):
+       - Add new builtin symbols `character' and `feature' when
+         HAVE_LIBCHISE is defined.
+       - Add Add new builtin function `concord-object-genre'.  
+       (complex_vars_of_concord): New function; assign genres `character'
+       and `feature' when HAVE_LIBCHISE is defined.
+
+2010-09-14  MORIOKA Tomohiko  <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+       * emacs.c (main_1): Call `complex_vars_of_concord' when
+       HAVE_CONCORD is defined.
+
+       * symsinit.h (complex_vars_of_concord): New prototype.
+
+2010-07-01  MORIOKA Tomohiko  <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+       * chartab.c (allocate_character): Add `static'.
+
+2010-07-01  MORIOKA Tomohiko  <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+       * chartab.c (allocate_character): New function.
+       (Fdefine_char): Use allocate_character().
+
+2010-06-10  MORIOKA Tomohiko  <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+       * mule.c (vars_of_mule): Update `xemacs-chise-version' to 0.25
+       (Ōkawara).
+
+2010-03-29  MORIOKA Tomohiko  <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+       * chartab.c (save_uint8_byte_table): Fixed problem when a property
+       is unloaded.
+       (save_uint16_byte_table): Likewise.
+
+2010-02-21  MORIOKA Tomohiko  <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+       * chartab.c (Fchar_feature_property): New function when LIBCHISE
+       is enabled.
+       (Fput_char_feature_property): Likewise.
+       (syms_of_chartab): Add new builtin functions
+       `char-feature-property' and `put-char-feature-property' when
+       LIBCHISE is enabled.
+
+2009-04-04  MORIOKA Tomohiko  <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+       * mule-charset.c (Fmake_charset): Add DOC-string of 'iso-ir and
+       '=>iso-ir.
+       (Fcharset_property): Regard '=>iso-ir as same as `iso_ir.
+
+2009-04-03  MORIOKA Tomohiko  <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+       * mule-charset.c (Qto_iso_ir): New variable for XEmacs CHISE.
+       (make_charset): Add new argument `iso_ir'.
+       (Fmake_charset): Add new property `=>iso-ir' in XEmacs CHISE.
+       (Fmake_reverse_direction_charset): Copy CHARSET_ISO_IR(cs) in
+       XEmacs CHISE.
+       (Fcharset_property): Support `iso-ir' in XEmacs CHISE.
+       (syms_of_mule_charset): Add new builtin symbol `=>iso-ir' in
+       XEmacs CHISE.
+       (complex_vars_of_mule_charset): Specify argument `iso_ir' of
+       function `make_charset'.
+
+       * char-ucs.h (LEADING_BYTE_*): Enclose negative value with ( ).
+       (struct Lisp_Charset): Add new member `iso_ir'.
+       (CHARSET_ISO_IR): New macro.
+
+2009-03-07  MORIOKA Tomohiko  <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+       * mule-charset.c (Fdecode_char): Fix problem when decoding GR
+       code-point by GL charset.
+
+2008-10-08  MORIOKA Tomohiko  <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+       * concord.c (concord_id_validate): New function.
+       (structure_type_create_concord): Use `concord_id_validate' instead
+       of `concord_name_validate' to accept integer and character as =id.
+
+2008-09-27  MORIOKA Tomohiko  <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+       * concord.c (func_for_each_object): Fix bug about GC-protection.
+
+2008-09-03  MORIOKA Tomohiko  <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+       * concord.c (Fconcord_object_put): Check argument FEATURE is a
+       symbol.
+
+2008-09-18  MORIOKA Tomohiko  <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+       * text-coding.c (struct decoding_stream): Add new member
+       `bom_flag' in XEmacs CHISE.
+       (reset_decoding_stream): Ignore U+FEFF in the beginning of stream
+       in XEmacs CHISE.
+
+2008-09-14  MORIOKA Tomohiko  <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+       * mule-charset.c: Move definition of `=jis-x0208@1978' to
+       lisp/mule/mule-conf.el.
+
+2008-09-03  MORIOKA Tomohiko  <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+       * mule-charset.c (Qpartial): New variable in XEmacs CHISE.
+       (make_charset): Add new argument `partial'.
+       (Fmake_charset): Add new property 'partial in XEmacs CHISE.
+       (Fmake_reverse_direction_charset): Modify for `make_charset'.
+       (syms_of_mule_charset): Add new builtin symbol `partial' in XEmacs
+       CHISE.
+       (complex_vars_of_mule_charset): Modify for `make_charset'; specify
+       `=jis-x0208' as a partial coded-charset.
+
+2008-08-06  MORIOKA Tomohiko  <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+       * text-coding.c (decode_add_er_char): Fix problem when a character
+       represented by an entity-reference is not defined.
+
+2008-06-04  MORIOKA Tomohiko  <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+       * char-ucs.h, chartab.c, fns.c, mule-charset.c: Rename Qmap_* to
+       Qrep_*.
+
+2007-09-05  MORIOKA Tomohiko  <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+       * mule.c (vars_of_mule): Update `xemacs-chise-version' to 0.24
+       (Kasagi).
+
+2006-06-29  MORIOKA Tomohiko  <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+       * concord.c (Fconcord_object_put): Add reversed links when FEATURE
+       is a relation feature.
+
+2006-06-28  MORIOKA Tomohiko  <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+       * chartab.c (syms_of_chartab): Define
+       `{<-|->}{subsumptive|denotational}' when HAVE_CONCORD is defined.
+
+       * chartab.h (Q_denotational): New extern when UTF2000 or
+       HAVE_CONCORD is defined.
+       (Q_denotational_from): Likewise.
+       (Q_subsumptive): Likewise.
+       (Q_subsumptive_from): Likewise.
+
+2006-06-27  MORIOKA Tomohiko  <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+       * concord.c (concord_object_put): New function.
+       (Fconcord_object_put): Use `concord_object_put'.
+
+2006-06-01  MORIOKA Tomohiko  <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+       * concord.c (Fconcord_define_object): New function.
+       (syms_of_concord): Add new builtin function
+       `concord-define-object'.
+
+2006-05-09  MORIOKA Tomohiko  <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+       * mule.c (vars_of_mule): Update `xemacs-chise-version' to 0.23
+       (Kamo).
+
+2006-04-25  MORIOKA Tomohiko  <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+       * concord.c: Add EXFUN for Fconcord_object_get.
+       (Vconcord_genre_object_hash_table): New variable.
+       (concord_genre_cache_get_object): New function.
+       (concord_genre_cache_put_object): New function.
+       (Fconcord_make_object): Use object cache; put object-ID into `=id'
+       feature.
+       (Fconcord_object_put): Call `concord_index_sync' after
+       `concord_index_strid_put_obj'.
+       (vars_of_concord): Setup Vconcord_genre_object_hash_table.
+
+2006-04-24  MORIOKA Tomohiko  <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+       * concord.c (Fconcord_decode_object): Do GCPRO for
+       Fconcord_make_object.
+       (func_for_each_object): Likewise; do GCPRO for
+       for_each_object_closure->function.
+       (Fconcord_foreach_object_in_feature): Use GCPRO4 for
+       for_each_object_closure->function, for_each_object_closure->genre,
+       for_each_object_closure->ds and for_each_object_closure->ret.
+       (concord_object_validate): Do GCPRO for Fconcord_make_object.
+
+2006-04-24  MORIOKA Tomohiko  <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+       * concord.c: Add EXFUNs for Fconcord_decode_object and
+       Fconcord_object_put.
+       (Fconcord_make_object): Change order of arguments.
+       (Fconcord_decode_object): Modify for Fconcord_make_object.
+       (func_for_each_object): Likewise.
+       (concord_object_validate): Likewise.
+       (concord_object_instantiate): Use GCPRO2 for `data' and `retval'.
+
+2006-04-24  MORIOKA Tomohiko  <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+       * concord.c (Fconcord_object_put): Setup index for `=FOO' feature.
+
+2006-04-16  MORIOKA Tomohiko  <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+       * concord.c (Fconcord_decode_object): Try to use readable print
+       form as a key of Concord-index.
+       (Fconcord_object_get): Try to use readable print form as an ID of
+       Concord-object.
+       (Fconcord_object_put): Try to use readable print form as an ID of
+       Concord-object and a feature value.
+       (Fconcord_object_spec): Try to use readable print form as an ID of
+       Concord-object.
+
+2006-04-16  MORIOKA Tomohiko  <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+       * concord.c (print_concord_object): Support readable form.
+
+2006-04-14  MORIOKA Tomohiko  <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+       * emacs.c (main_1): Call `structure_type_create_concord' when
+       HAVE_CONCORD is defined.
+
+       * symsinit.h (structure_type_create_concord): New prototype.
+
+       * concord.c (Qconcord_object): New variable.
+       (Qgenre): Likewise.
+       (Q_id): Likewise.
+       (Fconcord_ds_directory): Use <char*> instead of <unsigned char*>
+       for directory.
+       (add_feature_to_list_mapper): Use <char*> instead of <unsigned
+       char*> for genre-name.
+       (Fconcord_feature_list): Likewise.
+       (Fconcord_make_object): Likewise.
+       (Fconcord_decode_object): Likewise; use <char*> instead of
+       <unsigned char*> for feature_name and strid.
+       (Fconcord_object_get): Use <char*> instead of <unsigned char*> for
+       c_obj and feature_name.
+       (Fconcord_object_put): Likewise; use <char*> instead of <unsigned
+       char*> for c_value.
+       (struct closure_for_object_spec): Use <char*> instead of <unsigned
+       char*> for member `object_id'.
+       (add_feature_to_spec_mapper): Use <char*> instead of <unsigned
+       char*> for feature-name.
+       (Fconcord_object_spec): Use <char*> instead of <unsigned char*>
+       for c_obj.
+       (func_for_each_object): Cast to avoid warnings.
+       (Fconcord_foreach_object_in_feature): Use <char*> instead of
+       <unsigned char*> for genre_name and feature_name.
+       (concord_name_validate): New function.
+       (concord_object_validate): Likewise.
+       (concord_object_instantiate): Likewise.
+       (syms_of_concord): Add new builtin symbols `concord-object',
+       `genre' and `=id'.
+       (structure_type_create_concord): New function.
+
+2006-04-10  MORIOKA Tomohiko  <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+       * concord.c (Vconcord_ds_hash_table): New variable.
+       (Vconcord_genre_hash_table): New variable.
+       (Fconcord_open_ds): Use Vconcord_ds_hash_table.
+       (Fconcord_ds_directory): New function.
+       (Fconcord_assign_genre): New function.
+       (Fconcord_genre_directory): New function.
+       (Fconcord_genre_ds): New function.
+       (Fconcord_feature_list): Allow to omit `ds'.
+       (Fconcord_make_object): Likewise.
+       (Fconcord_decode_object): Likewise.
+       (Fconcord_foreach_object_in_feature): Likewise.
+       (syms_of_concord): Add new builtin function Fconcord_ds_directory,
+       Fconcord_assign_genre, Fconcord_genre_directory and
+       Fconcord_genre_ds.
+       (vars_of_concord): Setup Vconcord_ds_hash_table and
+       Vconcord_genre_hash_table.
+
+2006-02-05  MORIOKA Tomohiko  <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+       * concord.c (struct closure_for_each_object): Add new member
+       `ret'.
+       (func_for_each_object): Setup the return value to
+       `for_each_object_closure->ret'.
+       (Fconcord_foreach_object_in_feature): If FUNCTION returns non-nil,
+       returns the value instead of Qt.
+
 2005-12-27  MORIOKA Tomohiko  <tomo@kanji.zinbun.kyoto-u.ac.jp>
 
        * concord.c: New file.
        (Vcharset_thai_tis620): Likewise.
        (Vcharset_katakana_jisx0201): Likewise.
 
+2008-12-28  Vin Shelton  <acs@xemacs.org>
+
+       * XEmacs 21.4.22 is released
+
+2008-12-27  Vin Shelton  <acs@xemacs.org>
+
+       * syswindows.h: Don't define wide character interfaces for Cygwin
+       1.7 and up.
+
+2008-03-05  Dominique Quatravaux  <domq@cpan.org>
+
+       * glyphs-gtk.c: Fixed compilation under gcc 4.x.
+
+2008-11-01  Stephen J. Turnbull  <stephen@xemacs.org>
+
+       * regex.c (re_search_2): Fix at_dot by changing charpos to bytepos.
+       From Julian Bradfield <18654.1143.304851.782755@krk.inf.ed.ac.uk>.
+
+2008-12-25  Vin Shelton  <acs@xemacs.org>
+
+       * mule-ccl.c (ccl_driver): Fix off-by-one error.
+       By Julian Bradfield in
+       <18691.16568.526264.972026@krk.inf.ed.ac.uk>.
+
+       * mule-ccl.c (ccl_driver): 
+
+2007-10-07  Vin Shelton  <acs@xemacs.org>
+
+       * XEmacs 21.4.21 is released
+
+2007-08-14  Marcus Crestani  <crestani@xemacs.org>
+
+       * s/sol2.h: Fix for GCC lossage not needed with SunOS 5.10.
+
+2007-02-17  Stephen J. Turnbull  <stephen@xemacs.org>
+
+       * glyphs-eimage.c (png_instantiate_unwind): Avoid recursion.
+       (png_instantiate): Initialize setjmp_buffer early, and avoid
+       recursive entry to error handler.
+
+2007-06-23  Stephen J. Turnbull  <stephen@xemacs.org>
+
+       * linuxplay.c (linux_play_data_or_file): More 64-bit tweaking, and
+       a typo fix.
+
+2007-05-12  Aidan Kehoe  <kehoea@parhasard.net>
+
+       * event-Xt.c (x_reset_modifier_mapping):
+       * event-gtk.c (gtk_reset_modifier_mapping):
+       Zero out the device's modifier map once we've freed it, to prevent
+       a double free on a re-entrant call. 
+
+2007-05-17  Vin Shelton  <acs@xemacs.org>
+
+       * linuxplay.c (linux_play_data_or_file): Fix playing sound on
+       64-bit linux.  Patch from Hans de Graaff.
+
+2007-05-02  Vin Shelton  <acs@xemacs.org>
+
+       * dumper.c (pdump): Don't close pdump_fd (already closed by
+       fclose() call.  Patch from Steve Higham.
+       * callproc.c (Fold_call_process_internal): Don't close fd1 if it's
+       already closed.  Patch inspired by Steve Higham.
+
+2007-05-01  Vin Shelton  <acs@xemacs.org>
+
+       * nt.c (mswindows_stat): Tie _S_IEXEC permission to read access.
+       (mswindows_fstat): Ditto.
+       * sysfile.h: Under Windows, define X_OK to be the same as R_OK.
+
+2007-02-08  Adrian Aichner  <adrian@xemacs.org>
+
+       * postgresql.c: Update Steve Baur's email address by his request.
+       * postgresql.h: Ditto.
+
+2007-01-04  Vin Shelton  <acs@xemacs.org>
+
+       * fileio.c (check_writable): Check old-style readonly bit only for
+       non-directories.
+
+2006-12-25  Benson I. Margulies  <benson@dchbk.us>
+
+       * src/fileio.c (check_writable): 
+        Cope with the fact that the read-only attribute trumps Windows NTFS
+        ACLS.
+
+
+2006-12-09  Vin Shelton  <acs@xemacs.org>
+
+       * XEmacs 21.4.20 is released
+
+2006-12-08  Nelson Ferreira  <njsf@sxemacs.org>
+
+       * src/fns.c (XMALLOC_OR_ALLOCA,free_malloced_ptr,XMALLOC_UNBIND):
+       relocated the definitions to be used sooner in file.
+       (concat,plists_differ,mapcar1,Fmapconcat,Fmapcar): Use
+       XMALLOC_OR_ALLOCA macro instead of alloca to prevent stack
+       overflow.
+
+2006-11-29  Aidan Kehoe  <kehoea@parhasard.net>
+
+       * sound.c (init_native_sound):
+       Only X11 and GTK devices can possibly not be on the console of the
+       associated machine. Fixes a crash when init_native_sound is called
+       on a msprinter device. 
+
+2006-11-14  Stephen J. Turnbull  <stephen@xemacs.org>
+
+       * buffer.c (buffer-file-name): Document invariant.
+       (buffer-file-truename): Sync wording to buffer-file-name.
+       Thanks to Nelson Ferreira <nelson.ferreira@ieee.org> for report
+       and discussion.
+
+2006-11-19  Benson Margulies  <benson@dchbk.us>
+
+       * fileio.c: Add code to use full Win32 API to check for write
+       access.  Win32 has the general design policy that you aren't
+       supposed to ask this question, since security checks change
+       depending on asynchronous processes.  Nonetheless, there is a way,
+       by acting as if we are a server doing interpretive access
+       control.
+
+2006-07-31  Aidan Kehoe <kehoea@parhasard.net>
+
+       * bytecode.c: Use xnew_array instead of alloca.
+
+2006-07-04  Vin Shelton  <acs@xemacs.org>
+
+       * redisplay-msw.c: Fix tiny, but crucial typo.
+
+2006-06-22  Jerry James  <james@xemacs.org>
+
+       * EmacsShell-sub.c (ChangeManaged):
+       * device-x.c (x_IO_error_handler): Do not dereference d if it is
+       NULL.
+       * dgif_lib.c (DGifCloseFile): Do not dereference GifFile before
+       checking if it is NULL.  Also fix a memory leak.
+       * dialog-x.c (dbox_selection_callback): Ensure f is non-NULL, then
+       dereference it, not the other way around.
+       * dumper.c (pdump_register_object): Fix off-by-one array bounds
+       overflow check.
+       * dumper.c (pdump_register_struct): Ditto.
+       * editfns.c (Ftemp_directory): Don't let a copy from (long) path
+       to (short) warnpath overflow warnpath.
+       * extents.c (detach_all_extents): Call extent_list_delete_all with
+       a non-NULL parameter only.
+       * glyphs-widget.c (widget_query_geometry): Guard against possibly
+       NULL width and height.
+       * input-method-xlib.c (XIM_SetGeometry): Do not dereference f or
+       xic before checking if they are NULL.
+       * keymap.c (where_is_recursive_mapper): Don't throw away the newly
+       allocated array.
+       * md5.c (Fmd5): Check whether Lstream_read encountered an error.
+       * nas.c (Err): Fix a memory leak.
+       * redisplay-gtk.c (gtk_output_display_block): Fix a Dynarr leak.
+       Don't create the buffer if there is nothing to do.
+       * redisplay-msw.c (mswindows_output_display_block): Ditto.
+       * redisplay-output.c (redisplay_output_layout): Ditto.
+       * redisplay-tty.c (tty_output_display_block): Ditto.
+       * redisplay-x.c (x_output_display_block): Ditto.
+       * scrollbar-gtk.c (gtk_free_scrollbar_instance): Do not
+       dereference instance->scrollbar_data if it is NULL.
+       * scrollbar-x.c (x_free_scrollbar_instance): Ditto.
+       * scrollbar-msw.c (mswindows_free_scrollbar_instance): Ditto, but
+       for sb->scrollbar_data.
+       * sound.c (init_native_sound): Avoid a buffer overflow by
+       allocating a buffer with the appropriate size.
+
+2006-05-08  Stephen J. Turnbull  <stephen@xemacs.org>
+
+       * EmacsShell-sub.c (RootGeometryManager):
+       Change garbage to useful messages under DEBUG_GEOMETRY_MANAGEMENT.
+       Based on a suggestion by Francois L'Archeveque.
+
+2006-03-21  Malcolm Purvis  <malcolmp@xemacs.org>
+
+       * regex.c: Bump INIT_FAILURE_ALLOC and re_max_failures to the
+       current values found in GNU Emacs.
+
+2006-03-17  Vin Shelton  <acs@xemacs.org>
+
+       * dialog-msw.c (handle_directory_dialog_box): Don't declare
+       Q_title here.  LOCAL_FILE_FORMAT_TO_TSTR requires an lvalue.
+
+       * glyphs-msw.c (read_bitmap_data): change 'initialized' to
+       'hex_initialized' because it conflicts with 'initialized' in
+       lisp.h.
+
+2006-01-28  Vin Shelton  <acs@xemacs.org>
+
+       * XEmacs 21.4.19 is released
+
+2006-01-20  Rick Rankin <rrankin1424-xemacs@yahoo.com>
+
+       * sysdir.h: Workaround missing d_ino field from 'struct dirent'.
+
+2005-12-24  Aidan Kehoe  <kehoea@parhasard.net>
+
+       * objects-gtk.c (MAX_FONT_COUNT): Increase MAX_FONT_COUNT from
+       5000 to INT_MAX.
+
+2005-12-05  Dr. Volker Zell  <Dr.Volker.Zell@oracle.com>
+
+       * database.c: Suppress compiler warning under Cygwin.
+       * database.c: Removed __FreeBSD__ check, should be handled by
+        HAVE_U_xxx_T defines.
+
+2005-12-18  Malcolm Purvis  <malcolmp@xemacs.org>
+
+       * console.c (stuff_buffered_input): Compile body only if
+       HAVE_TTY.
+
+2005-05-10  Aidan Kehoe  <kehoea@parhasard.net>
+
+       * callproc.c: #include sysdir.h, so that any appropriate Mule
+       magic happens with the chdir() call when calling a subprocess. 
+
+2005-12-06  Aidan Kehoe  <kehoea@parhasard.net>
+
+       * mule-ccl.c (POSSIBLE_LEADING_BYTE_P): Add.
+       * mule-ccl.c: Check that a character set exists before using it
+       to create a character. 
+
+2005-12-06  Vin Shelton  <acs@xemacs.org>
+
+       * objects-x.c (MAX_FONT_COUNT): Increase MAX_FONT_COUNT from 5000
+       to INT_MAX.
+
+2005-12-03  Vin Shelton <acs@xemacs.org>
+
+       * XEmacs 21.4.18 is released
+
+2005-11-27  Kean Johnston <kean@armory.com>
+
+       * redisplay-tty.c (set_tty_modes):
+       (reset_tty_modes): disable auto-margins if the terminal supports
+       them.
+       (init_tty_for_redisplay): fix cursor shape.
+
+2005-04-05  Aidan Kehoe  <kehoea@parhasard.net>
+
+       * mule-ccl.c (ccl_driver): Calculate the charset and position code
+       for control-1 characters properly, both when reading multibyte
+       characters and writing them. 
+
+2005-03-12  Aidan Kehoe  <kehoea@parhasard.net>
+
+       * config.h.in: Make HAVE_XTREGISTERDRAWABLE available. 
+       * select-x.c (x_reply_selection_request): Use it; fix the bug we
+       were seeing with incremental selection transfer failing. 
+
+2005-11-26  Vin Shelton  <acs@xemacs.org>
+
+       * callproc.c (Fold_call_process_internal): Create the buffer if it
+       does not already exist.  The original patch came from Ben Wing in
+       http://list-archive.xemacs.org/xemacs-patches/200205/msg00117.html
+
+2002-05-13  Adrian Aichner  <adrian@xemacs.org>
+
+       * callproc.c: Process-related docstring improvements spurred by
+       Norbert Koch.
+
+2005-11-25  Vin Shelton  <acs@xemacs.org>
+
+       * depend: Regenerated.
+
+2005-07-11  Malcolm Purvis  <malcolmp@xemacs.org>
+
+       * glyphs-gtk.c:  Rename a local static variable because gcc 4.0
+       says it clashes with a global with the same name.
+
+2005-07-11  Atanu Ghosh <atanu@icsi.berkeley.edu>
+
+       * sysdll.c (dll_open): Under MacOS X return NULL under the
+       filename is NULL.  Fixes problems finding local symbols under 10.4
+       (Tiger)
+
+2005-11-15  Dr. Volker Zell  <Dr.Volker.Zell@oracle.com>
+       
+       * config.h.in: New HAVE_U_INT*_T defines.
+       
+       * database.c: Only use u_int*_t typedefs if not already
+       defined.
+
+2005-04-07 15:08  Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de>
+
+       * src/process-unix.c (unix_open_network_stream): moved
+         'portbuf' buffer out of an inner block as it is used in the
+         entire function. With gcc4, the stack may get corrupted
+         after leaving this block. This patches adjusts the size of
+         the used buffer also; static '128' bytes are far too much
+         currently and might not suffice for future architectures
+         (e.g. for 512 bit ones ;)). Instead of, use only the really
+         required space (max octets * ln(256)/ln(10) chars + space
+         for '\0' and the sign)
+
+2005-04-08  Aidan Kehoe  <kehoea@parhasard.net>
+
+       * callproc.c: Include sysdir.h, so any necessary Mule processing
+       is done on the current directory name before starting a new
+       process.
+
+2005-04-06  Stephen J. Turnbull  <stephen@xemacs.org>
+
+       * chartab.c (Fchar_table_p):
+       (Fget_range_char_table):
+       (Fput_char_table):
+       (Fmap_char_table):
+       Describe range representation and fix typo.
+
+2005-02-12  Vin Shelton  <acs@xemacs.org>
+
+       * emacs.c (shut_down_emacs): Advise users to send email to the
+       xemacs-beta list instead of crashes@xemacs.org.
+
+2005-02-03  David Evers  <extsw@appliedgenerics.com>
+
+       * process-unix.c (unix_send_process): Flush the last chunk, even
+       when the pipe is blocked.
+
 2005-02-06  Vin Shelton <acs@xemacs.org>
 
        * XEmacs 21.4.17 is released
 
        * event-gtk.c: Recognise AltGr as a valid modifier.
 
-2005-01-12  Ville Skyttä  <scop@xemacs.org>
+2005-01-12  Ville Skyttä  <scop@xemacs.org>
 
        * console-x.h: #include X11/keysym.h before xintrinsic.h.
 
 
        * sysdll.c: configure sets HAVE_DLD_INIT, not HAVE_INIT_DLD.
 
-2003-07-31  René Kyllingstad  <listmailxemacs@kyllingstad.com>
+2003-07-31  René Kyllingstad  <listmailxemacs@kyllingstad.com>
 
        * event-msw.c (mswindows_enqueue_mouse_button_event):
        * event-msw.c (mswindows_wnd_proc):