| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
* lisp/emacs-lisp/bytecomp.el (byte-compile-file-form-defalias):
Replace 't' with '_' in pcase.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* lisp/face-remap.el (text-scale-adjust):
* lisp/menu-bar.el (popup-menu-normalize-position):
* lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand):
* lisp/emacs-lisp/bytecomp.el (byte-compile-arglist-warn):
* lisp/emacs-lisp/generator.el (cps--transform-1):
* lisp/emacs-lisp/macroexp.el (macroexp--expand-all):
* lisp/obsolete/vc-arch.el (vc-arch-mode-line-string):
* lisp/progmodes/octave.el (octave-goto-function-definition)
(octave-find-definition-default-filename):
Replace 't' with '_' in pcase.
|
|
|
|
|
| |
This is as per "Tips for Documentation Strings" in the elisp manual.
For consistency, do the same in diagnostics and comments.
|
|
|
|
|
|
| |
* lisp/emacs-lisp/bytecomp.el
(byte-compile-macroexpand-declare-function):
Handle declarations after calls. (Bug#20509)
|
|
|
|
|
|
|
| |
This reverts commit 9a7ddde977378cb5276a81476ae458889c403267.
This reverts commit 3c0ea587daf8b17960b90603a70e3ac4057d883d.
With message: "* lisp/emacs-lisp/bytecomp.el: Use `inhibit-message'".
(Bug#20445).
|
|
|
|
|
| |
(byte-compile--message): Use `inhibit-message' instead of hiding
the previous message with (message nil).
|
|
|
|
|
|
|
|
|
|
| |
(byte-compile--interactive): New var.
(byte-compile--message): New function.
(byte-compile-log-1, byte-force-recompile)
(byte-recompile-directory, byte-recompile-file)
(byte-compile-file, compile-defun)
(byte-compile-file-form-defmumble, byte-compile)
(byte-compile-file-form-defalias, display-call-tree): Use it.
|
|
|
|
|
|
|
|
|
|
|
|
| |
This prevents emacs-lisp-mode-hook from being run everytime an
autoload file is generated, which can account for a fraction of
package installation time depending on the hooks the user has
configured.
* lisp/emacs-lisp/bytecomp.el (byte-compile-file): Use delay-mode-hooks.
* lisp/emacs-lisp/autoload.el (autoload-find-file)
(autoload-find-generated-file): Use delay-mode-hooks.
|
|
|
|
|
|
|
| |
* lisp/emacs-lisp/cl-preloaded.el (cl-struct-define): Add sanity checks
about relationship between `type', `named', and `slots'.
* lisp/emacs-lisp/cl-generic.el (cl--generic-struct-tagcode): Adjust to new
value of `cl-struct-type' property.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* lisp/emacs-lisp/bytecomp.el:
(byte-compile-initial-macro-environment): Use macroexp-progn.
(byte-compile-cl-warn): Don't silence use of cl-macroexpand-all.
(byte-compile-file-form-defvar-function): Rename from
byte-compile-file-form-define-abbrev-table.
(defvaralias, byte-compile-file-form-custom-declare-variable): Use it.
(byte-compile): Use byte-compile-top-level rather than
byte-compile-lambda so we can compile non-values.
(byte-compile-form): Add warnings for failed uses of lexical vars via
quoted symbols.
(byte-compile-unfold-bcf): Improve message for failed inlining.
(byte-compile-make-closure): Handle new format of internal-make-closure
for dynamically-generated docstrings.
* lisp/emacs-lisp/cconv.el (cconv--convert-function):
Add `docstring' argument.
(cconv-convert): Use it to handle the new (:documentation ...) form.
(cconv-analyze-form): Handle the new (:documentation ...) form.
* src/eval.c (Ffunction): Handle the new (:documentation ...) form.
(syms_of_eval): Declare `:documentation'.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* etc/NEWS: Document this.
* lisp/emacs-lisp/bytecomp.el (byte-compile-file):
* lisp/ffap.el (find-file-at-point):
* lisp/files.el (insert-file-1):
* lisp/net/ange-ftp.el (ange-ftp-barf-if-not-directory)
(ange-ftp-copy-file-internal):
* lisp/progmodes/etags.el (visit-tags-table):
* lisp/url/url-dav.el (url-dav-delete-directory, url-dav-delete-file)
(url-dav-directory-files):
Keep diagnostics consistent with system's.
* lisp/erc/erc-dcc.el (erc-dcc-server):
* lisp/ffap.el (ffap-machine-p):
Ignore case while comparing diagnostics.
* src/fileio.c (report_file_errno): Don't downcase, and simplify.
Fixes: bug#19642
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* lisp/emacs-lisp/eieio-generic.el: Remove.
(defgeneric, defmethod): Move to eieio-compat.el. Mark obsolete.
* lisp/emacs-lisp/eieio-compat.el: New file.
* lisp/emacs-lisp/eieio.el: Don't require eieio-generic any more.
* lisp/emacs-lisp/eieio-core.el (eieio--slot-originating-class-p):
Remove unused function.
(eieio-defclass): Move to eieio-compat.el.
* lisp/emacs-lisp/macroexp.el (macroexp-macroexpand): New function.
(macroexp--expand-all): Use it.
* lisp/emacs-lisp/bytecomp.el (byte-compile-recurse-toplevel): Here too.
|
|
|
|
|
|
|
|
|
| |
* admin/unidata/unidata-gen.el (unidata-gen-files):
* lisp/emacs-lisp/autoload.el (autoload-generate-file-autoloads):
* lisp/emacs-lisp/bytecomp.el (byte-compile-file):
* lisp/files.el (save-buffer, basic-save-buffer):
* lisp/international/quail.el (quail-update-leim-list-file):
Don't output messages like "Generating ..." in batch mode.
|
|
|
|
| |
Run admin/update-copyright.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
All uses changed.
* lib-src/etags.c (analyze_regex): Rename from analyse_regex.
* lisp/cedet/semantic/lex-spp.el:
(semantic-lex-spp-analyzer-do-replace):
Rename from semantic-lex-spp-anlyzer-do-replace.
* lisp/emacs-lisp/cconv.el (cconv--analyze-use):
Rename from cconv--analyse-use.
(cconv--analyze-function): Rename from cconv--analyse-function.
(cconv-analyze-form): Rename from cconv-analyse-form.
* src/regex.c (analyze_first): Rename from analyze_first.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* lisp/fringe.el (fringe-bitmap-p): Make it a plain function.
* lisp/tooltip.el (tooltip-region-active-p): Remove.
* lisp/net/shr.el (shr-char-breakable-p, shr-char-kinsoku-bol-p)
(shr-char-kinsoku-eol-p, shr-char-nospace-p): Use define-inline.
* lisp/url/url-future.el (url-future-done-p, url-future-completed-p)
(url-future-errored-p, url-future-cancelled-p):
* lisp/url/url-dav.el (url-dav-http-success-p): Use define-inline.
* lisp/vc/ediff-init.el (ediff-odd-p): Remove.
(ediff-background-face): Use cl-oddp instead.
(ediff-buffer-live-p): Make it a defsubst.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* lisp/emacs-lisp/bytecomp.el (byte-compile-initial-macro-environment):
Don't call byte-compile-preprocess since the result will go through cconv.
(byte-compile-output-docform): Handle uninterned `name' correctly.
* lisp/emacs-lisp/cl-macs.el (cl-define-compiler-macro): Use interned name
to circumvent byte-compiler bug.
* lisp/emacs-lisp/cl-extra.el (cl-get): Silence compiler warning.
* lisp/emacs-lisp/macroexp.el (macroexp--expand-all): Fix typo.
(macroexp--compiler-macro): Remove left-over debug code.
|
|\ |
|
| |
| |
| |
| | |
Due to the vague doc, it was already being used this way.
|
| |
| |
| |
| |
| |
| |
| | |
(byte-compile-initial-macro-environment): Don't compile before eval in
`eval-and-compile'.
(byte-compile-arglist-warn): Add check for defining macros after their
first use. Check call use even if the function is fboundp.
|
|\ \
| |/ |
|
| |
| |
| |
| |
| |
| | |
* lisp/emacs-lisp/cl-extra.el: Add missing provide.
Fixes: debbugs:18804
|
| |
| |
| |
| |
| |
| |
| | |
all args are copyable.
(=, <, >, <=, >=): Re-enable the optimization.
Fixes: debbugs:18767
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
(gui-set-selection): Provide an implementation for non-GUI frames.
* lisp/term/x-win.el: Use lexical-binding.
(x-clipboard-yank): Fix up missed renamings.
* lisp/term/w32-win.el (libgif-version, libjpeg-version): Silence compiler.
(w32--set-selection): Fix up var names.
* lisp/term/pc-win.el: Use lexical-binding.
(w16-selection-exists-p): Silence compiler warning.
(w16-selection-owner-p): Fix up missed renamings.
* lisp/emacs-lisp/bytecomp.el (byte-compile-form): Remove left-over debug.
* lisp/frame.el (frame-notice-user-settings): Fix excessive quoting.
Fixes: debbugs:18791
|
|\ \
| |/ |
|
| |
| |
| |
| |
| |
| | |
* lisp/emacs-lisp/bytecomp.el (=, <, >, <=, >=): Don't optimize multi-arg case.
Fixes: debbugs:18767
|
| | |
|
| |
| |
| |
| |
| |
| | |
case.
Fixes: debbugs:18767
|
| |
| |
| |
| |
| |
| |
| |
| | |
* lisp/emacs-lisp/cconv.el (cconv-convert, cconv-analyse-form):
Remove track-mouse case.
* lisp/emacs-lisp/bytecomp.el (byte-compile-track-mouse): Remove.
* src/keyboard.c (track-mouse): Rename to internal--track-mouse.
Make it into a function and change arg to be a function.
|
| |
| |
| |
| | |
for functions with no arguments.
|
| |
| |
| |
| |
| |
| | |
* lisp/emacs-lisp/bytecomp.el (byte-compile-initial-macro-environment):
Use lambda function values, not quoted lambdas.
(byte-compile-recurse-toplevel): Remove extraneous &optional.
|
|/ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
They are now needed by eg the function `documentation' in some circumstances.
* lisp/help-fns.el (help-split-fundoc, help-add-fundoc-usage)
(help-function-arglist, help-make-usage): Move from here...
* lisp/help.el (help-split-fundoc, help-add-fundoc-usage)
(help-function-arglist, help-make-usage): ... to here.
* lisp/emacs-lisp/bytecomp.el (byte-compile-lambda): Do not load help-fns.
Fixes: debbugs:17001
|
| |
|
| |
|
|
|
|
|
| |
* emacs-lisp/bytecomp.el (byte-compile-file):
Remove unused local variable `file-name'.
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
* lisp/emacs-lisp/elint.el (elint-find-builtins):
* lisp/emacs-lisp/eldoc.el (eldoc-symbol-function):
* lisp/emacs-lisp/bytecomp.el (byte-compile-callargs-warn)
(byte-compile-file-form-defmumble, byte-compile, byte-compile-form):
* lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand):
* lisp/apropos.el (apropos-safe-documentation):
* lisp/subr.el (symbol-file): Remove redundant fboundp.
* lisp/progmodes/idlw-shell.el (idlwave-shell-comint-filter): Use defalias.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
* emacs-lisp/bytecomp.el (byte-compile-form):
Make the `interactive-only' warning like the `obsolete' one.
* comint.el (comint-run):
* files.el (insert-file-literally, insert-file):
* replace.el (replace-string, replace-regexp):
* simple.el (beginning-of-buffer, end-of-buffer, delete-backward-char)
(goto-line, insert-buffer, next-line, previous-line):
Tweak `interactive-only' spec.
|
| |
|
|
|
|
|
|
|
| |
Mark as obsolete and replace it with a symbol property.
(byte-compile-form): Use new 'interactive-only property.
* lisp/comint.el, lisp/files.el, lisp/replace.el, lisp/simple.el:
Apply new 'interactive-only properly.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* lisp/dos-w32.el (minibuffer-history-case-insensitive-variables)
(path-separator, null-device, buffer-file-coding-system)
(lpr-headers-switches): Check system-type before modifying them.
(find-buffer-file-type-coding-system): Mark obsolete.
(w32-find-file-not-found-set-buffer-file-coding-system): Rename from
find-file-not-found-set-buffer-file-coding-system.
(w32-untranslated-filesystem-list, w32-untranslated-canonical-name):
(w32-add-untranslated-filesystem, w32-remove-untranslated-filesystem)
(w32-direct-print-region-use-command-dot-com, w32-untranslated-file-p):
(w32-direct-print-region-helper, w32-direct-print-region-function)
(w32-direct-ps-print-region-function): Rename by adding a "w32-" prefix.
* lisp/startup.el (normal-top-level-add-subdirs-to-load-path):
* lisp/ps-print.el (ps-print-region-function):
* lisp/lpr.el (print-region-function): Use new name.
* lisp/simple.el (copy-region-as-kill): Fix call to region-extract-function.
* lisp/emacs-lisp/bytecomp.el (byte-defop-compiler): Add new `2-and' handler.
(byte-compile-and-folded): New function.
(=, <, >, <=, >=): Use it.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* lisp/emacs-lisp/byte-opt.el (byte-optimize-form-code-walker):
Optimize under `condition-case' and `catch' if
byte-compile--use-old-handlers is nil.
(disassemble-offset): Handle new bytecodes.
* lisp/emacs-lisp/bytecomp.el (byte-pushcatch, byte-pushconditioncase)
(byte-pophandler): New byte codes.
(byte-goto-ops): Adjust accordingly.
(byte-compile--use-old-handlers): New var.
(byte-compile-catch): Use new byte codes depending on
byte-compile--use-old-handlers.
(byte-compile-condition-case--old): Rename from
byte-compile-condition-case.
(byte-compile-condition-case--new): New function.
(byte-compile-condition-case): New function that dispatches depending
on byte-compile--use-old-handlers.
(byte-compile-unwind-protect): Pass a function to byte-unwind-protect
when we can.
* lisp/emacs-lisp/cconv.el (cconv-convert, cconv-analyse-form): Adjust for
the new compilation scheme using the new byte-codes.
* src/alloc.c (Fgarbage_collect): Merge scans of handlerlist and catchlist,
and make them unconditional now that they're heap-allocated.
* src/bytecode.c (BYTE_CODES): Add Bpushcatch, Bpushconditioncase
and Bpophandler.
(bcall0): New function.
(exec_byte_code): Add corresponding cases. Improve error message when
encountering an invalid byte-code. Let Bunwind_protect accept
a function (rather than a list of expressions) as argument.
* src/eval.c (catchlist): Remove (merge with handlerlist).
(handlerlist, lisp_eval_depth): Not static any more.
(internal_catch, internal_condition_case, internal_condition_case_1)
(internal_condition_case_2, internal_condition_case_n):
Use PUSH_HANDLER.
(unwind_to_catch, Fthrow, Fsignal): Adjust to merged
handlerlist/catchlist.
(internal_lisp_condition_case): Use PUSH_HANDLER. Adjust to new
handlerlist which can only handle a single condition-case handler at
a time.
(find_handler_clause): Simplify since we only a single branch here
any more.
* src/lisp.h (struct handler): Merge struct handler and struct catchtag.
(PUSH_HANDLER): New macro.
(catchlist): Remove.
(handlerlist): Always declare.
|
|
|
|
| |
Fixes: debbugs:15220
|
|
|
|
| |
Fixes: debbugs:14926
|
|
|
|
|
|
| |
extracted from byte-compile-callargs-warn and byte-compile-normal-call.
(byte-compile-callargs-warn, byte-compile-function-form): Use it.
(byte-compile-normal-call): Remove obsolescence check.
|
|
|
|
|
|
|
| |
(byte-compile-callargs-warn): Use `push'.
(byte-compile-arglist-warn): Ignore higher-order "calls".
(byte-compile-file-form-autoload): Use `pcase'.
(byte-compile-function-form): If quoting a symbol, check that it exists.
|
|
|
|
|
|
| |
* lisp/emacs-lisp/bytecomp.el (byte-compile-file-form-autoload):
Only eval autoloaded macros.
(byte-compile-autoload): Only give the macro warning for macros.
|