Resorted; add some missing Morohashi's Daikanwa characters; add
[chise/xemacs-chise.git-] / src / ChangeLog
index a89bdf9..dd9bc24 100644 (file)
@@ -1,3 +1,513 @@
+2000-07-28  MORIOKA Tomohiko  <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+       * mule-charset.c (expand_uint8_byte_table_to_uint16): New
+       function.
+       (put_byte_table): Use `expand_uint8_byte_table_to_uint16'.
+
+2000-07-26  MORIOKA Tomohiko  <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+       * mule-charset.c (complex_vars_of_mule_charset): Define new macro
+       `DEF_MOJIKYO_PJ' in UTF-2000; use `DEF_MOJIKYO_PJ' to define
+       `mojikyo-pj-*'; add "MojikyoPJ-*" to charset-registry of
+       `mojikyo-pj-*'.
+
+2000-07-24  MORIOKA Tomohiko  <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+       * text-coding.c (decode_coding_big5): Modify for UTF-2000.
+
+2000-07-24  MORIOKA Tomohiko  <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+       * mule-charset.c (vars_of_mule_charset): Update `utf-2000-version'
+       to 0.17.
+
+2000-07-22  MORIOKA Tomohiko  <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+       * file-coding.c (ucs_to_char): Don't use `CHARSET_TYPE_*'; modify
+       for `CHARSET_BY_ATTRIBUTES'.
+       (parse_iso2022_esc): Don't use `CHARSET_TYPE_*'; modify for
+       `CHARSET_BY_ATTRIBUTES'.
+
+       * text-coding.c (struct decoding_stream): Rename member `CH' to
+       `CPOS'.
+       (reset_decoding_stream): Use `str->cpos' instead of `str->ch'.
+       (decode_coding_sjis): Likewise.
+       (decode_coding_big5): Likewise.
+       (decode_coding_ucs4): Likewise.
+       (decode_coding_utf8): Likewise.
+       (parse_iso2022_esc): Don't use `CHARSET_TYPE_*'; modify for
+       `CHARSET_BY_ATTRIBUTES'.
+       (decode_coding_iso2022): Use `str->cpos' instead of `str->ch'; use
+       `str->counter'; decode 3, 4 bytes sets.
+       (char_encode_iso2022): Don't use `BREAKUP_CHAR'; encode 3, 4 bytes
+       sets.
+       (decode_coding_no_conversion): Use `str->cpos' instead of
+       `str->ch'.
+
+       * mule-charset.c (Vcharset_mojikyo_2022_1): New variable.
+       (Qmojikyo_2022_1): New variable.
+       (make_charset): Don't use `CHARSET_TYPE_*'.
+       (range_charset_code_point): Support coded-charset
+       `mojikyo-2022-1'.
+       (encode_builtin_char_1): Modify for `CHARSET_BY_ATTRIBUTES'.
+       (Fmake_charset): Don't use `CHARSET_TYPE_*'; modify for
+       `CHARSET_BY_ATTRIBUTES'.
+       (Fcharset_from_attributes): Don't use `CHARSET_TYPE_*'; modify for
+       `CHARSET_BY_ATTRIBUTES'.
+       (syms_of_mule_charset): Add new symbol `mojikyo-2022-1'.
+       (complex_vars_of_mule_charset): Add new coded-charset
+       `mojikyo-2022-1'.
+
+       * mule-charset.h (CHARSET_BY_ATTRIBUTES): New implementation and
+       interface; changed to inline function.
+
+       * char-ucs.h (Vcharset_mojikyo_2022_1): New variable.
+       (LEADING_BYTE_MOJIKYO_2022_1): New macro.
+       (LEADING_BYTE_MOJIKYO_2022_2): New macro.
+       (CHARSET_TYPE_94): Deleted.
+       (CHARSET_TYPE_94X94): Deleted.
+       (CHARSET_TYPE_96): Deleted.
+       (CHARSET_TYPE_96X96): Deleted.
+       (CHARSET_TYPE_128): Deleted.
+       (CHARSET_TYPE_128X128): Deleted.
+       (CHARSET_TYPE_256): Deleted.
+       (CHARSET_TYPE_256X256): Deleted.
+       (CHARSET_BY_ATTRIBUTES): New implementation and interface; changed
+       to inline function.
+       (DECODE_MOJIKYO_2022): New inline function.
+       (DECODE_CHAR): Use `DECODE_MOJIKYO_2022'; decode
+       `Vcharset_mojikyo_2022_1'.
+
+2000-07-18  MORIOKA Tomohiko  <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+       * mule-charset.c (byte_table_same_value_p): Use `internal_equal'
+       instead of `EQ'.
+       (put_byte_table): Likewise.
+       (char_id_table_equal): Use `get_byte_table' [new implementation].
+
+2000-07-17  MORIOKA Tomohiko  <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+       * mule-charset.c: Include <limits.h> in UTF-2000.
+       (BT_UINT8_MIN): New macro in UTF-2000.
+       (BT_UINT8_MAX): New macro in UTF-2000.
+       (BT_UINT8_t): New macro in UTF-2000.
+       (BT_UINT8_nil): New macro in UTF-2000.
+       (BT_UINT8_unbound): New macro in UTF-2000.
+       (INT_UINT8_P): New inline function in UTF-2000.
+       (UINT8_VALUE_P): New inline function in UTF-2000.
+       (UINT8_ENCODE): New inline function in UTF-2000.
+       (UINT8_DECODE): New inline function in UTF-2000.
+       (mark_uint8_byte_table): New function in UTF-2000.
+       (print_uint8_byte_table): New function in UTF-2000.
+       (uint8_byte_table_equal): New function in UTF-2000.
+       (uint8_byte_table_hash): New function in UTF-2000.
+       (make_uint8_byte_table): New function in UTF-2000.
+       (uint8_byte_table_same_value_p): New function in UTF-2000.
+       (BT_UINT16_MIN): New macro in UTF-2000.
+       (BT_UINT16_MAX): New macro in UTF-2000.
+       (BT_UINT16_t): New macro in UTF-2000.
+       (BT_UINT16_nil): New macro in UTF-2000.
+       (BT_UINT16_unbound): New macro in UTF-2000.
+       (INT_UINT16_P): New inline function in UTF-2000.
+       (UINT16_VALUE_P): New inline function in UTF-2000.
+       (UINT16_ENCODE): New inline function in UTF-2000.
+       (UINT16_DECODE): New inline function in UTF-2000.
+       (UINT8_TO_UINT16): New inline function in UTF-2000.
+       (mark_uint16_byte_table): New function in UTF-2000.
+       (print_uint16_byte_table): New function in UTF-2000.
+       (uint16_byte_table_equal): New function in UTF-2000.
+       (uint16_byte_table_hash): New function in UTF-2000.
+       (make_uint16_byte_table): New function in UTF-2000.
+       (uint16_byte_table_same_value_p): New function in UTF-2000.
+       (print_byte_table): New function in UTF-2000.
+       (byte-table): Use `print_byte_table' as printer.
+       (make_byte_table): Delete second argument `older'.
+       (byte_table_same_value_p): New function in UTF-2000.
+       (copy_byte_table): Deleted.
+       (get_byte_table): New function in UTF-2000.
+       (put_byte_table): New function in UTF-2000.
+       (print_char_id_table): New function in UTF-2000.
+       (char-id-table): Use `print_char_id_table' as printer.
+       (make_char_id_table): Delete second argument `older'.
+       (get_char_id_table): Use `get_byte_table [new implementation].
+       (put_char_id_table): Use `get_byte_table and `put_byte_table' [new
+       implementation].
+       (Ffind_char_attribute_table): New function in UTF-2000.
+       (mark_charset): Mark `cs->encoding_table' in UTF-2000.
+       (syms_of_mule_charset): Add LRECORD_IMPLEMENTATION
+       `uint8_byte_table' and `uint16_byte_table' in UTF-2000.
+       (syms_of_mule_charset): Add new function
+       `find-char-attribute-table' in UTF-2000.
+
+       * lrecord.h (enum lrecord_type): Add
+       `lrecord_type_uint16_byte_table' and
+       `lrecord_type_uint8_byte_table'.
+
+       * char-ucs.h (struct Lisp_Uint8_Byte_Table): New structure.
+       (Lisp_Uint8_Byte_Table): New type.
+       (XUINT8_BYTE_TABLE): New macro.
+       (XSETUINT8_BYTE_TABLE): New macro.
+       (UINT8_BYTE_TABLE_P): New macro.
+       (GC_UINT8_BYTE_TABLE_P): New macro.
+       (struct Lisp_Uint16_Byte_Table): New structure.
+       (Lisp_Uint16_Byte_Table): New type.
+       (XUINT16_BYTE_TABLE): New macro.
+       (XSETUINT16_BYTE_TABLE): New macro.
+       (UINT16_BYTE_TABLE_P): New macro.
+       (GC_UINT16_BYTE_TABLE_P): New macro.
+
+2000-07-13  MORIOKA Tomohiko  <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+       * mule-charset.c (Vcharacter_ideographic_radical_table): Deleted.
+       (Vcharacter_ideographic_strokes_table): Deleted.
+       (Vcharacter_total_strokes_table): Deleted.
+       (Vcharacter_morohashi_daikanwa_table): Deleted.
+       (Vcharacter_decomposition_table): Deleted.
+       (Qname): Deleted because it is duplicated.
+       (Qideographic_radical): Deleted.
+       (Qideographic_strokes): Deleted.
+       (Qtotal_strokes): Deleted.
+       (Qmorohashi_daikanwa): Deleted.
+       (Fchar_attribute_alist): Use `Vchar_attribute_hash_table' for
+       `ideographic-radical', `ideographic-strokes', `total-strokes',
+       `morohashi-daikanwa' and `->decomposition'.
+       (Fget_char_attribute): Likewise.
+       (Fput_char_attribute): Likewise; use `make-vector' instead of
+       `make_older_vector' for `->decomposition' value.
+       (Fdefine_char): Comment out code to check `morohashi-daikanwa' and
+       `ideograph-daikanwa'.
+       (syms_of_mule_charset): Delete builtin symbols `name',
+       `ideographic-radical', `ideographic-strokes', `total-strokes' and
+       `morohashi-daikanwa'.
+       (vars_of_mule_charset): Don't setup
+       `Vcharacter_ideographic_radical_table',
+       `Vcharacter_ideographic_strokes_table',
+       `Vcharacter_total_strokes_table',
+       `Vcharacter_morohashi_daikanwa_table' and
+       `Vcharacter_decomposition_table'.
+
+2000-06-30  MORIOKA Tomohiko  <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+       * alloc.c: Use `HAVE_GGC' instead of `UTF2000' for
+       `make_older_vector', `make_vector_newer_1' and
+       `make_vector_newer'.
+
+       * lisp.h: Use `HAVE_GGC' instead of `UTF2000' for
+       `make_older_vector' and `make_vector_newer'.
+
+       * config.h.in (HAVE_GGC): New macro.
+
+2000-06-16  MORIOKA Tomohiko  <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+       * mule-charset.c (struct char_attribute_list_closure): New
+       structure in UTF-2000.
+       (add_char_attribute_to_list_mapper): New function in UTF-2000.
+       (Fchar_attribute_list): Likewise.
+       (Fset_charset_mapping_table): Use `make_vector_newer'.
+       (Fdecode_builtin_char): New function in UTF-2000.
+       (syms_of_mule_charset): Add new function `char-attribute-list' and
+       `decode-builtin-char' in UTF-2000.
+
+       * lisp.h (make_vector_newer): New prototype.
+
+       * alloc.c (make_vector_newer_1): New function.
+       (make_vector_newer): New function.
+
+2000-06-14  MORIOKA Tomohiko  <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+       * char-ucs.h (MAX_CHAR_DAIKANWA): Changed to `(MIN_CHAR_MOJIKYO +
+       50100)'.
+
+2000-06-12  MORIOKA Tomohiko  <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+       * mule-charset.c (Vchar_attribute_hash_table): New variable.
+       (Vcharacter_attribute_table): Deleted.
+       (Vcharacter_name_table): Deleted.
+       (put_char_attribute): Deleted.
+       (remove_char_attribute): Deleted.
+       (struct char_attribute_alist_closure): New structure.
+       (add_char_attribute_alist_mapper): New function.
+       (Fchar_attribute_alist): Use `Vchar_attribute_hash_table' instead
+       of `Vcharacter_attribute_table' and `Vcharacter_name_table'.
+       (Fget_char_attribute): Likewise.
+       (Fput_char_attribute): Likewise.
+       (Fremove_char_attribute): Use `Vchar_attribute_hash_table' instead
+       of `remove_char_attribute'.
+       (Fdefine_char): Return character.
+       (vars_of_mule_charset): Don't setup `Vcharacter_attribute_table'
+       and `Vcharacter_name_table'.
+       (complex_vars_of_mule_charset): Likewise
+       `Vchar_attribute_hash_table'.
+
+2000-06-10  MORIOKA Tomohiko  <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+       * character.h (CHARC_CHARSET): New macro.
+       (CHARC_CHARSET_ID): New macro.
+       (CHARC_CODE_POINT): New macro.
+       (CHARC_COLUMNS): New macro.
+       (CHARC_TO_CHAR): New inline function.
+       (CHARC_EQ): New inline function.
+       (CHARC_ASCII_EQ): New inline function.
+       (CHARC_IS_SPACE): New inline function.
+       (ASCII_TO_CHARC): New inline function.
+
+       * char-ucs.h (encode_char_2): Deleted.
+       (ENCODE_CHAR): Use `encode_char_1' again.
+       (breakup_char_1): Likewise.
+       (CHAR_TO_CHARC): New inline function.
+
+       * char-lb.h, char-1byte.h (CHAR_TO_CHARC): New inline function.
+
+2000-06-09  MORIOKA Tomohiko  <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+       * redisplay.c (add_emchar_rune): Use `ASCII_TO_CHARC',
+       `CHAR_TO_CHARC' and `CHARC_CHARSET'.
+       (create_text_block): Use `CHARC_ASCII_EQ' and `CHARC_IS_SPACE'.
+       (generate_formatted_string_db): Use `CHARC_TO_CHAR'.
+       (create_string_text_block): Use `CHARC_ASCII_EQ' and
+       `CHARC_IS_SPACE'.
+       (pixel_to_glyph_translation): Use `CHARC_ASCII_EQ'.
+
+       * redisplay-x.c (separate_textual_runs): Use `CHARC_CHARSET' and
+       `CHARC_CODE_POINT'.
+       (x_output_display_block): Use `CHARC_CHARSET' and
+       `CHARC_ASCII_EQ'.
+
+       * redisplay-tty.c (tty_output_display_block): Use
+       `CHARC_ASCII_EQ'.
+       (tty_output_display_block): Likewise; use `ASCII_TO_CHARC'.
+
+       * redisplay-output.c (compare_runes): Use `CHARC_EQ'.
+
+       * insdel.c (find_charsets_in_charc_string): Use
+       `CHARC_CHARSET_ID'.
+       (charc_string_displayed_columns): Use `CHARC_COLUMNS'.
+       (convert_bufbyte_string_into_charc_dynarr): Use `CHAR_TO_CHARC'.
+       (convert_charc_string_into_bufbyte_dynarr): Use `CHARC_TO_CHAR'.
+       (convert_charc_string_into_malloced_string): Likewise.
+
+2000-06-09  MORIOKA Tomohiko  <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+       * toolbar-x.c (x_output_toolbar_button): Use <Charc_dynarr *>
+       instead of <Emchar_dynarr *> for buf; use
+       `convert_bufbyte_string_into_charc_dynarr' instead of
+       `convert_bufbyte_string_into_emchar_dynarr'; use
+       `find_charsets_in_charc_string' instead of
+       `find_charsets_in_emchar_string'.
+
+       * redisplay.h:
+       - Include "character.h".
+       (struct rune): New member `cglyph'; delete member `chr'.
+
+       * redisplay.c (redisplay_text_width_charc_string): New function;
+       delete `redisplay_text_width_emchar_string'.
+       (rtw_charc_dynarr): New variable; renamed from
+       `rtw_emchar_dynarr'.
+       (redisplay_text_width_string): Use `rtw_charc_dynarr' instead of
+       `rtw_emchar_dynarr'; use
+       `convert_bufbyte_string_into_charc_dynarr' instead of
+       `convert_bufbyte_string_into_emchar_dynarr'; use
+       `redisplay_text_width_charc_string' instead of
+       `redisplay_text_width_emchar_string'.
+       (redisplay_frame_text_width_string): Use `rtw_charc_dynarr'
+       instead of `rtw_emchar_dynarr'; use
+       `convert_bufbyte_string_into_charc_dynarr' instead of
+       `convert_bufbyte_string_into_emchar_dynarr'.
+       (add_emchar_rune): Add <Charc> instead of <Emchar>; use
+       `redisplay_text_width_charc_string' instead of
+       `redisplay_text_width_emchar_string'.
+       (create_text_block): Modify for <struct rune> change.
+       (generate_formatted_string_db): Likewise.
+       (create_string_text_block): Likewise.
+       (pixel_to_glyph_translation): Likewise.
+
+       * redisplay-x.c (separate_textual_runs): Use <const Charc *>
+       instead of <const Emchar *>.
+       (x_text_width): Likewise.
+       (x_output_display_block): Use <Charc_dynarr *> instead
+       <Emchar_dynarr *>; modify for <structure rune> change.
+       (x_output_string): Use <Charc_dynarr *> instead of <Emchar_dynarr
+       *>.
+
+       * redisplay-tty.c (tty_text_width): Use <const Charc *> instead of
+       <const Emchar *>; use `charc_string_displayed_columns' instead of
+       `emchar_string_displayed_columns'.
+       (tty_output_display_block): Use <Charc_dynarr *> instead of
+       <Emchar_dynarr *> for buf; modify for <structure rune> change; use
+       `tty_output_charc_dynarr' instead of `tty_output_emchar_dynarr'.
+       (tty_output_charc_dynarr_dynarr): New variable; renamed from
+       `tty_output_emchar_dynarr_dynarr'.
+       (tty_output_charc_dynarr): New function; delete
+       `tty_output_charc_dynarr'.
+
+       * redisplay-output.c (compare_runes): Modify for `struct rune'.
+       (redisplay_output_layout): Use <Charc_dynarr *> instead of
+       <Emchar_dynarr *> for buf; use
+       `convert_bufbyte_string_into_charc_dynarr' instead of
+       `convert_bufbyte_string_into_emchar_dynarr'.
+
+       * frame.c (title_string_charc_dynarr): New variable; renamed from
+       `title_string_emchar_dynarr'.
+       (generate_title_string): Use `title_string_charc_dynarr' instead
+       of `title_string_emchar_dynarr'; use
+       `convert_charc_string_into_malloced_string' instead of
+       `convert_emchar_string_into_malloced_string'.
+       (init_frame): Use `title_string_charc_dynarr' instead of
+       `title_string_emchar_dynarr'.
+
+       * console.h:
+       - Include "character.h".
+       (struct console_methods): Use <const Charc *> instead of <const
+       Emchar *> in `text_width_method'; use <Charc_dynarr *> instead of
+       <Emchar_dynarr *> in output_string_method.
+
+       * console-x.h (x_output_string): Use <Charc_dynarr *> instead of
+       <Emchar_dynarr *>.
+
+       * console-stream.c (stream_text_width): Use <const Charc *>
+       instead of <const Emchar *>.
+
+       * character.h (Charc_dynarr): New type.
+
+       * char-ucs.h (structure Charc): New structure; define new type
+       `Charc'.
+
+       * char-lb.h (DECODE_CHAR): New inline function.
+       (encode_char_1): New inline function.
+       (ENCODE_CHAR): New macro.
+       (structure Charc): New structure; define new type `Charc'.
+
+       * char-1byte.h (Vcharset_control_1): New macro.
+       (Vcharset_latin_iso8859_1): New macro.
+       (DECODE_CHAR): New inline function.
+       (encode_char_1): New inline function.
+       (ENCODE_CHAR): New macro.
+       (structure Charc): New structure; define new type `Charc'.
+
+       * insdel.c (find_charsets_in_charc_string): New function; delete
+       `find_charsets_in_emchar_string'.
+       (charc_string_displayed_columns): New function; delete
+       `emchar_string_displayed_columns'.
+       (convert_bufbyte_string_into_charc_dynarr): New function; delete
+       `convert_bufbyte_string_into_emchar_dynarr'.
+       (convert_charc_string_into_bufbyte_dynarr): New function; delete
+       `convert_charc_string_into_bufbyte_dynarr'.
+       (convert_charc_string_into_malloced_string): New function; delete
+       `convert_charc_string_into_malloced_string'.
+
+       * buffer.h (find_charsets_in_charc_string): New prototype; delete
+       `find_charsets_in_emchar_string'.
+       (charc_string_displayed_columns): New prototype; delete
+       `emchar_string_displayed_columns'.
+       (convert_charc_string_into_bufbyte_dynarr): New prototype; delete
+       `convert_charc_string_into_bufbyte_dynarr'.
+       (convert_charc_string_into_malloced_string): New prototype; delete
+       `convert_charc_string_into_malloced_string'.
+
+2000-06-08  MORIOKA Tomohiko  <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+       * select-x.c (Fx_store_cutbuffer_internal): Modify for UTF-2000.
+
+2000-06-07  MORIOKA Tomohiko  <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+       * chartab.h (get_non_ascii_char_table_value): Use <Charset_ID>.
+
+       * char-ucs.h: Use <short> for <Charset_ID>.
+
+       * mule-charset.h, char-1byte.h: Use <unsigned char> for
+       <Charset_ID>.
+
+2000-06-02  MORIOKA Tomohiko  <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+       * mule-charset.c (vars_of_mule_charset): Update `utf-2000-version'
+       to 0.16.
+
+2000-06-02  MORIOKA Tomohiko  <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+       * mule-charset.c (Vcharacter_morohashi_daikanwa_table): New
+       variable.
+       (Qmorohashi_daikanwa): New variable.
+       (Fchar_attribute_alist): Use `Vcharacter_morohashi_daikanwa_table'
+       for `morohashi-daikanwa' attribute.
+       (Fget_char_attribute): Likewise.
+       (Fput_char_attribute): Likewise.
+       (Fdefine_char): Don't setup `morohashi-daikanwa' attribute if it
+       has the same value of `ideograph-daikanwa'.
+       (syms_of_mule_charset): Add new symbol `morohashi-daikanwa'.
+       (vars_of_mule_charset): Setup
+       `Vcharacter_morohashi_daikanwa_table'.
+
+2000-06-02  MORIOKA Tomohiko  <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+       * mule-charset.c (Fchar_attribute_alist): Add coded-charset
+       attributes.
+       (add_charset_to_list_mapper): Add `key' instead of
+       `XCHARSET_NAME (value)' to return aliases.
+
+2000-06-02  MORIOKA Tomohiko  <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+       * mule-charset.c (Vcharacter_ideographic_radical_table): New
+       variable.
+       (Vcharacter_ideographic_strokes_table): New variable.
+       (Qideographic_radical): New variable.
+       (Qideographic_strokes): New variable.
+       (Fchar_attribute_alist): Use
+       `Vcharacter_ideographic_radical_table' for `ideographic-radical'
+       attribute; use `Vcharacter_ideographic_strokes_table' for
+       `ideographic-strokes' attribute.
+       (Fget_char_attribute): Likewise.
+       (Fput_char_attribute): Likewise.
+       (syms_of_mule_charset): Add new symbol `ideographic-radical' and
+       `ideographic-strokes'.
+       (vars_of_mule_charset): Setup
+       `Vcharacter_ideographic_radical_table' and
+       `Vcharacter_ideographic_strokes_table'.
+
+2000-06-02  MORIOKA Tomohiko  <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+       * mule-charset.c (Vcharacter_total_strokes_table): New variable.
+       (Qtotal_strokes): New variable.
+       (Fchar_attribute_alist): Use `Vcharacter_total_strokes_table' for
+       `total-strokes' attribute.
+       (Fget_char_attribute): Likewise.
+       (Fput_char_attribute): Likewise.
+       (syms_of_mule_charset): Add new symbol `total-strokes'.
+       (vars_of_mule_charset): Setup `Vcharacter_total_strokes_table'.
+
+2000-06-02  MORIOKA Tomohiko  <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+       * mule-charset.c (Vcharacter_decomposition_table): New variable.
+       (Fchar_attribute_alist): Add `name' and `->decomposition' if they
+       are found.
+       (Fget_char_attribute): Use `Vcharacter_decomposition_table' for
+       `->decomposition' attribute.
+       (Fput_char_attribute): Likewise.
+       (vars_of_mule_charset): Setup `Vcharacter_decomposition_table'.
+
+2000-06-01  MORIOKA Tomohiko  <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+       * mule-charset.c (decoding_table_check_elements): New function.
+       (Fset_charset_mapping_table): Use `decoding_table_check_elements'.
+
+2000-05-31  MORIOKA Tomohiko  <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+       * mule-charset.c (Fset_charset_mapping_table): Use
+       `put_char_ccs_code_point'.
+
+2000-05-31  MORIOKA Tomohiko  <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+       * mule-charset.c (decoding_table_put_char): New inline function.
+       (put_char_ccs_code_point): Use `decoding_table_put_char'.
+
+2000-05-31  MORIOKA Tomohiko  <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+       * mule-charset.c (CHARSET_BYTE_SIZE): New inline function.
+       (XCHARSET_BYTE_SIZE): New macro.
+       (decoding_table_remove_char): New inline function.
+       (put_char_ccs_code_point): Use `XCHARSET_BYTE_SIZE'; use
+       `decoding_table_remove_char'.
+       (remove_char_ccs): Use `decoding_table_remove_char'.
+       (Fset_charset_mapping_table): Use `CHARSET_BYTE_SIZE'.
+
 2000-05-31  MORIOKA Tomohiko  <tomo@kanji.zinbun.kyoto-u.ac.jp>
 
        * mule-charset.c (Vcharacter_name_table): New variable.
 
        * lisp.h (make_older_vector): New prototype in UTF-2000.
 
