(hif-token-regexp, hif-tokenize): Use it.
(hif-mathify-binop): New macro.
(hif-plus, hif-minus, hif-notequal, hif-greater, hif-less)
(hif-greater-equal, hif-less-equal): Use it.
(hif-logior, hif-logand): New functions.
(hif-math): Accept | and & as well.
Reported by Radey Shouman <shouman@comcast.net>.
(tags-complete-tag): Remove.
(tags-lazy-completion-table): New function to replace it.
(find-tag-tag, complete-tag): Update users.
* mouse.el (mouse-menu-non-singleton): Use it.
(mouse-major-mode-menu): Remove hack made unnecessary.
* keymap.c (Qkeymap_canonicalize): New var.
(Fmap_keymap_internal): New fun.
(describe_map): Use keymap-canonicalize.
(Fundo_boundary): Set them.
(syms_of_undo): Initialize them.
(record_point): Use them instead of last_point_position*.
(last_undo_buffer): Change type.
(compile, compile-always, recompile): Depend on it.
($(lisp)/calendar/cal-loaddefs.el)
($(lisp)/calendar/diary-loaddefs.el)
($(lisp)/calendar/hol-loaddefs.el): Depend on calendar/*.el.
* ediff*el: replaced load with require in eval-when-compile.
* ediff-hook: deleted all invocations of (autoload ...).
* ediff-util.el (ediff-setup): make window-min-height a local variable
in ediff control window, and set its min height to 2.
(ediff-setup-control-buffer): dedicate the control window.
(ediff-toggle-multiframe): undedicate control window.
Work directly with ediff-setup-windows-multiframe and
ediff-setup-windows-plain.
* ediff-wind (ediff-choose-window-setup-function-automatically): new
function.
(ediff-window-setup-function): change initialization.
(ediff-setup-windows-automatic): deleted.
(ediff-setup-windows-plain-merge): make control window dedicated.
(ediff-destroy-control-frame): do not skip frames if working in a
single frame.
* emulation/viper-ex.el: move provide's forward, prevent ecursion in
eval-when-compile.
* emulation/viper-util.el: move provide's forward, prevent ecursion in
eval-when-compile.
calendar-string-to-mayan-long-count. Update callers.
(calendar-mayan-print-date): Rename calendar-print-mayan-date.
Update callers, keep old name as alias.
(calendar-mayan-read-haab-date): Rename calendar-read-mayan-haab-date.
Update callers.
(calendar-mayan-read-tzolkin-date): Rename calendar-read-mayan-tzolkin-date.
Update callers.
(calendar-mayan-next-haab-date): Rename calendar-next-haab-date.
Keep old name as alias.
(calendar-mayan-previous-haab-date): Rename calendar-previous-haab-date.
Keep old name as alias.
(calendar-mayan-next-tzolkin-date): Rename calendar-next-tzolkin-date.
Keep old name as alias.
(calendar-mayan-previous-tzolkin-date): Rename calendar-previous-tzolkin-date.
Keep old name as alias.
(calendar-mayan-next-round-date): Rename calendar-next-calendar-round-date.
Keep old name as alias.
(calendar-mayan-previous-round-date): Rename
calendar-previous-calendar-round-date. Keep old name as alias.
(calendar-mayan-long-count-to-absolute): Rename
calendar-absolute-from-mayan-long-count. Keep old name as alias.
(calendar-mayan-goto-long-count-date): Rename
calendar-goto-mayan-long-count-date. Keep old name as alias.