no map for meta_prefix_char, don't try to use it as a keymap.
Instead, if T_OK is non-zero, look up a default binding, if any,
otherwise, if T_OK is zero, return nil.
(ALIGN): New macro.
(pure_alloc): New function.
(make_pure_string, pure_cons, make_pure_float, make_pure_vector):
Use it.
(Fpurecopy): Use PURE_POINTER_P.
string's size_byte.
(check_string_bytes) [GC_CHECK_STRING_BYTES]: New function.
(check_string_bytes_count) [GC_CHECK_STRING_BYTES]: New variable.
(allocate_string) [GC_CHECK_STRING_BYTES]: Call it for every 10th
string allocated.
face, and invert colors if these faces' colors are identical.
(Fmsdos_remember_default_colors): Don't swap foreground and
background colors in initial_colors[].
(IT_set_frame_parameters): Don't swap frame's foreground and
background pixels. If ALIST includes "(reverse . t)", swap
foreground-color and background-color properties in frame's
param_alist. If the original frame's param_alist doesn't specify
the colors, store unspecified-fg and unspecified-bg, reversed if
required.
get_last_unchanged_at_beg_row.
(find_first_unchanged_at_end_row): Renamed from
get_first_unchanged_at_end_row.
(find_first_unchanged_at_end_row): Convert assertions to
unconditional tests which abort. When looking for a row in
unchanged text, don't go further back than first_text_row.
(Fmodify_syntax_entry): Use it and document the ! and | fences.
(skip_chars, Fforward_comment): Remove unused variables.
(syms_of_syntax): Add defsubr for string-to-syntax.
Do the meta->esc mapping. Call get_keyelt before returning.
Start scanning from the second element (the first is always `keymap')
to make it easier to detect when we reach a parent map.
Handle the case of inheriting from a symbol whose function is a map.
(Fkeymap_parent): Also handle the `inherit from symbol' case.
(fix_submap_inheritance, Fdefine_key): Update call to access_keymap.
(get_keyelt, Flookup_key): Update call to access_keymap.
Remove the meta->esc mappings.
(define_as_prefix): Delete old disabled code.
(menu_item_p): New function.
(where_is_internal_1): Skip over the few remaining menu items.
* lisp.h (access_keymap): Update prototype.
* keyboard.c (read_char, menu_bar_items, tool_bar_items):
Update call to access_keymap.
(follow_key, read_key_sequence): Update calls to access_keymap.
Remove the meta->esc mappings.
(try_cursor_movement, display_line): Use it.
(append_space): Also save/restore iterator's current
character and its length.
(init_from_display_pos): Add an assertion.
(handle_stop): Don't set iterator's add_overlay_start.
(handle_invisible_prop): Likewise.
(load_overlay_strings): If text under an overlay is invisible,
take both before- and after-strings into account when the iterator
is positioned either at the start or at the end of the overlay.
(forward_to_next_line_start): Rewritten.
(reseat_at_next_visible_line_start): Rewritten.
(set_iterator_to_next): Add parameter RESEAT_P.
coding->dst_multibyte before using CODING_REQUIRE_DECODING.
(encode_coding_string): Set coding->src_multibyte and
coding->dst_multibyte before using CODING_REQUIRE_ENCODING.
selected window.
(save_excursion_restore): If buffer was visible in a window, and a
different window was selected, and the old selected window is
still live, restore point in that window.