summaryrefslogtreecommitdiff
path: root/lisp/emacs-lisp
Commit message (Collapse)AuthorAgeFilesLines
* Rework eln deletion strategy for new eln-cache folder structureAndrea Corallo2020-09-062-42/+44
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When recompiling remove the corresponding stale elns found in the `comp-eln-load-path'. When removing a package remove the corresponding elns too. On Windows both of these are performed only when possible, when it's not the file is renamed as .eln.old and a last attempt to remove this is performed closing the Emacs session. When a file being deleted was loaded by multiple Emacs sessions the last one being closed should delete it. * lisp/emacs-lisp/comp.el (comp-clean-up-stale-eln): New function. (comp-delete-or-replace-file): Rename from `comp--replace-output-file' and update so it can be used for replacing or deleting shared libs safetly. * lisp/emacs-lisp/package.el (package--delete-directory): When native compiled just call `comp-clean-up-stale-eln' for each eln file we want to clean-up. * src/alloc.c (cleanup_vector): Call directly the dynlib_close. * src/comp.c (syms_of_comp): Update for comp_u->cfile removal. Make 'all_loaded_comp_units_h' key-value weak as now the key will be the filename. (load_comp_unit): Register the compilation unit only when the load is fully completed. (register_native_comp_unit): Make the key of all_loaded_comp_units_h the load filename. (eln_load_path_final_clean_up): New function. (dispose_comp_unit) (finish_delayed_disposal_of_comp_units) (dispose_all_remaining_comp_units) (clean_package_user_dir_of_old_comp_units): Remove. (Fcomp__compile_ctxt_to_file): Update for `comp--replace-output-file' -> `comp-delete-or-replace-file' rename. * src/comp.h (dispose_comp_unit) (finish_delayed_disposal_of_comp_units) (dispose_all_remaining_comp_units) (clean_package_user_dir_of_old_comp_units): Remove. (eln_load_path_final_clean_up): Add. (struct Lisp_Native_Comp_Unit): Remove cfile field. * src/emacs.c (Fkill_emacs): Call 'eln_load_path_final_clean_up'. * src/pdumper.c (dump_do_dump_relocation): Do not set comp_u->cfile.
* Merge remote-tracking branch 'savannah/master' into HEADAndrea Corallo2020-09-063-151/+40
|\
| * Show log suppression buttons in display-warning bufferRobert Pluim2020-09-041-1/+29
| | | | | | | | | | | | | | | | | | | | | | | | * etc/NEWS: Describe 'display-warning' button change (bug#30757). * lisp/emacs-lisp/warnings.el (warning-suppress-warning): Define button. (warning-suppress-action): New function. (warning-suppress-log-warning): Define button. (warning-suppress-log-action): New function. (display-warning): Show buttons to allow permanent modification of warning-suppress-types and warning-suppress-log-types per warning.
| * Fix ElDoc's eldoc-documentation-enthusiast strategyJoão Távora2020-09-031-9/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As soon as we get a response from any of the user functions/sources in eldoc-documentation-functions, we must make sure to call the display-doc local function, just like in the other strategies. That is even if that response produced nil, meaning that there's no doc coming from that source. Failure to do so when none of the sources produced non-nil would keep stale documentation displaying. First reported in https://github.com/joaotavora/eglot/issues/503 * lisp/emacs-lisp/eldoc.el (eldoc--invoke-strategy): Fix :enthusiast strategy. (Version): Bump to 1.10.0
| * Convert unsafep tests to ertStefan Kangas2020-08-291-140/+0
| | | | | | | | | | | | * lisp/emacs-lisp/tcover-unsafep.el: Move from here... * test/lisp/emacs-lisp/unsafep-tests.el: ...to here, and convert to use ert instead of tcover.
| * Prevent ElDoc blinking when eldoc-documentation-enthusiast is usedJoão Távora2020-08-291-2/+3
| | | | | | | | | | | | | | | | | | | | This eldoc-documentation-strategy function didn't always obey protocol since it returned nil sometimes, which the eldoc engine took it as a hint for the "old" protocol to clear the echo area. * lisp/emacs-lisp/eldoc.el (eldoc-documentation-enthusiast): Return t. (Version): Bump to 1.9.0
* | * Store raw documentation during native compilation (bug#42974)Andrea Corallo2020-08-301-2/+2
| | | | | | | | | | * lisp/emacs-lisp/comp.el (comp-spill-lap-function) (comp-intern-func-in-ctxt): Use raw documentation.
* | Merge remote-tracking branch 'savannah/master' into HEADAndrea Corallo2020-08-2910-223/+144
|\|
| * ; Bump seq version to 2.22Stefan Kangas2020-08-291-1/+1
| |
| * Make XEmacs compat aliases obsolete in warnings.elStefan Kangas2020-08-281-2/+4
| | | | | | | | | | | | * lisp/emacs-lisp/warnings.el (display-warning-minimum-level) (log-warning-minimum-level): Make XEmacs compat aliases into obsolete aliases for 'warning-minimum-level' and 'warning-minimum-log-level'.
| * Use lexical-binding in warnings.el and add testsStefan Kangas2020-08-281-5/+1
| | | | | | | | | | | | | | * lisp/warnings.el: Use lexical-binding. Remove redundant :group args. * test/lisp/warnings-tests.el: New file.
| * New eieio-persistent-make-instance generic functionEric Abrahamsen2020-08-281-41/+39
| | | | | | | | | | | | | | | | | | | | This allows override of the read process for eieio-persistent objects, providing the possibility of matching read/write customization for eieio-persistent subclasses. * lisp/emacs-lisp/eieio-base.el (eieio-persistent-make-instance): New generic function for constructing instances from object data written to disk. Previously known as eieio-persistent-convert-list-to-object.
| * Remove redundant slot validation in eieio-persistent-readEric Abrahamsen2020-08-281-148/+63
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Actual object creation (in `make-instance') will later run all slot values through cl-typep, which does a better job of validation. This validation is redundant, and slows the read process down. * lisp/emacs-lisp/eieio-base.el (eieio-persistent-fix-value): Rename from `eieio-persistent-validate/fix-slot-value', as we no longer validate, and we don't care about the slot definition. (eieio-persistent-slot-type-is-class-p): Delete function. (eieio-persistent-convert-list-to-object): Still call `eieio--full-class-object', to trigger an autoload if necessary, but discard the return value.
| * ; Fix license statements.Stefan Kangas2020-08-271-3/+5
| |
| * Preserve setf semantics in 'substring', 'cons', 'logand' expandersŠtěpán Němec2020-08-252-8/+17
| | | | | | | | | | | | | | * doc/lispref/variables.texi (Adding Generalized Variables): Fix example. * lisp/emacs-lisp/cl-lib.el (substring) * lisp/emacs-lisp/gv.el (cons, logand): Return the value being assigned, as specified for 'setf'. (bug#35546)
| * Merge from origin/emacs-27Michael Albinus2020-08-251-24/+28
| |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | 44104a607a Fix error in GMP test e26e63444d Add Feature testing for Windows binaries 4e2caef384 ; * src/character.c (str_as_multibyte): Fix the commentary. d3a4ce8420 Revert "; * etc/NEWS: Remove temporary note on documentati... 16f00e36dc * admin/admin.el (set-version): Trap yet another NEWS error. 121be3e118 ; * etc/NEWS: Remove temporary note on documentation. (Bu... 5fcb97dabd Fix cond jump table compilation (bug#42919)
| | * Fix cond jump table compilation (bug#42919)Mattias Engdegård2020-08-191-24/+28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This bug affected compilation of (cond ((member '(some list) variable) ...) ...) While equal is symmetric, member is not; in the latter case the arguments must be a variable and a constant list, in that order. Reported by Ikumi Keita. * lisp/emacs-lisp/bytecomp.el (byte-compile--cond-switch-prefix): Don't treat equality and member predicates in the same way; only the former are symmetric in their arguments. * test/lisp/emacs-lisp/bytecomp-tests.el (byte-opt-testsuite-arith-data): Add test cases.
| * | Change how #:uninterned symbols are font-locked in Lisp modeLars Ingebrigtsen2020-08-241-3/+1
| | | | | | | | | | | | | | | | | | * lisp/emacs-lisp/lisp-mode.el (lisp-fdefs): Font-lock #:uninterned symbols as a single entity instead of #: and uninterned separately (bug#43001).
| * | Avoid some uses of obsolete function interactive-pStefan Kangas2020-08-241-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * doc/lispref/help.texi (Accessing Documentation): * lisp/cedet/data-debug.el: * lisp/emacs-lisp/edebug.el (edebug-wrap-def-body): * lisp/simple.el (append-next-kill): * test/manual/cedet/cedet-utests.el (cedet-utest, pulse-test): * test/manual/cedet/semantic-tests.el (semantic-lex-spp-write-utest) (semantic-symref-test-count-hits-in-tag): Use 'called-interactively-p' instead of obsolete function 'interactive-p'.
| * | Remove many items obsolete since Emacs 23.2 and 23.3Stefan Kangas2020-08-241-3/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * lisp/allout.el (allout-init): * lisp/emacs-lisp/shadow.el (shadows-compare-text-p): * lisp/ffap.el (ffap-version): * lisp/filecache.el (file-cache-choose-completion): * lisp/help.el (print-help-return-message): * lisp/image-mode.el (image-mode-maybe): * lisp/imenu.el (imenu-example--name-and-position): * lisp/international/mule-cmds.el (princ-list): * lisp/mail/rmail.el (rmail-highlight-face): * lisp/minibuffer.el (read-file-name-predicate): * lisp/mouse.el (mouse-choose-completion): * lisp/progmodes/cc-cmds.el (c-forward-into-nomenclature): * lisp/progmodes/xscheme.el (advertised-xscheme-send-previous-expression): * lisp/simple.el (completion-base-size) (choose-completion-delete-max-match, exchange-dot-and-mark): * lisp/subr.el (eval-next-after-load): * lisp/term.el (term-dynamic-simple-complete): Remove items, obsolete since Emacs 23.2 and 23.3. * doc/misc/cc-mode.texi (Movement Commands): Doc fix. * doc/lispref/help.texi (Accessing Documentation): * lisp/emacs-lisp/edebug.el (edebug-wrap-def-body): * lisp/comint.el (comint-dynamic-list-completions): * lisp/progmodes/idlwave.el (idlwave-make-modified-completion-map-xemacs) (idlwave-make-modified-completion-map-emacs) (idlwave-choose-completion): * lisp/progmodes/vhdl-mode.el: * lisp/term.el (term-dynamic-list-completions): Remove references to 'mouse-choose-completion'. * lisp/image-mode.el (image-mode-to-text): Remove reference to 'image-mode-maybe'. * lisp/mail/rmail.el (rmail-highlight-headers): Use 'rmail-highlight' face instead of 'rmail-highlight-face'. * lisp/progmodes/antlr-mode.el (antlr-mode-map, antlr-mode-menu): Remove reference to 'c-forward-into-nomenclature'. * lisp/simple.el (choose-completion, choose-completion-string) (completion-list-mode, completion-setup-function): Don't use 'completion-base-size'. ; * etc/NEWS: List removed items. This was discussed in https://lists.gnu.org/archive/html/emacs-devel/2020-08/msg00400.html
* | | Merge branch 'add_driver_option' into HEADAndrea Corallo2020-08-261-0/+12
|\ \ \
| * | | Set native driver options in async compiles, alsoAndreas Fuchs2020-08-261-0/+2
| | | | | | | | | | | | | | | | | | | | Ensure the variable is set to the value that was customized in the parent process in child compilation processes, also.
| * | | Pass driver options to libgccjit where supportedAndreas Fuchs2020-08-191-0/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add a customizable variable for driver options (such as linker flags) to pass to libgccjit (Bug #42761). * lisp/emacs-lisp/comp.el (comp-native-driver-options): New customization variable. * src/comp.c: Use comp-native-driver-options to set libgccjit's driver options, if supported on the library's ABI version.
* | | | * lisp/emacs-lisp/comp.el (native-compile): Fix free function compilation.Andrea Corallo2020-08-231-5/+5
| | | |
* | | | Merge remote-tracking branch 'savannah/master' into HEADAndrea Corallo2020-08-231-1/+4
|\ \ \ \ | |/ / / |/| / / | |/ /
| * | Minor mode doc string clarificationLars Ingebrigtsen2020-08-211-1/+4
| | | | | | | | | | | | | | | | | | * lisp/emacs-lisp/easy-mmode.el (easy-mmode--arg-docstring): Clarify that the minor mode hook is called both when enabling and disabling the mode (bug#34073).
* | | Merge remote-tracking branch 'savannah/master' into HEADAndrea Corallo2020-08-198-27/+18
|\| |
| * | Fix #'(lambda ...) font lockingAnders Lindgren2020-08-191-1/+3
| | | | | | | | | | | | | | | * lisp/emacs-lisp/lisp-mode.el (lisp--el-non-funcall-position-p): Fontize #'(lambda ...) better (bug#23465).
| * | Remove some compat code from chart.elLars Ingebrigtsen2020-08-181-3/+1
| | | | | | | | | | | | | | | * lisp/emacs-lisp/chart.el (chart-face-list): set-face-background-pixmap is always defined.
| * | Merge from origin/emacs-27Glenn Morris2020-08-181-2/+2
| |\| | | | | | | | | | | | | cf0ee6f49b ; spelling fixes 16f4f26632 Fix startup working dir bug on NeXTSTEP
| | * ; spelling fixesPaul Eggert2020-08-131-2/+2
| | |
| * | Fix ert ability to peek inside structures when comparing unequal valuesClément Pit-Claudel2020-08-181-1/+8
| | | | | | | | | | | | | | | * lisp/emacs-lisp/ert.el (ert--explain-equal-rec): Treat records as arrays (bug#40562). Also add support for cl-structs.
| * | Make Emacs 20 compat code in derived.el obsoleteStefan Kangas2020-08-141-0/+1
| | | | | | | | | | | | | | | * lisp/emacs-lisp/derived.el (derived-mode-setup-function-name): Declare obsolete. This was for compatibility with Emacs 20 or older.
| * | Remove many items obsolete since Emacs 23.1Stefan Kangas2020-08-143-18/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Emacs 23.1 was five major releases and over a decade ago. This list can be reviewed before to the next release, but for now hopefully this motivates any needed external updates. Ref: https://lists.gnu.org/archive/html/emacs-devel/2020-05/msg02198.html * lisp/abbrev.el (pre-abbrev-expand-hook): * lisp/bookmark.el (bookmark-read-annotation-text-func) (bookmark-jump-noselect): * lisp/buff-menu.el (buffer-menu-mode-hook): * lisp/cus-edit.el (custom-mode-hook, custom-mode): * lisp/dirtrack.el (dirtrack-debug-toggle, dirtrack-debug): * lisp/emacs-lisp/crm.el (crm-minibuffer-complete) (crm-minibuffer-completion-help) (crm-minibuffer-complete-and-exit): * lisp/emacs-lisp/easymenu.el (easy-menu-precalculate-equivalent-keybindings): * lisp/emacs-lisp/lisp-mode.el (lisp-mode-auto-fill): * lisp/epa.el (epa-display-verify-result): * lisp/epg.el (epg-passphrase-callback-function): * lisp/eshell/eshell.el (eshell-report-bug): * lisp/ffap.el (ffap-bug, ffap-submit-bug): * lisp/files.el (locate-file-completion): * lisp/hi-lock.el (hi-lock-face-history, hi-lock-regexp-history): * lisp/hilit-chg.el (highlight-changes-initial-state) (highlight-changes-active-string) (highlight-changes-passive-string, global-highlight-changes): * lisp/international/mule-cmds.el (nonascii-insert-offset) (nonascii-translation-table): * lisp/international/mule-diag.el (non-iso-charset-alist): * lisp/international/mule-util.el (detect-coding-with-priority): * lisp/international/mule.el (charset-id, charset-bytes) (charset-list, char-valid-p, generic-char-p) (char-coding-system-table, make-coding-system) (set-coding-priority) * lisp/mail/rmail.el (rmail-message-filter): * lisp/minibuffer.el (complete-in-turn, dynamic-completion-table) (completion-common-substring) (minibuffer-local-must-match-filename-map): * lisp/mouse.el (mouse-major-mode-menu, mouse-popup-menubar) (mouse-popup-menubar-stuff): * lisp/net/newst-treeview.el (newsticker-groups-filename): * lisp/obsolete/tpu-edt.el (tpu-have-ispell, GOLD-map): * lisp/password-cache.el (password-read-and-add): * lisp/shell.el (shell-dirtrack-toggle): * lisp/subr.el (forward-point, redisplay-end-trigger-functions) (process-filter-multibyte-p, set-process-filter-multibyte): * lisp/t-mouse.el (t-mouse-mode): * lisp/term/w32-win.el (w32-focus-frame, w32-select-font): * lisp/textmodes/ispell.el (ispell-aspell-supports-utf8): * lisp/textmodes/remember.el (remember-buffer): * lisp/tooltip.el (tooltip-hook): * lisp/url/url-util.el (url-generate-unique-filename): * lisp/url/url-vars.el (url-temporary-directory): * lisp/vc/vc-hooks.el (vc-workfile-version) (vc-default-working-revision): * lisp/vc/vc-mtn.el (vc-mtn-command): * lisp/vc/vc.el (vc-revert-buffer): * lisp/vcursor.el (vcursor-toggle-vcursor-map): Remove items, obsolete since Emacs 23.1. * lisp/abbrev.el (expand-abbrev): * lisp/epg.el (epg-context): Change 'epg-passphrase-callback-function' call to 'epa-' alternative. * lisp/eshell/em-rebind.el (eshell-cannot-leave-input-list): Don't refer to removed function 'forward-point'. * test/manual/etags/c-src/abbrev.c (Fexpand_abbrev): (syms_of_abbrev): Don't run removed hook 'pre-abbrev-expand-hook'. * lisp/international/mule.el (transform-make-coding-system-args): Declare obsolete. * lisp/progmodes/idlwave.el: Update reference to removed function 'char-valid-p'. * lisp/gnus/mml2015.el (epg-encrypt-string): * lisp/gnus/mml1991.el (epg-make-context): * lisp/gnus/mml-smime.el (autoload): Remove autoload of removed 'epg-passphrase-callback-function'. * lisp/minibuffer.el (completion-extra-properties): Remove support for `completion-common-substring'. * lisp/obsolete/tpu-edt.el (tpu-toggle-overwrite-mode) Remove support for removed `spell' package. * src/coding.c (syms_of_coding): * doc/misc/efaq.texi: * doc/emacs/frames.texi (Menu Mouse Clicks): * doc/misc/url.texi (Customization): Doc fixes. ; * etc/NEWS: List removed items.
| * | Handle nil load-path element in read-library-nameTobias Zawada2020-08-131-2/+3
| | | | | | | | | | | | | | | | | | | | | * lisp/emacs-lisp/find-func.el (read-library-name): Fix handling of nil 'load-path' element. (Bug#41998) Copyright-paperwork-exempt: yes
* | | * Fix async compilation `comp-eln-load-path' effectiveness (bug#42909)Andrew Whatson2020-08-181-0/+1
| | | | | | | | | | | | | | | * lisp/emacs-lisp/comp.el (comp-run-async-workers): Forward `comp-eln-load-path' to async workers.
* | | * Remove a false permission related error while native compilingAndrea Corallo2020-08-171-2/+4
| | | | | | | | | | | | | | | | | | * lisp/emacs-lisp/bytecomp.el (byte-compile-file): Do not crash if native compiling we have no permission to create the .elc file. We are not creating it.
* | | Allow for native compiling .el.gz filesAndrea Corallo2020-08-171-3/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is needed for installed instances compiled with NATIVE_FAST_BOOT * src/comp.c (maybe_defer_native_compilation): Search for .el.gz too as a source if the .el is not found. (Fcomp_el_to_eln_filename): Remove the .gz in case to generate the hash. * lisp/emacs-lisp/comp.el (comp-valid-source-re): New defconst. (comp-run-async-workers, native-compile-async): Make use of `comp-valid-source-re'.
* | | * Deferred compilation must always compile despite source file timestampAndrea Corallo2020-08-171-0/+2
| | | | | | | | | | | | | | | * lisp/emacs-lisp/comp.el (comp-run-async-workers): Always compile if load is set.
* | | * Do not fail if more then one level of directories has to be createdAndrea Corallo2020-08-171-3/+3
| | | | | | | | | | | | | | | * lisp/emacs-lisp/comp.el (native-compile-async): Call make-directory if necessary.
* | | * Prevent recursive loadAndrea Corallo2020-08-171-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | Prevent autoload to kicks in while running `native-compile-async'. Autoload cannot be used safely by functions serving deferred compilation as a circular load can be triggered if the dependency is not native compiled already. * lisp/emacs-lisp/comp.el (warnings): Add require.
* | | Make comp-deferred-compilation a simple global and set it on by defaultAndrea Corallo2020-08-171-7/+0
| | | | | | | | | | | | | | | | | | | | | | | | * src/comp.c (comp_deferred_compilation): Doc update and set it to true by default. * lisp/emacs-lisp/comp.el (comp-deferred-compilation): Remove customize.
* | | Move eln files into dedicated cache directoriesAndrea Corallo2020-08-172-33/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When loading a elc file search for a corresponding eln one into `comp-eln-load-path' directories and load it if available. `comp-eln-load-path' contains by default two directory (user and system one). * src/pdumper.c (dump_do_dump_relocation): While resurrecting from load set eln cache sys dir in `Vcomp_eln_load_path'. * src/lread.c (maybe_swap_for_eln): New function. (Fload): Clean-up some now unnecessary code going back to the master one. (Fload): Make use of Vcomp_eln_to_el_h for the reverse file look-up. (openp_add_middle_dir_to_suffixes) (openp_max_middledir_and_suffix_len, openp_fill_filename_buffer): Remove functions. (openp): As for Fload revert code modifications. (openp): When a .elc file is being loaded check if a corresponding eln can be loaded in place. * src/comp.c (ELN_FILENAME_HASH_LEN): New macro. (comp_hash_string): New function. (hash_native_abi): Make use of 'comp_hash_string'. (hash_native_abi): Change `comp-native-path-postfix' format. (Fcomp_el_to_eln_filename): New function. (Fcomp__compile_ctxt_to_file): Have file_name as a input. (Vcomp_eln_to_el_h, Vcomp_eln_load_path): New global varaibles. * lisp/startup.el (normal-top-level): Add user eln cache directory in `comp-eln-load-path'. * lisp/help-fns.el (find-lisp-object-file-name): Reverse look-up files using `comp-eln-to-el-h'. * lisp/files.el (locate-file): Likewise. * lisp/emacs-lisp/find-func.el (find-library-name): Likewise. * lisp/emacs-lisp/comp.el (comp-output-directory) (comp-output-base-filename, comp-output-filename): Remove function. (comp-compile-ctxt-to-file): Create parent directories if necessary. (comp-run-async-workers, native-compile, native-compile-async): Make use `comp-el-to-eln-filename'.
* | | * Fix excessive echo area usageAndrea Corallo2020-08-141-4/+7
| | | | | | | | | | | | | | | * lisp/emacs-lisp/comp.el (comp-run-async-workers): Use `with-temp-file' to fill temp-file.
* | | Merge remote-tracking branch 'savannah/master' into HEADAndrea Corallo2020-08-134-18/+13
|\| |
| * | ; * lisp/emacs-lisp/autoload.el: Begin summary line with three semicolons.Jonas Bernoulli2020-08-131-1/+1
| | |
| * | Merge two conditions and fix indentationJonas Bernoulli2020-08-131-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The motivation behind this change is that the indentation of some lines was outright wrong. If we address that issue, then we might as well also address the issue that some code is needlessly nested an additional level. That we can fix by merging the conditions. By doing these two changes in on commit we have to change the fewest lines. Even though we are moving to using just spaces for indentation of the modified lines, other lines in the same function are left alone and continue to us tabs+spaces for indentation. That is not "wrong", but just the style we are slowly migrating away from when touching lines for other reasons. Discussed in bug#42397. * lisp/emacs-lisp/eldoc.el (eldoc-minibuffer-message): Merge two conditions and fix indentation.
| * | Remove Emacs 23 compat code from checkdoc.elStefan Kangas2020-08-121-9/+4
| | | | | | | | | | | | | | | | | | | | | * lisp/emacs-lisp/checkdoc.el (checkdoc-run-hooks): Redefine as obsolete function alias for 'run-hook-with-args-until-success'. (checkdoc-this-string-valid-engine) (checkdoc-file-comments-engine): Adjust callers.
| * | Remove compat code from autoload.elLars Ingebrigtsen2020-08-111-3/+2
| | | | | | | | | | | | | | | | | | * lisp/emacs-lisp/autoload.el (autoload--make-defs-autoload): register-definition-prefixes is in subr.el, so it shouldn't be necessary to check whether it's defined.
| * | Fix (end-of-defun N) for N >= 2Noam Postavsky2020-08-111-1/+2
| | | | | | | | | | | | | | | | | | | | | * lisp/emacs-lisp/lisp.el (end-of-defun): Only skip to next line when after end of defun when ARG is 1 or less. * test/lisp/emacs-lisp/lisp-tests.el (end-of-defun-twice): New test (bug#24427).