-2000-05-24  MORIOKA Tomohiko  <tomo@kanji.zinbun.kyoto-u.ac.jp>
-
-       * unexelf.c: Sync up with Emacs 20.6.90 to fix problem with most
-       current development versions of binutils.
-
 2000-05-22  MORIOKA Tomohiko  <tomo@kanji.zinbun.kyoto-u.ac.jp>
 
        * lrecord.h (enum lrecord_type): Rename
 
 1999-09-06  MORIOKA Tomohiko  <tomo@etl.go.jp>
 
-       * mule-charset.c (vars_of_mule_charset):
-       Update `utf-2000-version' to 0.6.
+       * mule-charset.c (vars_of_mule_charset): Update `utf-2000-version'
+       to 0.6.
 
 1999-09-05  MORIOKA Tomohiko  <tomo@urania.m17n.org>
 
        (Vcharset_thai_tis620): Likewise.
        (Vcharset_katakana_jisx0201): Likewise.
 
+2000-07-19  Martin Buchholz <martin@xemacs.org>
+
+       * XEmacs 21.2.35 is released.
+
+2000-07-19  Martin Buchholz  <martin@xemacs.org>
+
+       * select-x.c (x_handle_selection_request): 
+       Text selected in xemacs and pasted into xterm failed to appear.
+       Spelling fixes and cosmetic changes.
+
+2000-07-18  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
+
+       * event-msw.c (mswindows_drain_windows_queue): Correctly check for
+       XEmacs frame (fix for doubling chars in dialog boxes).
+
+2000-07-17 Alastair J. Houghton <ajhoughton@lineone.net>
+
+       * select.c (select_convert_in, select_convert_out):
+       Don't call intern() every time.
+
+       * select.c (Qselect_convert_in, Qselect_convert_out): New.
+       * select.c (vars_of_select): Initialise them.
+
+2000-07-18 Alastair J. Houghton <ajhoughton@lineone.net>
+
+       * select.c (selection-coercible-types): New.
+
+       * select.c (own-selection-internal):
+       * select.c (get-selection-internal):
+       MULE bug fix - these should default to COMPOUND_TEXT and not
+       STRING for MULE. I think.
+
+       * select.c (select_convert_out): Use selection-coercible-types
+       to find types that we can attempt to perform coercions on.
+
+2000-07-18  Martin Buchholz  <martin@xemacs.org>
+
+       * mule-wnnfns.c:
+       * mule-canna.c:
+       Add coding: cookie to identify encoding.
+
+       * mule-canna.c (CANNA_mode_keys): make static.
+       Use proper prototypes, even for functions of no arguments.
+       Remove external prototype for Fding().
+
+       * symsinit.h: Add missing prototype for reinit_vars_of_mule_wnn.
+
+       * select.c (syms_of_select): Add missing DEFSUBR.
+
+2000-07-18 Alastair J. Houghton <ajhoughton@lineone.net>
+
+       * select.c (get_selection_internal, own_selection_internal):
+       Make the type default to STRING, rather than placing a nil type
+       into Vselection_alist.
+
+2000-07-17 Alastair J. Houghton <ajhoughton@lineone.net>
+
+       * gpmevent.c (tty_selection_exists_p):
+       * gpmevent.c (tty_own_selection):
+       Updated parameter lists.
+
+2000-07-15 Alastair J. Houghton <ajhoughton@lineone.net>
+
+       * select.h (selection-alist): Removed declaration.
+
+       * select.h (get_local_selection):
+       * select.c (get_local_selection):
+       Made static.
+
+       * select.h (convert_selection): Removed declaration.
+       * select.c (convert_selection): Removed.
+       This function belongs in Lisp.
+
+       * select.h (select_convert_in): Declare.
+       * select.h (select_convert_out): Declare.
+       * select.c (select_convert_in): New.
+       * select.c (select_convert_out): New.
+       New conversion functions for other files to call.
+
+       * select.h (select_notify_buffer_kill): Declare.
+       * select.c (select_notify_buffer_kill): New.
+       New functions that get called from kill-buffer.
+
+       * buffer.c (kill-buffer): Call select_notify_buffer_kill, rather than
+       X-specific lisp code.
+
+       * select.h: Declare some of the lisp-visible functions for
+       external use.
+
+       * select.c (clean_local_selection_data): Removed. This was
+       a disgusting function, and previously should have been in
+       select-x.c in any case. The functionality is now provided
+       in select-convert-from-integer (select.el).
+
+       * select.c (available-selection-types): Fixed stupidity where
+       INTEGER and ATOM got added twice. Also add STRING when we see an
+       extent.
+
+       * select.c (get-selection-internal): Removed symbol stripping. No
+       longer causes conversion when data comes from the internal cache.
+
+       * select.c (syms_of_select): Added new functions.
+
+       * select-x.c (motif_clipboard_cb): Use select_convert_out. Rewrote
+       error checking - previously this called abort!
+       
+       * select-x.c (x_own_selection): Changed comment.
+       
+       * select-x.c (x_handle_selection_request): Use select_convert_out.
+       Don't mess with selection-alist; it's an internal variable of select.c.
+       
+       * select-x.c (x_get_foreign_selection): Use select_convert_in.
+       
+       * select-x.c (x_handle_selection_clear): Use get-selection-timestamp,
+       rather than messing with selection-alist.
+       
+       * select-msw.c (mswindows_get_foreign_selection):
+       Use TO_INTERNAL_FORMAT rather than hacking.
+
+2000-07-14  Martin Buchholz  <martin@xemacs.org>
+
+       * process-unix.c (unix_open_multicast_group):
+       (unix_open_multicast_group): Remove useless casts.
+
+2000-07-13  Martin Buchholz  <martin@xemacs.org>
+
+       * sound.c (Fplay_sound): Fix `unused variable' warning.
+
+       * emacs.c (main): Use correct type for _environ on SCO5.
+
+2000-07-12 Alastair J. Houghton <ajhoughton@lineone.net>
+
+       * console.h (own_selection_method):
+       * console.h (selection_exists_p_method):
+       * console.h (available_selection_types_method): New.
+       * console.h (register_selection_data_type_method): New.
+       * console.h (selection_data_type_name): New.
+       
+       * console-msw.h (mswindows_destroy_selection): Declare it.  New
+       function & alist to track GlobalAlloc()'d handles that need
+       releasing when the clipboard data gets replaced or emptied.
+
+       * event-msw.c (mswindows_wnd_proc): Call it.
+
+       * lisp.h, general.c (Qappend): New symbol representing a
+       `how-to-add' mode.
+       
+       * select.c (own-selection-internal):
+       * select.c (selection-exists-p):
+       * select.c (available-selection-types): New.
+       * select.c (register-selection-data-type): New.
+       * select.c (selection-data-type-name): New.  New functions to deal
+       with device-specific selection data formats.
+       * select.c (selection-converter-out-alist): Renamed.
+       * select.c (selection-converter-in-alist): New.
+       * select.c (selection-appender-alist): New.  Added new alists.
+       * select.c (syms_of_select, vars_of_select): Added new symbols &
+       variables.
+       * select.c (get_local_selection): Split.
+       * select.c: Removed spurious type checking - selections may now be
+       of any type, not just strings.
+       * select.c (own-selection-internal):
+
+       * select.h, select.c (convert_selection): New. Created
+       convert_selection() function based on get_local_selection().
+       * select.h, select.c (QCF_*): New symbols representing mswindows
+       clipboard formats.
+       * select.h, select.c (Qreplace_all, Qreplace_existing): New
+       symbols representing `how-to-add' modes.
+
+       * select-msw.c (x_sym_p): New.
+       * select-msw.c (symbol_to_ms_cf): New.
+       * select-msw.c (ms_cf_to_symbol): New. New functions to deal with
+       symbols & clipboard formats. Can also handle string names.
+       * select-msw.c (mswindows_own_selection):
+       * select-msw.c (mswindows_selection_exists_p):
+       Added `data-type' parameter. Use it.
+       * select-msw.c (mswindows_available_selection_types): New.
+       * select-msw.c (mswindows_register_selection_data_type): New.
+       * select-msw.c (mswindows_selection_data_type_name): New.
+       * select-msw.c (mswindows_own_selection):
+       * select-msw.c (mswindows_get_foreign_selection):
+       * select-msw.c (mswindows_selection_exists_p):  Rewrote.
+       * select-msw.c (console_create_select_mswindows): Added new methods.
+       * select-msw.c (mswindows_destroy_selection): New.
+       * select-msw.c (Vhandle_alist): New list.
+       * select-msw.c (mswindows_own_selection):
+
+       * select-x.c (x_own_selection):
+       * select-x.c (x_selection_exists_p):
+       * select-x.c: Added some comments about maybe using new
+       functionality.
+       * select-x.c (x_own_selection):
+
+       * specifier.c: Remove definition of Qappend (now in general.c)
+       * specifier.c (syms_of_specifier): Remove Qappend.
+
+2000-07-12  Martin Buchholz  <martin@xemacs.org>
+
+       * config.h.in: Add socklen_t.
+
+       * s/decosf4-0.h: No special compiler flags needed or desired.
+       In particular, undefine _BSD for DEC OSF 4.0.
+
+2000-07-07  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
+
+       * redisplay-msw.c (msprinter_frame_output_end): Added.
+       (console_type_create_redisplay_mswindows): Referred the above.
+
+       * frame.c (setup_frame_without_minibuffer): Do not create a
+       default minibuffer frame on a printer device.
+
+       * frame-msw.c (apply_dc_geometry): Added.
+       (msprinter_start_page): 
+       (msprinter_init_frame_3): 
+       (msprinter_eject_page): Use it.
+
+       * console-msw.h (struct msprinter_frame): Added pix_left and top,
+       and removed residual duplex and orientation properties.
+
+2000-07-11  Martin Buchholz  <martin@xemacs.org>
+
+       * eval.c (function_argcount): Work around a DEC CC compiler bug.
+
+       * unexalpha.c: Remove system prototypes from C sources!
+
+2000-07-09  Adrian Aichner  <aichner@ecf.teradyne.com>
+
+       * eval.c: Remove references to M-x edit-options in DEFUNs for
+       `defvar' and `defconst'.
+
+2000-07-09  Martin Buchholz  <martin@xemacs.org>
+
+       * config.h.in: Remove SMART_INCLUDE hackery.
+       
+       PostgreSQL hacking:
+       * config.h.in: Don't use SMART_INCLUDE.
+
+       * postgresql.h: Include libpq-fe.h here.  Fix typo.
+       * inline.c: Simply #include "postgresql.h"
+       * postgresql.c:
+       - Don't use SMART_INCLUDE
+       - Use simply "const".
+       - Use standard doc string conventions.
+       - Use correct type for result of PQstatus.
+
+2000-07-09  Martin Buchholz  <martin@xemacs.org>
+
+       * glyphs-x.c (x_xface_instantiate): Fix C++ compilation warnings.
+
+       C++ compilation changes.
+       * config.h.in (EXTERN_C): Define.
+       * config.h.in (not): This is also a C++ keyword.
+       * unexalpha.c (DEFAULT_ENTRY_ADDRESS): Enable C++ compilation.
+       * cm.c: Use EXTERN_C.
+       * redisplay-tty.c: Use EXTERN_C.
+       * sysdep.c: Use EXTERN_C.  Remove Gould support.
+
+2000-07-09  Martin Buchholz  <martin@xemacs.org>
+
+       * general.c: Remove duplicate definition for Qfunction.
+
+2000-07-08  Ben Wing  <ben@xemacs.org>
+
+       * device-msw.c (msprinter_init_device):
+       * device-msw.c (sync_printer_with_devmode):
+       * device-msw.c (handle_devmode_changes):
+       * device-msw.c (print_dialog_worker):
+       * device-msw.c (Fmsprinter_apply_settings):
+       * device-msw.c (hash_devmode):
+       * device-msw.c (Fmsprinter_settings_despecialize):
+       use Qmswindows_tstr, not Qctext.
+       
+       * vm-limit.c (check_memory_limits):
+       avoid infinite loop printing warning messages.
+
+2000-07-05  Craig Lanning  <lanning@scra.org>
+
+        * Makefile.in.in: Add support for including the Windows resources
+        when building with the cygwin and mingw targets.
+
+        * buffer.c: from Dan Holmsand, on Windows $PWD is most likely either
+        not set or not correct.
+        (directory_is_current_directory): Don't compile for WIN32_NATIVE.
+        (init_initial_directory): Don't try to use $PWD on the
+        WIN32_NATIVE target.
+
+        * s\cygwin32.h:
+       [[Add -mwindows to eliminate console window.]] not required --ben
+        (HAVE_NATIVE_SOUND): removed; now handled by configure.
+        (MAIL_USE_POP): removed; now handled by configure.
+
+        * s\mingw32.h: [[Add -mwindows to eliminate console window.]] not in
+       C_SWITCH_SYSTEM or it will affect lib-src progs. --ben
+        (HAVE_NATIVE_SOUND): removed; now handled by configure.
+        (MAIL_USE_POP): removed; now handled by configure.
+        (ENCAPSULATE_STAT): from Dan Holmsand, added.
+        (ENCAPSULATE_FSTAT): from Dan Holmsand, added.
+        (DIRECTORY_SEP): from Dan Holmsand, use lisp variable instead of
+        constant string.
+        (HAVE_TIMEVAL): from Dan Holmsand, added; struct timeval is picked
+        up from <winsock.h> via systime.h.
+        (HAVE_GETPAGESIZE): from Dan Holmsand, added.
+        (getpagesize): from Dan Holmsand, added.
+        Added #endif which was left dangling by Ben's mega patch; added
+        comment to help prevent this in the future.
+
+        * sysdll.c: added #include <windows.h> for WIN32_NATIVE case.
+
+2000-07-05  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
+
+       * console-msw.h (struct mswindows_device): Removed unnecessary
+       cached device geometry values.
+       Added update_tick and an accessor macro.
+       (Lisp_Devmode): Added lrecord declaration. 
+       (struct msprinter_device): Contain devmode as a Lisp object.
+       Added mswindows_get_selected_frame_hwnd();
+
+       * console.h (struct console_methods): Indentation nitpicking.
+
+       * device-msw.c (mswindows_init_device): Do not initialize geometry
+       cache. Initialize update tick.
+       (mswindows_device_system_metrics): Ask the device for its geometry.
+       (global_free_2_maybe): 
+       (devmode_to_hglobal): 
+       (handle_printer_changes): 
+       (ensure_not_printing): 
+       (print_dialog_worker): 
+       (Fmsprinter_print_setup_dialog): 
+       (Fmsprinter_print_dialog): 
+       (plist_get_margin): 
+       (plist_set_margin): 
+       (Fmsprinter_page_setup_dialog): Added functions.
+       (sync_printer_with_devmode): 
+       (handle_devmode_changes): 
+       (Fmsprinter_get_settings): 
+       (Fmsprinter_select_settings): 
+       (Fmsprinter_apply_settings):
+       (allocate_devmode): 
+       (Fmsprinter_settings_copy): 
+       (Fmsprinter_settings_despecialize): 
+       (print_devmode): 
+       (finalize_devmode): 
+       (equal_devmode): 
+       (hash_devmode): Added functions
+       (syms_of_device_mswindows): Init devmode lrecord class.
+
+       * device.h: Added an exfun for find-device.
+
+       * event-msw.c (mswindows_wnd_proc): Do not update the cached
+       geometry; although, recreate the device compatible DC.
+
+       * frame-msw.c (mswindows_get_selected_frame_hwnd): Added.
+       (msprinter_init_frame_3):
+       (msprinter_frame_property): 
+       (msprinter_internal_frame_property_p):
+       (msprinter_frame_properties): 
+       (msprinter_set_frame_properties): Removed 'orientation and 'duplex
+       print job properties (will move to device settings).
+
+       * lisp.h: Added symbols.
+
+       * general.c (syms_of_general): Declared them.
+
+       * hash.c (string_hash): Added.
+
+       * lrecord.h (lrecord_type): Added devmode lrecord type.
+
+2000-07-02  Mike Sperber <mike@xemacs.org>
+
+       * s/freebsd.h (INTERRUPTIBLE_OPEN): open *is* interruptible on
+       FreeBSD 4.0.
+
+2000-06-07  MORIOKA Tomohiko  <tomo@etl.go.jp>
+
+       * doprnt.c (emacs_doprnt_1): Fix problem with %0XXd for a negative
+       integer.
+
+2000-06-07  MORIOKA Tomohiko  <tomo@urania.m17n.org>
+
+       * data.c (Fstring_to_number): Don't recognize floating point if
+       base is not 10.
+
+2000-06-22  Martin Buchholz  <martin@xemacs.org>
+
+       * glyphs-widget.c (tab_control_query_geometry):
+       (widget_query_geometry):
+       (button_query_geometry):
+       * glyphs.c (text_query_geometry):
+       Enforce type correctness.
+
+2000-06-18  Martin Buchholz  <martin@xemacs.org>
+
+       * s/decosf4-0.h (_etext): Use portable _etext instead of etext.
+       * s/decosf4-0.h (_edata): Use portable _edata instead of edata.
+
+2000-06-17  Martin Buchholz  <martin@xemacs.org>
+
+       * s/decosf4-0.h: Never #include "/usr/include/FOO.h" because this
+       conflicts with gcc's fixincluded version of FOO.h.
+
+       * glyphs.h (image_instance_geometry): Remove trailing `,'
+
+2000-06-08  Mike Alexander  <mta@arbortext.com>
+
+        (MAX_SHOVE_BUFFER_SIZE): Change to 512 to match stream buffer size
+        (shove_thread): Don't write the same output twice
+        (make_ntpipe_output_stream): Increase priority of shove thread
+        (ntpipe_shove_writer): Call SwitchToThread to give shove thread a
+        chance to run
+        (ntpipe_shove_closer): Don't delete the pipe until we're done with
+        it.
+
+2000-06-12  Ben Wing  <ben@xemacs.org>
+
+       * s\mingw32.h (sigset):
+       * s\windowsnt.h (sigset):
+       rename msw_ to mswindows_ for consistency with general convention.
+
+2000-06-12  Ben Wing  <ben@xemacs.org>
+
+       * console-msw.c:
+       * console-msw.c (mswindows_get_console_hwnd):
+       * console-msw.c (mswindows_ensure_console_allocated):
+       * console-msw.c (mswindows_hide_console):
+       * console-msw.c (mswindows_show_console):
+       * console-msw.c (mswindows_ensure_console_buffered):
+       * console-msw.c (mswindows_output_console_string):
+       * console-msw.c (mswindows_windows9x_p):
+       * console-msw.h:
+       * device-msw.c (mswindows_get_workspace_coords):
+       * device-msw.c (mswindows_device_system_metrics):
+       * dialog-msw.c (mswindows_popup_dialog_box):
+       * event-msw.c (mswindows_wnd_proc):
+       * frame-msw.c (mswindows_size_frame_internal):
+       * menubar-msw.c (mswindows_translate_menu_or_dialog_item):
+       * menubar-msw.c (displayable_menu_item):
+       * menubar-msw.c (mswindows_char_is_accelerator):
+       * nt.c:
+       * nt.c (mswindows_sigset):
+       * nt.c (mswindows_sigrelse):
+       * nt.c (mswindows_sigpause):
+       * nt.c (mswindows_raise):
+       * nt.c (timer_proc):
+       * ntproc.c:
+       * ntproc.c (find_child_console):
+       * ntproc.c (sys_kill):
+       * print.c:
+       * print.c (std_handle_out_external):
+       * process-nt.c (find_child_console):
+       * process-nt.c (send_signal_the_95_way):
+       * process-nt.c (ensure_console_window_exists):
+       * process-nt.c (nt_create_process):
+       * syssignal.h:
+       rename msw_ to mswindows_ for consistency with general convention.
+
+       * emacs.c:
+       * dumper.c:
+       include nt.h, not syswindows.h.
+
+       * nt.c (mswindows_fstat):
+       * nt.c (mswindows_stat):
+       prefix mswindows_ instead of attempting to directly override the
+       library functions.  fix declarations.
+       
+       * nt.h:
+       include syswindows.h.  move some sysdep.h stuff here.
+       
+       * ntheap.h:
+       include syswindows.h, not <windows.h>.
+
+       * ntplay.c:
+       clean up headers.
+       
+       * sysdep.c:
+       clean up headers.
+       
+       * sysdep.c (sys_fstat):
+       * sysdep.c (sys_stat):
+       call mswindows versions when appropriate.
+       
+       * sysdep.h:
+       move mswin decls to nt.h.
+       
+       * syswindows.h:
+       add long comment describing appropriate use of the various windows
+       headers.
+
+2000-06-11  Ben Wing  <ben@xemacs.org>
+
+       * device-x.c: Correct doc string for sixth arg of x-get-resource.
+
+2000-06-10  Ben Wing  <ben@xemacs.org>
+
+       * Makefile.in.in (release):
+       Correction to make sure xemacs.exe always dumped when correct.
+       
+       * alloca.c:
+       * balloon_help.c:
+       [[[[3]]]]: Conditionalize on actual problem, not WINDOWSNT.
+       
+       * buffer.c (set_buffer_internal):
+       [[[[2]]]]: Remove HAVE_FEP code.
+
+       * buffer.c (init_initial_directory):
+       [3].
+       
+       * bytecode.c:
+       [[[[4]]]]: limits.h standardly included in lisp.h; remove from
+       individual files.
+       
+       * callproc.c:
+       * callproc.c (call_process_cleanup):
+       * callproc.c (Fold_call_process_internal):
+       * callproc.c (child_setup):
+       * callproc.c (getenv_internal):
+       * callproc.c (init_callproc):
+       * callproc.c (vars_of_callproc):
+       [[[[1]]]]: WINDOWSNT -> WIN32_NATIVE.
+       __CYGWIN32__ -> CYGWIN.
+       DOS_NT -> WIN32_NATIVE.
+       Remove MSDOS support/references, converting to WIN32_NATIVE
+         where correct.
+       __MINGW32__ -> MINGW.
+       Fix windows.h includes.
+       Remove bogus HAVE_NTGUI.
+
+       * config.h.in:
+       [2].
+       
+       * console-msw.c:
+       mswindows_message_outputted added for use in allowing startup
+       errors on the console to be seen.
+       
+       * console-msw.c (msw_ensure_console_allocated):
+       * console-msw.c (msw_output_console_string):
+       * console-msw.c (DHEADER):
+       * console-msw.c (DOPAQUE_DATA):
+       * console-msw.c (DEVENT):
+       * console-msw.c (DCONS):
+       * console-msw.c (DCONSCDR):
+       * console-msw.c (DSTRING):
+       * console-msw.c (DVECTOR):
+       * console-msw.c (DSYMBOL):
+       * console-msw.c (DSYMNAME):
+       Fix warnings.
+       
+       * console-stream.c (stream_init_console):
+       Fix text/binary problems.
+       
+       * device-msw.c:
+       * device-msw.c (mswindows_finish_init_device):
+       * device-msw.c (mswindows_delete_device):
+       [1].
+       
+       * device.c (handle_asynch_device_change):
+       [3].
+       
+       * dgif_lib.c:
+       * dgif_lib.c (DGifOpenFileName):
+       * dgif_lib.c (DGifOpenFileHandle):
+       * dgif_lib.c (DGifGetLine):
+       * dgif_lib.c (DGifGetPixel):
+       Added config.h/lisp.h, fix up includes.
+       [1].
+       
+       * dired-msw.c:
+       [4].
+       
+       * dired.c:
+       * dired.c (file_name_completion):
+       * dired.c (Ffile_attributes):
+       * dired.c (syms_of_dired):
+       [1].
+       
+       * dumper.c:
+       * dumper.c (pdump_file_unmap):
+       * dumper.c (pdump_load):
+       [1].
+       
+       * editfns.c:
+       * editfns.c (Ftemp_directory):
+       * editfns.c (user_login_name):
+       * editfns.c (Fuser_real_login_name):
+       * editfns.c (get_home_directory):
+       [1].
+       
+       * elhash.c (finish_marking_weak_hash_tables):
+       [[[[5]]]]: Fix GCC warnings.
+       
+       * emacs.c:
+       * emacs.c (mswindows_handle_hardware_exceptions):
+       * emacs.c (make_arg_list_1):
+       * emacs.c (main_1):
+       * emacs.c (Fkill_emacs):
+       * emacs.c (Fdump_emacs):
+       [1].
+       Fix problems with nested crashes, add long comment.
+       
+       * event-Xt.c (init_event_Xt_late):
+       [1].
+       
+       * event-msw.c:
+       * event-msw.c (mswindows_dde_callback):
+       * event-msw.c (mswindows_handle_sticky_modifiers):
+       * event-msw.c (mswindows_wnd_proc):
+       [1].
+       [5].
+       
+       * events.c (character_to_event):
+       [1].
+       
+       * fileio.c:
+       * fileio.c (Ffile_name_directory):
+       * fileio.c (Ffile_name_nondirectory):
+       * fileio.c (directory_file_name):
+       * fileio.c (Fexpand_file_name):
+       * fileio.c (Fsubstitute_in_file_name):
+       * fileio.c (Ffile_name_absolute_p):
+       * fileio.c (check_executable):
+       * fileio.c (Ffile_readable_p):
+       * fileio.c (Ffile_accessible_directory_p):
+       * fileio.c (Ffile_modes):
+       * fileio.c (Funix_sync):
+       * fileio.c (vars_of_fileio):
+       [1]. [4].
+
+       [[[[7]]]]: Move CORRECT_DIR_SEPS to s\windowsnt.h.
+       
+       Expand getdefdir defn.
+       Fix bogus rename() comment.
+
+       [[[[6]]]]: Fix Windows includes w.r.t. removed nt\inc.  Attempt
+       to use standard XEmacs include files, e.g. sysfile.h, rather
+       than system-specific includes.
+       
+       * fns.c:
+       * fns.c (Fsubseq):
+       [5]. [6].
+       
+       * frame.c (vars_of_frame):
+       [1].
+       
+       * getloadavg.c:
+       * getloadavg.c (getloadavg):
+       [1]. [6].
+       #ifdef XEMACS not defined on Cygwin.  Remove this; no need for it.
+       (We don't use it elsewhere in the code; just add a comment.)
+       
+       * gif_io.c:
+       [6].
+       Add config.h.
+       
+       * glyphs-msw.c:
+       * glyphs-msw.c (mswindows_resource_instantiate):
+       [1].
+       
+       * glyphs-x.c (x_native_layout_instantiate):
+       [5].
+       
+       * gui-msw.c (Fmswindows_shell_execute):
+       [1].
+       
+       * insdel.c:
+       [4].
+       
+       * lisp.h:
+       [4]. [5].
+       
+       * lread.c (locate_file_in_directory_mapper):
+       [1].
+       
+       * lstream.c:
+       [4].
+       
+       * mem-limits.h:
+       * mem-limits.h (get_lim_data):
+       [1].
+       
+       * menubar-msw.c:
+       [4].
+       
+       * ndir.h:
+       [1].
+       
+       * nt.c:
+       * nt.c (getwd):
+       * nt.c (closedir):
+       * nt.c (rva_to_section):
+       * nt.c (mswindows_executable_type):
+       [1]. [6].
+       Fix closedir() defn.
+       
+       * nt.h:
+       [[[[8]]]]: *_OK defs moved to sysfile.h.
+       
+       * ntproc.c:
+       [6]. [7].
+       
+       * objects-x.c:
+       [4].
+       
+       * print.c:
+       * print.c (std_handle_out_external):
+       [1]. [4].
+       
+       * process-nt.c:
+       * process-nt.c (nt_create_process):
+       [6].
+       try to fix process quoting somewhat.
+       
+       * process-unix.c (unix_create_process):
+       [1].
+       
+       * process.c:
+       * process.c (vars_of_process):
+       Add Vnull_device.
+       
+       * process.h:
+       [1].
+       
+       * realpath.c:
+       * realpath.c (xrealpath):
+       [1].
+       
+       * redisplay-tty.c (init_tty_for_redisplay):
+       [3].
+       
+       * redisplay.c:
+       [4]. [6].
+       
+       * scrollbar-msw.c:
+       [4].
+       
+       * sheap.c:
+       * sheap.c (more_static_core):
+       * sheap.c (report_sheap_usage):
+       [5]. [6].
+       
+       * signal.c:
+       * signal.c (alarm_signal):
+       [1]. [6]. 
+       
+       * sound.c:
+       [6].
+       
+       * strftime.c:
+       * strftime.c (zone_name):
+       [1]. [5].
+       
+       * symsinit.h (init_sunpro):
+       [1].
+       
+       * syscommctrl.h:
+       commctrl.h not in Cygwin b20.1.
+       
+       * sysdep.c:
+       * sysdep.c (endif):
+       * sysdep.c (sys_subshell):
+       * sysdep.c (init_baud_rate):
+       * sysdep.c (emacs_get_tty):
+       * sysdep.c (emacs_set_tty):
+       * sysdep.c (tty_init_sys_modes_on_device):
+       * sysdep.c (init_system_name):
+       * sysdep.c (sys_open):
+       * sysdep.c (interruptible_open):
+       * sysdep.c (sys_fopen):
+       * sysdep.c (sys_mkdir):
+       * sysdep.c (sys_rename):
+       * sysdep.c (get_process_times_1):
+       [1]. [6].
+       
+       * sysdep.h:
+       [1].
+       
+       * sysdir.h:
+       * sysdir.h (DIRENTRY_NONEMPTY):
+       [1]. [6].
+       
+       * sysdll.c (dll_init):
+       * sysdll.h:
+       [1].
+               
+       * sysfile.h:
+       [1]. [6]. [8].
+       added text/binary defs.
+       
+       * sysfloat.h:
+       [1].
+       
+       * sysproc.h:
+       * sysproc.h (EDESTADDRREQ):
+       * sysproc.h (poll_fds_for_input):
+       [1]. [6].
+       
+       * syspwd.h:
+       [6].
+       
+       * syssignal.h:
+       [1].
+       
+       * systime.h:
+       [1]. [6].
+       
+       * systty.h:
+       [1].
+       
+       * syswindows.h:
+       [1].
+       Always define WIN32_LEAN_AND_MEAN.
+       
+       * unexcw.c (unexec):
+       [5].
+       
+       * unexec.c:
+       * unexec.c (copy_text_and_data):
+       * unexec.c (adjust_lnnoptrs):
+       [1].
+       
+       * unexnt.c:
+       * unexnt.c (_start):
+       [1].
+       
+2000-06-07  Ben Wing  <ben@xemacs.org>
+
+       * mule-mcpath.c, mule-mcpath.h: Removed.  Old, crufty code that
+       was used only as a model.  We've long since extracted any useful
+       logic or code out of this. (I just did an exhaustive search.)
+
+       * s\msdos.h: Removed.
+
+       * s\windows95.h: Removed.
+
+2000-06-10  Ben Wing  <ben@xemacs.org>
+
+       * s\cygwin32.h:
+       [1]. [5].
+       Don't use extern with fun defs.
+       
+       * s\mingw32.h:
+       [1]. [7].
+       Remove nt\inc include.
+       Remove getdisk, getdefdir. (The former is unused, the latter
+       expanded in fileio.h.)
+       
+       * s\windowsnt.h:
+       * s\windowsnt.h (WIN32_NATIVE):
+       * s\windowsnt.h (HAVE_STRCASECMP):
+       [1]. [7].
+       Add long comment about preprocessor changes.
+       Remove getdisk, getdefdir. (The former is unused, the latter
+       expanded in fileio.h.)
+
+2000-06-10  Ben Wing  <ben@xemacs.org>
+
+       * m\arm.h:
+       * m\delta.h:
+       * m\intel386.h:
+       * m\sequent.h:
+       * m\template.h:
+       * m\windowsnt.h:
+       [1].
+       Remove bogus/unused NO_SOCK_SIGIO.
+       
+2000-06-08  Hrvoje Niksic  <hniksic@iskon.hr>
+
+       * lisp.h (set_string_char): Call set_string_byte with a Bufbyte,
+       not an Emchar.
+
+2000-06-04  Mike Sperber <mike@xemacs.org>
+
+       * casetab.c (set_case_table): For `set-standard-case-table',
+       actually deposit the new case tables where the rest of XEmacs can
+       see them.
+
+2000-06-05  Yoshiki Hayashi <yoshiki@xemacs.org>
+
+       * data.c (Faset): Don't cast XCHAR() to unsigned char.
+
+2000-06-05  Ben Wing  <ben@xemacs.org>
+
+       * callproc.c (child_setup): Don't do close_load_descs() under
+       MS Windows.  Put in a comment explaining why.
+
+2000-05-28  Adrian Aichner  <aichner@ecf.teradyne.com>
+
+       * process-nt.c: Reverting patch "Fixing nt_create_process for MKS
+       Toolkit shell" which breaks `kill-compilation' on Windows NT
+       native, retaining STDERR handling improvements.
+
+2000-06-01  Andreas Jaeger  <aj@suse.de>
+
+       * s/s390.h: Support for S390, based on a patch by Martin
+       Schwidefsky <schwidefsky@de.ibm.com>.
+
+2000-05-30  Andy Piper  <andy@xemacs.org>
+
+       * window.c (allocate_window): 
+       (make_dummy_parent): 
+       (Fset_window_configuration): use new hashtable type.
+
+       * glyphs.h (IMAGE_UNSPECIFIED_GEOMETRY): 
+       (struct image_instantiator_methods): 
+       (struct Lisp_Image_Instance): make instance geometry signed.
+
+       * glyphs.c (instantiate_image_instantiator): 
+       (image_instance_query_geometry): 
+       (image_instance_layout): 
+       (image_instance_layout): 
+       (query_string_geometry): 
+       (text_query_geometry): 
+       (image_instantiate): 
+       (image_instantiate): 
+       (cache_subwindow_instance_in_frame_maybe): 
+       (subwindow_query_geometry): make instance geometry signed.
+
+       * glyphs-widget.c (widget_query_geometry): 
+       (widget_layout): 
+       (button_query_geometry): 
+       (tree_view_query_geometry): 
+       (tab_control_query_geometry): 
+       (layout_query_geometry): 
+       (layout_layout): 
+       (native_layout_layout): make instance geometry signed.
+
+2000-05-29  Olivier Galibert  <galibert@pobox.com>
+
+       * lisp.h: Add Qfull_assoc symbol and WEAK_LIST_FULL_ASSOC
+       constant.
+
+       * general.c (syms_of_general): Add Qfull_assoc symbol.
+
+       * data.c (finish_marking_weak_lists): Mark full-assoc lists
+       correctly.
+       (decode_weak_list_type): Decode full-assoc type.
+       (encode_weak_list_type): Encode full-assoc type.
+       (Fmake_weak_list): Update doc string.
+
+2000-05-30  Andy Piper  <andy@xemacs.org>
+
+       * elhash.h (hash_table_weakness): new KEY_VALUE weak hashtable.
+
+       * elhash.c (print_hash_table): new KEY_VALUE weak hashtable.
+       (decode_hash_table_weakness): ditto.
+       (Fhash_table_weakness): ditto.
+       (Fhash_table_type): ditto.
+       (finish_marking_weak_hash_tables): ditto.
+       (hash_table_weakness_validate): ditto.
+       (syms_of_elhash): ditto.
+
+2000-05-28  Martin Buchholz <martin@xemacs.org>
+
+       * XEmacs 21.2.34 is released.
+
+2000-05-22  Jan Vroonhof  <vroonhof@math.ethz.ch>
+
+       * redisplay.c (VERTICAL_CLIP): No longer reset when updating line
+       start cache.
+       (updating_line_start_cache): Gone.
+       (regenerate_window): Replace resetting of VERTICAL_CLIP by
+       generic code to force a minimum of 1 line laid out in the
+       CMOTION_DISP case.
+
+2000-05-22  Jan Vroonhof  <vroonhof@math.ethz.ch>
+
+       * glyphs.c (instantiate_image_instantiator): Check for initialized
+       height & width no longer special cases IMAGE_NOTHING.
+       (nothing_instantiate): Set height and width of instance.
+
+2000-05-24  Yoshiki Hayashi  <yoshiki@xemacs.org>
+
+       * unexelf.c (unexec): Search for ".data" section.
+       Initialize new_data2_offset from old_data_index.
+       Remove redundant check for ElfW.
+
+2000-05-23  Andy Piper  <andy@xemacs.org>
+
+       * glyphs.c (get_image_instantiator_governing_domain): allow more
+       specific domains as the governing domain rather than expecting an
+       exact match. This fixes problems with layouts.
+
+2000-05-22  Andy Piper  <andy@xemacs.org>
+
+       * redisplay-output.c (compare_runes): check for non-images
+
+       * glyphs.c (set_glyph_dirty_p): ditto.
+       (update_glyph_cachel_data): ditto.
+
+       * glyphs-widget.c (layout_post_instantiate): ditto.
+       (layout_post_instantiate): ditto.
+
+       * event-msw.c (mswindows_wnd_proc): warning removal.
+
+2000-05-12  Craig Lanning  <CraigL@DyCon.com>
+
+       * s\mingw32.h: Added #undef for CLASH_DETECTION.
+
+       * syswindows.h: Moved PBS_SMOOTH definition to syscommctrl.h.
+
+       * syscommctrl.h (PBS_SMOOTH): Moved from syswindows.h.
+
+       * nt.c (rva_to_section): mingw32 needs rva_to_section.
+       (mswindows_executable_type): mingw32 now has enough headers for
+       this to work.
+
+2000-05-20  Andy Piper  <andy@xemacs.org>
+
+       * console-msw.c (mswindows_output_last_error): ; -> ,
+
+2000-05-12  Andy Piper  <andy@xemacs.org>
+
+       * console-msw.c (FROB): compare ints with ints.
+
+2000-05-11  Andy Piper  <andy@xemacs.org>
+
+       * glyphs-x.c (x_finalize_image_instance): make minimal build
+       happy.
+
+2000-05-20  Ben Wing  <ben@xemacs.org>
+
+       * event-Xt.c:
+       * event-Xt.c (vars_of_event_Xt):
+       move modifier-keys-are-sticky to event-stream.c.
+       
+       * event-msw.c:
+       * event-msw.c (mswindows_enqueue_mouse_button_event):
+       * event-msw.c (key_needs_default_processing_p):
+       * event-msw.c (XEMSW_LCONTROL):
+       * event-msw.c (mswindows_handle_sticky_modifiers):
+       * event-msw.c (FROB):
+       * event-msw.c (clear_sticky_modifiers):
+       * event-msw.c (output_modifier_keyboard_state):
+       * event-msw.c (output_alt_keyboard_state):
+       * event-msw.c (mswindows_wnd_proc):
+       * event-msw.c (mswindows_modifier_state):
+       * event-msw.c (emacs_mswindows_handle_magic_event):
+       implement sticky modifiers.
+       
+       * event-stream.c:
+       * event-stream.c (vars_of_event_stream):
+       move modifier-keys-are-sticky here.
+
+       * lisp.h:
+       add CHECK_FUNCTION.
+       
+       * rangetab.c:
+       implement map-range-table.
+
+
+2000-05-17  Yoshiki Hayashi  <yoshiki@xemacs.org>
+
+       * redisplay-tty.c (reset_tty_modes):
+       (tty_redisplay_shutdown): Adjust argument type to
+       tty_frame_output_end.
+
+2000-05-11  Yoshiki Hayashi  <yoshiki@xemacs.org>
+
+       * eval.c (Fbacktrace): Don't output a line with only right
+       parenthesis.
+
+2000-05-17  Kenji Itoh  <keit@tpj.co.jp>
+
+       * postgresql.c (Fpq_connect_poll): Replace `PS' with `polling_status'.
+       (Fpq_reset_poll): Ditto.
+
+2000-05-16  Katsumi Yamaoka  <yamaoka@jpl.org>
+
+       * redisplay-tty.c: Replace tty_output_end with tty_frame_output_end.
+
+2000-05-16  Ben Wing  <ben@xemacs.org>
+
+       * buffer.c:
+       * buffer.c (dfc_convert_to/from_internal_format):
+       * buffer.c (reinit_vars_of_buffer):
+       Fix conversion functions to allow reentrancy.
+       
+       * console-msw.c:
+       * console-msw.c (mswindows_output_last_error):
+       New fun, generally useful -- output a human-readable
+       version of GetLastError() on the console.
+       
+       * console-msw.h:
+       * console-msw.h (struct mswindows_frame):
+       Changes for DeferWindowPos.  Declare mswindows_output_last_error().
+       
+       * console-stream.c (stream_output_begin):
+       * console-stream.c (stream_output_end):
+       * console-stream.c (stream_output_vertical_divider):
+       * console-stream.c (stream_clear_region):
+       * console-stream.c (stream_flash):
+       * console-stream.c (console_type_create_stream):
+       Delete blank stream methods, not needed.
+       
+       * console.h (struct console_methods):
+       Split begin/end methods into window and frame.
+       
+       * event-msw.c:
+       * event-msw.c (mswindows_handle_paint):
+       * event-msw.c (output_alt_keyboard_state):
+       * event-msw.c (mswindows_wnd_proc):
+       * event-msw.c (vars_of_event_mswindows):
+       Comment about problems with ignored-expose.
+       Define mswindows-debug-events; not really implemented.
+       
+       * frame-msw.c (mswindows_init_frame_1):
+       random cleanups.
+       
+       * glyphs-msw.c:
+       * glyphs-msw.c (begin_defer_window_pos):
+       * glyphs-msw.c (mswindows_unmap_subwindow):
+       * glyphs-msw.c (mswindows_map_subwindow):
+       * glyphs-msw.c (mswindows_resize_subwindow):
+       Use DeferWindowPos to reduce flashing when mapping/unmapping.
+       
+       * glyphs.c (make_image_instance_1):
+       Fix crash.
+       
+       * gutter.c (Fredisplay_gutter_area):
+       Use new begin/end methods.
+       
+       * lisp.h (Dynarr_new2):
+       New creation fun.
+       
+       * redisplay-msw.c:
+       * redisplay-msw.c (mswindows_frame_output_begin):
+       * redisplay-msw.c (mswindows_frame_output_end):
+       * redisplay-msw.c (console_type_create_redisplay_mswindows):
+       New begin/end methods -- handle DeferWindowPos.
+       
+       * redisplay-output.c (redisplay_move_cursor):
+       * redisplay-output.c (redraw_cursor_in_window):
+       * redisplay-output.c (redisplay_update_line):
+       * redisplay-output.c (redisplay_output_window):
+       New begin/end methods.
+
+       * redisplay-tty.c:
+       * redisplay-tty.c (tty_frame_output_begin):
+       * redisplay-tty.c (tty_frame_output_end):
+       * redisplay-tty.c (console_type_create_redisplay_tty):
+       New begin/end methods.
+
+       * redisplay-x.c:
+       * redisplay-x.c (x_window_output_begin):
+       * redisplay-x.c (x_window_output_end):
+       * redisplay-x.c (console_type_create_redisplay_x):
+       New begin/end methods.
+
+       * redisplay.c (redisplay_frame):
+       * redisplay.c (Fredisplay_echo_area):
+       New begin/end methods.
+       use MAYBE_DEVMETH for clear_frame; it may not exist.
+
+       * window.h (WINDOW_XFRAME):
+       WINDOW_XFOO macros -- get locale and decode struct pointer.
+
+
+2000-05-12  Ben Wing  <ben@xemacs.org>
+
+       * emacs.c:
+       * emacs.c (ensure_no_quitting_from_now_on):
+       * emacs.c (fatal_error_signal):
+       * emacs.c (mswindows_handle_hardware_exceptions):
+       * emacs.c (main):
+       * emacs.c (Fkill_emacs):
+       * emacs.c (shut_down_emacs):
+       * emacs.c (assert_failed):
+       various improvements in fatal error handling.
+       
+       * eval.c:
+       move preparing_for_armageddon to emacs.c.
+       
+       * lisp.h:
+       declare fatal_error_in_progress.
+       
+       * print.c:
+       * print.c (std_handle_out_external):
+       * print.c (std_handle_out_va):
+       * print.c (stderr_out):
+       * print.c (stdout_out):
+       use console under mswin when no standard output.
+       don't do code conversion during fatal error.
+       
+       * scrollbar.c (Fscrollbar_page_up):
+       * scrollbar.c (Fscrollbar_page_down):
+       fix missing else.  reindent.
+
+2000-05-11  Jan Vroonhof  <vroonhof@math.ethz.ch>
+
+       Emergency fix.  
+       
+       * glyphs.h (GLYPH_CACHEL_DESCENT): 
+       (GLYPH_CACHEL_DESCENT): 
+       (GLYPH_CACHEL_DESCENT): 
+       * glyphs.h (GLYPH_CACHEL_ASCENT): Match parameters to variables
+       used in case these are inline functions.
+       Use more absurd values to error check.
+
+       include window.h for error check functions.
+
+2000-05-11  Ben Wing  <ben@xemacs.org>
+
+       * cmdloop.c (Freally_early_error_handler):
+       Display message box under windows; otherwise, message will disappear
+       before it can be viewed.
+
+       * console-msw.c:
+       * console-msw.c (Fmswindows_message_box):
+       * console-msw.c (FROB):
+       * console-msw.c (syms_of_console_mswindows):
+       Define new fun `mswindows-message-box'.
+       #### I will merge this into `popup-dialog-box'; just give me
+       a bit of time.
+       
+       * general.c:
+       * general.c (syms_of_general):
+       Some new symbols used in `mswindows-message-box'.
+       
+       * glyphs.c:
+       * glyphs.c (Fset_image_instance_property):
+       put warning in this fun.
+       
+       * glyphs.h:
+       * glyphs.h (GLYPH_CACHEL_WIDTH):
+       * glyphs.h (GLYPH_CACHEL_ASCENT):
+       * glyphs.h (GLYPH_CACHEL):
+       * glyphs.h (GLYPH_CACHEL_GLYPH):
+       define error-checking versions to try to catch a bug i've seen --
+       redisplay gets in an infinite loop because the glyph width of the
+       continuation glyph is 65535.
+       
+       * lisp.h:
+       Extern message-box stuff.
+
+       * window.c (allocate_window):
+       * window.c (make_dummy_parent):
+       * window.c (Fset_window_configuration):
+       Use EQUAL not EQ for subwindow caches to make them work a bit
+       better. (Something is still very broken.)
+       
+
+2000-05-11  Yoshiki Hayashi  <yoshiki@xemacs.org>
+
+       * glyphs.c (image_instantiate): Suppress gcc warnings.
+       (Fmake_image_instance): Fix doc string.
+       * specifier.c (Fmake_specifier): Ditto.
+
+2000-05-02  Yoshiki Hayashi  <yoshiki@xemacs.org>
+
+       * paths.h.in (PATH_LOCK): Removed.
+       * config.h.in (LOCKDIR_USER_DEFINED): Removed.
+       * emacs.c (complex_vars_of_emacs): Remove configure-lock-directory.
+
+2000-05-08  Yoshiki Hayashi  <yoshiki@xemacs.org>
+
+       * fns.c (Ffeaturep): Update e-mail address in doc-string.
+       Document (featurep '(and xemacs 21.02)).
+
+2000-05-09  Ben Wing  <ben@xemacs.org>
+
+       * buffer.c (complex_vars_of_buffer):
+       update modeline-format doc.
+       
+       * device.h:
+       comment about how DFW_DEVICE should be merged with DOMAIN_DEVICE.
+       
+       * emacs.c:
+       timeline of all released versions of Emacs, for use in creating
+       authorship comments and in synching up.
+       
+       * glyphs-widget.c (image_instantiator_buttons):
+       * glyphs-widget.c (image_instantiator_edit_fields):
+       * glyphs-widget.c (image_instantiator_combo_box):
+       * glyphs-widget.c (image_instantiator_scrollbar):
+       * glyphs-widget.c (image_instantiator_progress_guage):
+       * glyphs-widget.c (image_instantiator_tree_view):
+       * glyphs-widget.c (image_instantiator_tab_control):
+       * glyphs-widget.c (image_instantiator_labels):
+       * glyphs-widget.c (image_instantiator_layout):
+       * glyphs-widget.c (image_instantiator_native_layout):
+       rename decode_domain method to governing_domain.
+       
+       * glyphs.c:
+       * glyphs.c (Fvalid_image_instantiator_format_p): doc update.
+       * glyphs.c (add_entry_to_device_ii_format_list):
+       make sure we don't put an entry more than once into the list.
+       * glyphs.c (check_instance_cache_mapper):
+       *************************************************************
+       allow for nil.  THIS SHOULD FIX A REAL CRASH THAT MANY PEOPLE
+       HAVE BEEN GETTING.
+       *************************************************************
+       * glyphs.c (get_image_instantiator_governing_domain):
+       clean up, expand on new concept of governing domain.
+       * glyphs.c (instantiate_image_instantiator):
+       * glyphs.c (allocate_image_instance):
+       use governing_domain instead of cache_domain in naming.
+       * glyphs.c (Fvalid_image_instance_type_p): fix docs.
+       * glyphs.c (make_image_instance_1):
+       * glyphs.c (Fmake_image_instance):
+       allow for any domain (not just device), and process the
+       governing domain correctly.  very big doc fix.
+       * glyphs.c (Fimage_instance_domain):
+       new primitive, to retrieve the governing domain of an image instance.
+       * glyphs.c (image_instantiate):
+       use new governing_domain stuff.  this fixes a crash you could get
+       by instantiating certain widget glyphs in frame locales. (should
+       signal an error instead of crashing.)
+       * glyphs.c (Fimage_specifier_p): move doc to make-image-specifier.
+       * glyphs.c (Fglyphp): clean up doc.
+       * glyphs.c (subwindow_governing_domain): renamed from *_decode_domain.
+       * glyphs.c (syms_of_glyphs):
+       declare Fimage_instance_domain, remove unused Qlayout_image_instance_p.
+       * glyphs.c (image_instantiator_format_create): add some comments about
+       bogus code.
+       * glyphs.c (specifier_vars_of_glyphs): totally rewrite the doc string
+       for current-display-table. (Apparently Hrjove implemented in 1998 a
+       design I wrote up in 1996, but didn't update the doc string.)
+       
+       * glyphs.h: clean up a doc string.
+       * glyphs.h (governing_domain):
+       * glyphs.h (struct image_instantiator_methods):
+       changes for governing_domain stuff.
+       
+       * gutter.c:
+       * gutter.c (Fgutter_specifier_p):
+       * gutter.c (Fgutter_size_specifier_p):
+       * gutter.c (Fgutter_visible_specifier_p):
+       * objects.c:
+       * objects.c (Fcolor_specifier_p):
+       * objects.c (Ffont_specifier_p):
+       * objects.c (Fface_boolean_specifier_p):
+       doc strings moved to make-*-specifier.
+       
+       * redisplay.c (add_disp_table_entry_runes_1):
+       * redisplay.c (generate_fstring_runes):
+       * redisplay.c (screen):
+       add random comments and doc strings.
+       
+       * specifier.c:
+       * specifier.c (Fmake_specifier):
+       major overhaul of this doc string.
+       
+       * specifier.c (Fvalid_specifier_domain_p):
+       comment about the bogosity of image instances being domains.
+       * specifier.c (decode_domain):
+       now non-static, used in glyphs.c.
+       * specifier.c (specifier_instance):
+       comment about the bogosity of image instances being domains.
+       * specifier.c (Fgeneric_specifier_p):
+       move doc string to make-generic-specifier.
+       * specifier.c (VALID_SINGLE_DISPTABLE_INSTANTIATOR_P):
+       rebackslashify.
+       
+       * specifier.h:
+       * specifier.h (DOMAIN_FRAME):
+       * specifier.h (DOMAIN_LIVE_P):
+       * specifier.h (DOMAIN_XDEVICE):
+       rebackslashify.
+       add comments about problems with these macros.
+       prototype for decode_domain.
+       
+       * toolbar.c:
+       * toolbar.c (Ftoolbar_specifier_p):
+       move doc string to `make-toolbar-specifier'.
+       
+       * window.c (window_unmap_subwindows_cache_mapper):
+       *************************************************************
+       allow for nil.  THIS SHOULD FIX A REAL CRASH THAT MANY PEOPLE
+       HAVE BEEN GETTING.
+       *************************************************************
+
+2000-05-09  Andy Piper  <andy@xemacs.org>
+
+       * glyphs.h: declare reset_frame_subwindow_instance_cache.
+
+       * window.c (Fset_window_configuration): reset the frame subwindow
+       cache and re-initialize the window subwindow caches.
+
+       * glyphs.c (reset_frame_subwindow_instance_cache): new function.
+
+2000-05-09  Ben Wing  <ben@xemacs.org>
+
+       * ntheap.c (recreate_heap): Changed unknown (VC6 only?) SIZE_T to
+       DWORD.
+
+2000-04-26  Mike Woolley  <mike@bulsara.com>
+
+       * ntheap.c: Changed recreate_heap to limit the amount reserved
+       for the heap to that which is actually available. Also now
+       displays a message box (with some dignostics) in the event that
+       it still can't start.
+
+2000-05-07  Jan Vroonhof  <vroonhof@math.ethz.ch>
+
+       * callproc.c (Fold_call_process_internal): GCPRO path
+
+2000-05-08  Jan Vroonhof  <jan@xemacs.org>
+
+       Patch by Bill Perry.
+       
+       * scrollbar.c (Fscrollbar_page_up): Conditionalize on type of call 
+       back data instead of #ifdef.
+       (Fscrollbar_page_down): ditto.
+
+2000-05-07  Ben Wing  <ben@xemacs.org>
+
+       * buffer.h:
+       Kludge for defining Qmswindows_tstr.
+       
+       * nt.c:
+       * nt.c (open_input_file):
+       * nt.c (open_output_file):
+       * nt.c (rva_to_section):
+       * nt.c (mswindows_executable_type):
+       Move all memory-mapped-file routines here (some were in unexnt.c,
+       which is bad because they are used by process-nt.c, and unexnt
+       won't be around when portable dumping).  Synched the above routines
+       with FSF 20.6.
+       
+       * nt.h:
+       Removed ifdef'd out bogus code.
+       Fixed some prototypes.
+       
+       * nt.h (file_data):
+       * nt.h (OFFSET_TO_RVA):
+       * nt.h (RVA_TO_OFFSET):
+       * nt.h (RVA_TO_PTR):
+       Moved the memory-mapped-file structures, macros and prototypes
+       here, to parallel nt.c.  ntheap.h should really be removed
+       entirely, and it's a non-portable-dumper specific file.
+       
+       * ntheap.h (round_to_next):
+       Moved the memory-mapped-file structures, macros and prototypes
+       to nt.h.
+
+       * ntproc.c (compare_env):
+       Moved rva_to_section and mswindows_executable_type to nt.c.
+       Moved compare_env to process-nt.c.
+       ntproc.c will die, one day.
+
+       * ntproc.c (sys_spawnve):
+       Account for win32_ -> mswindows_.
+
+       * process-nt.c:
+       * process-nt.c (struct nt_process_data):
+       * process-nt.c (ensure_console_window_exists):
+       * process-nt.c (compare_env):
+       * process-nt.c (nt_create_process):
+       * process-nt.c (nt_kill_process_by_pid):
+       * process-nt.c (syms_of_process_nt):
+       * process-nt.c (vars_of_process_nt):
+       Introduce variable `mswindows-quote-process-args', from FSF 20.6.
+       Copy argument quoting code from FSF 20.6 (with appropriate Mule-ization
+       changes).  Eliminate our old `nt-quote-process-args' mechanism.
+       Synch up nt_create_process with FSF 20.6 sys_spawnve.
+       Move compare_env here from ntproc.c.
+       
+       * process.c (Fprocess_send_region):
+       Takes an optional fourth argument, BUFFER, which should fix some
+       problems with call-process.
+       
+       * syscommctrl.h:
+       Move ICC_BAR_CLASSES here from syswindows.h, to avoid a warning.
+       
+       * syswindows.h:
+       Move ICC_BAR_CLASSES to syscommctrl.h.
+       Add preliminary macros for MSWindows/Mule.  More to come.
+
+       * unexnt.c:
+       * unexnt.c (unexec):
+       open_output_file moved to nt.c.
+
+
+2000-05-05  Andy Piper  <andy@xemacs.org>
+
+       * window.c (window_unmap_subwindows_cache_mapper): remove the dead
+       instance from the frame cache also since GC may catch up too late
+       to make frame deletion sane.
+
+2000-05-04  Andy Piper  <andy@xemacs.org>
+
+       * glyphs-x.c (x_widget_instantiate): gcpro widget callbacks.
+       (x_finalize_image_instance): ungcpro on deletion.
+
+       * glyphs.c (image_instantiator_format_create): give pointers a
+       query geometry method so that the geometry is at least set.
+
+       * glyphs-x.c (image_instantiator_format_create_glyphs_x): only
+       initialize layouts if using widgets.
+
+2000-05-03  Andy Piper  <andy@xemacs.org>
+
+       * nt.c: remove bogus reference to sysmmsystem.h
+
+       * gui-x.c (popup_selection_callback): fix no selection abort.
+
+2000-05-02  Andy Piper  <andy@xemacs.org>
+
+       * glyphs-msw.c (mswindows_update_widget): cope with nil text.
+       (mswindows_widget_instantiate): ditto.
+
+       * glyphs-widget.c (initialize_widget_image_instance): initialize
+       children correctly.
+       (widget_instantiate): cope with children and items in the same
+       instance.
+
+       * glyphs.c (mark_image_instance): cope with children as a first
+       class member.
+       (image_instance_equal): ditto.
+       (image_instance_hash): ditto.
+       (image_instance_changed): ditto.
+
+2000-04-30  Andy Piper  <andy@xemacs.org>
+
+       * glyphs.c (subwindow_query_geometry): new function. Return some
+       defaults.
+       (subwindow_instantiate): don't assign dimensions if none have been
+       given.
+       (image_instantiator_format_create): add subwindow_query_geometry.
+       (print_image_instance): cope with layouts as widgets.
+
+2000-04-29  Andy Piper  <andy@xemacs.org>
+
+       * frame.c (delete_frame_internal): call
+       free_frame_subwindow_instance_cache so that all subwindows are
+       finalized before their parent.
+       (mark_frame): remove subwindow_cachels.
+       (Fmake_frame): remove subwindow_cachel manipulation.
+       (allocate_frame_core): subwindow_instance_cache is a weak list.
+       (delete_frame_internal): set subwindow_instance_cache to nil.
+
+       * glyphs-msw.c (mswindows_finalize_image_instance): make double
+       finalization safe.
+       (mswindows_finalize_image_instance): use the device
+       not the domain as the domain may have died already.
+
+       * glyphs-x.c (x_finalize_image_instance): ditto.
+       (x_subwindow_instantiate): remove SUBWINDOW_WIDTH &
+       HEIGHT.
+
+       * redisplay-output.c (redisplay_unmap_subwindows): update for
+       subwindow instance cache as a weak list.
+       (redisplay_unmap_subwindows_maybe): ditto.
+       (redisplay_unmap_subwindows_except_us): ditto.
+
+       * glyphs.c (unmap_subwindow): error checking will check the domain
+       so don't deal with it here. Don't use cachels anymore.
+       (map_subwindow): ditto.
+       (update_subwindow_cachel_data): remove old accessor names.
+       (subwindow_instantiate): remove SUBWINDOW_WIDTH & HEIGHT.
+       (Fresize_subwindow): don't update cachel.
+       (mark_subwindow_cachels):
+       (update_subwindow_cachel_data):
+       (add_subwindow_cachel):
+       (get_subwindow_cachel_index):
+       (update_subwindow_cachel):
+       (reset_subwindow_cachels):
+       (mark_subwindow_cachels_as_not_updated): deleted.
+       (cache_subwindow_instance_in_frame_maybe): new function. Add a
+       subwindow instance to the frame cache.
+       (find_matching_subwindow): update for subwindow instance cache as
+       a weak list.
+       (update_widget_instances): ditto.
+       (image_instance_type_to_mask):inlined.
+       (free_frame_subwindow_instance_cache): new function. finalize all
+       subwindows that are instantiated.
+
+       * glyphs.h (struct Lisp_Image_Instance): add display_data instead
+       of cachel information.
+       (IMAGE_INSTANCE_DISPLAY_X):
+       (IMAGE_INSTANCE_DISPLAY_Y):
+       (IMAGE_INSTANCE_DISPLAY_WIDTH):
+       (IMAGE_INSTANCE_DISPLAY_HEIGHT):
+       (XIMAGE_INSTANCE_DISPLAY_X):
+       (XIMAGE_INSTANCE_DISPLAY_Y):
+       (XIMAGE_INSTANCE_DISPLAY_WIDTH):
+       (XIMAGE_INSTANCE_DISPLAY_HEIGHT): new accessors.  
+       remove subwindow_cachel structure and function references.
+       (image_instance_type_to_mask): inline from glyphs.c
+
+       * redisplay.c (redisplay_frame): remove subwindow_cachel
+       references.
+
+       * frame.h (struct frame): remove subwindow_cachels.
+       (FRAME_SUBWINDOW_CACHE): access subwindow_instance_cache.
+
+       * frameslots.h: add subwindow_instance_cache.
+
+       * window.c (replace_window): check subwindow cache of replacement.
+       (window_unmap_subwindows_cache_mapper):
+       (window_unmap_subwindows): new functions. Unmap all subwindows
+       cached on this window.
+       (mark_window_as_deleted): unmap all subwindows.
+
+2000-04-27  Andy Piper  <andy@xemacs.org>
+
+       * glyphs.h (IIFORMAT_METH_OR_GIVEN): cope with null meths.
+
+       * glyphs-widget.c (widget_layout): return something.
+       (layout_layout): return something. Fail if not intialized.
+       (layout_query_geometry): ditto.
+       (image_instantiator_native_layout): new function. Initialized the
+       native layout type.
+       (widget_instantiate): don't do layout stuff here.
+
+       * glyphs.c (instantiate_image_instantiator): reorded calling or
+       instantiate and post_instantiate with layout in between.
+       (image_instance_layout): be more selective about deciding whether
+       the layout has been done or not.
+
+       * glyphs.h (struct image_instantiator_methods): return a value
+       from layout_method.
+
+2000-04-26  Andy Piper  <andy@xemacs.org>
+
+       * glyphs.c (allocate_image_instance): make initial width and
+       height unspecified. Set initialized to 0.
+
+       * syscommctrl.h new file. Encapsulates commctrl.h.
+
+       * syswindows.h new file. Encapsulates windows.h.
+
+       * ntplay.c: use new syswindows.h and syscommctrl.h header.
+       * nt.c: ditto.
+       * console-msw.h: ditto.
+       
+       * redisplay-tty.c (tty_output_display_block): remove layout references.
+
+       * glyphs-msw.c (mswindows_widget_instantiate): use the domain
+       window handle rather than just the frame.
+
+       * glyphs.c (mark_image_instance): remove layout references.
+       (print_image_instance): ditto.
+       (image_instance_equal): ditto.
+       (image_instance_hash): ditto.
+       (decode_image_instance_type): ditto.
+       (encode_image_instance_type): ditto.
+       (image_instantiate): ditto.
+       (allocate_glyph): ditto.
+       (Fimage_instance_height): ditto.
+       (Fimage_instance_width): ditto.
+       (update_subwindow): ditto.
+
+       * redisplay-x.c (x_output_display_block): recode for layouts as
+       widgets.
+
+       * redisplay-output.c (redisplay_output_layout): recode for layouts
+       as widgets.
+       (compare_runes): remove layout references.
+
+       * redisplay-msw.c (mswindows_output_display_block): recode for
+       layouts as widgets.
+
+       * glyphs-widget.c (image_instantiator_layout): remove
+       layout_possible_dest_types.
+       (layout_possible_dest_types): deleted.
+
+       * glyphs.h (image_instance_type): remove layout references.
+       (struct Lisp_Image_Instance): ditto. Add initialized flag.
+       (IMAGE_INSTANCE_INITIALIZED): new accessor.
+       (XIMAGE_INSTANCE_INITIALIZED): ditto.
+       
+2000-04-25  Andy Piper  <andy@xemacs.org>
+
+       * glyphs-widget.c (image_instantiator_buttons):
+       (image_instantiator_edit_fields):
+       (image_instantiator_combo_box):
+       (image_instantiator_scrollbar):
+       (image_instantiator_progress_guage):
+       (image_instantiator_tree_view):
+       (image_instantiator_tab_control):
+       (image_instantiator_labels):
+       (image_instantiator_layout): call default post_instantiate method.
+       (widget_post_instantiate): new function. Simply lays out the
+       widgets.
+
+       * glyphs.h (struct image_instantiator_methods): add
+       post_instantiate method.
+
+       * glyphs.c (instantiate_image_instantiator): add post_instantiate
+       method calls.
+
+2000-04-23  Andy Piper  <andy@xemacs.org>
+
+       * glyphs.h (struct image_instantiator_methods): add
+       decode_domain_method.
+       (struct Lisp_Image_Instance): remove subwindow frame - it can be
+       derived from the domain.
+       (IMAGE_INSTANCE_FRAME): new accessor.
+       (XIMAGE_INSTANCE_FRAME): ditto.
+
+       * glyphs.c (print_image_instance): use IMAGE_INSTANCE_FRAME
+       instead of _SUBWINDOW_FRAME.
+       (finalize_image_instance): ditto.
+       (Fimage_instance_foreground): ditto.
+       (Fimage_instance_background): ditto.
+       (image_instantiate): ditto.
+       (update_subwindow_cachel): ditto.
+       (update_subwindow): ditto.
+       (unmap_subwindow): ditto.
+       (map_subwindow): ditto
+       (subwindow_instantiate): ditto.
+       * glyphs-msw.c (mswindows_update_widget): ditto.
+       (mswindows_progress_gauge_instantiate): ditto.
+       (mswindows_tab_control_update): ditto.
+       * glyphs-x.c (x_update_widget): ditto.
+       (x_widget_instantiate): ditto.
+       (x_tab_control_instantiate): ditto.
+       (x_tab_control_update): ditto.
+       * event-msw.c (mswindows_wnd_proc): ditto
+
+       * glyphs-widget.c (image_instantiator_layout): use
+       subwindow_decode_domain.
+       (image_instantiator_buttons): ditto.
+       (image_instantiator_edit_fields): ditto.
+       (image_instantiator_combo_box): ditto.
+       (image_instantiator_scrollbar): ditto.
+       (image_instantiator_progress_guage): ditto.
+       (image_instantiator_tree_view): ditto.
+       (image_instantiator_tab_control): ditto.
+       (image_instantiator_labels): ditto.
+       (image_instantiator_layout): ditto.
+
+       * glyphs.c: add instance error checking to many functions.
+       (instantiate_image_instantiator): decode device from cache_domain.
+       (image_instantiate): partially rewrite by using
+       decode_image_instantiator_domain to determine what domain the
+       instance needs to be cached in.
+       (decode_image_instantiator_domain): new function. Determine what
+       domain the image needs to be cached in.
+       (check_window_subwindow_cache): new error checking function.
+       (check_instance_cache_mapper): ditto.
+       (check_image_instance_structure): ditto.
+       (subwindow_decode_domain): new function. Encodes a window as a
+       subwindow's cache domain.
+       (image_instantiator_format_create): use it for text and
+       subwindows.
+
+2000-04-21  Andy Piper  <andy@xemacs.org>
+
+       * glyphs.c (image_instance_device): new function.
+       (image_instance_frame): new function.
+       (image_instance_window): new function.
+       (image_instance_live_p): new function.
+
+       * window.c (mark_window_as_deleted): reset the subwindow_instance_
+       cache to nil.
+
+       * glyphs.h (struct Lisp_Image_Instance): device->domain.
+       (IMAGE_INSTANCE_DOMAIN): new accessor.
+       (XIMAGE_INSTANCE_DOMAIN): ditto.
+
+       * glyphs-x.c (x_finalize_image_instance): device->domain.
+
+       * glyphs-msw.c (init_image_instance_geometry): device->domain.
+       (mswindows_finalize_image_instance): ditto.
+
+       * glyphs-eimage.c (jpeg_instantiate): device->domain.
+       (gif_instantiate): ditto.
+       (png_instantiate): ditto.
+       (tiff_instantiate): ditto.
+
+       * glyphs.c (instantiate_image_instantiator): use domain rather
+       than device.
+       (mark_image_instance): device -> domain.
+       (print_image_instance): ditto.
+       (finalize_image_instance): ditto.
+       (image_instance_equal): ditto.
+       (allocate_image_instance): ditto.
+       (Fcolorize_image_instance): ditto.
+       (query_string_geometry): ditto.
+       (image_instantiate): ditto
+       (query_string_font): ditto.
+       (image_instantiate): ditto.
+       (update_subwindow): ditto.
+       (unmap_subwindow): ditto.
+       (map_subwindow): ditto.
+       (subwindow_instantiate): ditto.
+
+       * specifier.h (DOMAIN_DEVICE): new, semantically correct, decoder.
+       (DOMAIN_FRAME): ditto.
+       (DOMAIN_WINDOW): ditto.
+       (DOMAIN_LIVE_P): ditto.
+       (XDOMAIN_DEVICE): ditto.
+       (XDOMAIN_FRAME): ditto.
+       (XDOMAIN_WINDOW): ditto.
+
+       * specifier.c (Fvalid_specifier_domain_p): add image instances as
+       a valid specifier domain.
+
+2000-04-19  Andy Piper  <andy@xemacs.org>
+
+       * glyphs-widget.c (syms_of_glyphs_widget): remove
+       widget-callback-current-channel.
+       (vars_of_glyphs_widget): ditto.
+       * glyphs.h: ditto
+
+       * gui.c (get_gui_callback): revert to previous behaviour.
+
+2000-04-18  Andy Piper  <andy@xemacs.org>
+
+       * glyphs.h (struct Lisp_Image_Instance): add margin_width.
+       (IMAGE_INSTANCE_MARGIN_WIDTH): new.
+       (XIMAGE_INSTANCE_MARGIN_WIDTH): new.
+
+       * glyphs.c (image_instance_equal): add margin_width.
+       (image_instance_hash): ditto.
+
+       * glyphs-widget.c (widget_instantiate): deal with margin-width.
+       (layout_query_geometry): ditto.
+       (layout_layout): ditto.
+       (syms_of_glyphs_widget): add margin-width.
+       (image_instantiator_layout): allow margin-width.
+
+       * glyphs.c (update_widget_instances): make a normal function.
+       (syms_of_glyphs): remove Qupdate_widget_instances.
+       * glyphs.h: ditto.
+
+       * gui-x.c (popup_selection_callback): use enqueue_magic_eval_event
+       so that we don't corrupt ideas about the last event or
+       command. Remove widget-callback-current-channel fiddling.
+       * gui-msw.c (mswindows_handle_gui_wm_command): ditto.
+
 2000-05-01  Martin Buchholz <martin@xemacs.org>
 
        * XEmacs 21.2.33 is released.