src/coding.c (raw_text_coding_system_p): New function.
src/keyboard.c (read_decoded_event_from_main_queue): Use it when the
keyboard coding-system is 'raw-text'.
src/coding.h (raw_text_coding_system_p): Add prototype.
* dired.c (read_dirent): Simplify by removing the need for the
DIR_ENTRY argument. All callers changed. This separates the
MS-DOS idiosyncrasies better from the rest of the code.
* lisp/emacs-lisp/cl-generic.el (cl--generic-search-method): Fix regexp.
* lisp/emacs-lisp/eieio-core.el (eieio--check-type): Remove.
Use cl-check-type everywhere instead.
(eieio-class-object): Remove, use find-class instead when needed.
(class-p): Don't inline.
(eieio-object-p): Check more thoroughly, so we don't treat cl-structs,
such as eieio classes, as objects. Don't inline.
(object-p): Mark as obsolete.
(eieio-defclass-autoload, eieio-defclass-internal, eieio-oref)
(eieio--generic-tagcode): Avoid `class-p'.
(eieio-make-class-predicate, eieio-make-child-predicate): New functions.
(eieio-defclass-internal): Use current-load-list rather than
`class-location'.
* lisp/emacs-lisp/eieio-opt.el (eieio-help-class, eieio-help-constructor):
Use find-lisp-object-file-name, help-fns-short-filename and new calling
convention for eieio-class-def.
(eieio-build-class-list): Remove function, unused.
(eieio-method-def): Remove button type, unused.
(eieio-class-def): Inherit from help-function-def.
(eieio--defclass-regexp): New constant.
(find-function-regexp-alist): Use it.
(eieio--specializers-apply-to-class-p): Handle eieio--static as well.
(eieio-help-find-method-definition, eieio-help-find-class-definition):
Remove functions.
* lisp/emacs-lisp/eieio.el (defclass): Use new eieio-make-class-predicate
and eieio-make-child-predicate.
(eieio-class-parents): Use eieio--class-object.
(slot-boundp, find-class, eieio-override-prin1): Avoid class-p.
(slot-exists-p): Use find-class.
* test/automated/eieio-tests.el (eieio-test-23-inheritance-check): Simplify.
Fixes: debbugs:19734
* lisp/emacs-lisp/backquote.el (backquote-delay-process): Don't reuse `s'
since it may be "equivalent" in some sense, yet different.
* test/automated/core-elisp-tests.el (core-elisp-tests-3-backquote): New test.
* outline.el (outline-hide-entry): Rename from `hide-entry'.
(outline-show-entry): rename from `show-entry'
(outline-hide-body): Rename from `hide-body'.
(outline-hide-region-body): Rename from `hide-region-body'.
(outline-show-all): Rename from `show-all'.
(outline-hide-subtree): Rename from `hide-subtree'.
(outline-hide-leaves): Rename from `hide-leaves'.
(outline-show-subtree): Rename from `show-subtree'.
(outline-hide-sublevels): Rename from `hide-sublevels'.
(outline-hide-other): Rename from `hide-other'.
(outline-show-children): Rename from `show-children'.
(outline-show-branches): Rename from `show-branches'.
* lisp/files.el (save-buffers-kill-emacs): If `confirm-kill-emacs' is
set, but user has just been asked whether they really want to kill Emacs
(for example with a ‘Modified buffers exist; exit anyway?’ prompt) , do
not ask them for another confirmation.
src/dired.c (read_dirent): Accept an additional argument
FIRST_ENTRY. If readdir fails with ENOENT or EACCES the first
time it is called, report the error as if it happened in
open_directory.
(directory_files_internal, file_name_completion): Adjust callers
or read_dirent.
Previously, on non-MS-Windows platforms the code treated most
readdir failures as EOF. This was incorrect, e.g., when readdir
fails with errno == EOVERFLOW. Signal an error instead.
* dired.c (read_dirent):
New function, which signals an error when readdir fails.
(directory_files_internal, file_name_completion): Use it.
src/w32uniscribe.c (uniscribe_list, uniscribe_match): Use bool where
appropriate.
src/w32font.c (struct font_callback_data, w32font_list_internal)
(w32font_driver, w32font_match_internal): Use bool where appropriate.
src/w32menu.c (x_activate_menubar, set_frame_menubar)
(w32_dialog_show, initialize_frame_menubar, w32_menu_show)
(is_simple_dialog): Use bool where appropriate.
(calc-convert-units): Check for missing units.
* lisp/calc/calc-ext.el (calc-init-extensions): Autoload
`calc-convert-exact-units' and assign it a keybinding.
* lisp/calc/calc-help (calc-u-prefix-help): Add help for the
"un" keybinding.
* xfaces.c (face_change): Rename from face_change_count, and
change from int to bool. The var is now true (instead of nonzero)
if attributes have changed; this is simpler. All uses changed.
Fixes: bug#19698
src/dired.c (directory_files_internal, file_name_completion)
[WINDOWSNT]: Signal an error when errno is set non-zero by
'readdir', regardless of its value.
src/w32.c (sys_readdir): Set errno to ENOENT when the directory
doesn't exist and to EACCES when it's not accessible to the
current user. Set errno to zero when FindNextFile exhausts the
directory, so that callers don't interpret that as an error and
don't signal a file-error.
(open_unc_volume): Set errno to ENOENT if WNetOpenEnum fails.
* textmodes/reftex.el (reftex-syntax-table-for-bib): Give ( and )
punctuation syntax since to allow bibtex fields with values such
as {Test 1) and 2)} (bug#19205, bug#19707).
(reftex--prepare-syntax-tables): New function.
(reftex-mode): Use it.
[backport from trunk]
* textmodes/reftex.el (reftex-syntax-table-for-bib): Give ( and )
punctuation syntax since to allow bibtex fields with values such
as {Test 1) and 2)} (bug#19205, bug#19707).
(reftex--prepare-syntax-tables): New function.
(reftex-mode): Use it.