1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2025-12-17 19:30:38 -08:00
Commit graph

73234 commits

Author SHA1 Message Date
Stefan Monnier
a2dc749897 * lisp/textmodes/page-ext.el: Further cleanup
(pages--ctl-x-ctl-p-map): Rename from ctl-x-ctl-p-map.
Move initialization into declaration.
(pages-ctl-x-ctl-p-prefix): Rename from ctl-x-ctl-p-prefix.
(sort-subr): Remove redundant autoload.
(pages-set-delimiter): Use explicit `interactively` arg instead of
`called-interactively`.  Use `setq-local`.
(pages-directory-for-addresses): Use `setq-local`.
2019-06-19 09:53:06 -04:00
Lars Ingebrigtsen
1584d4cd95 Fix compilation warning in pcmpl-gnu.el
* lisp/pcmpl-gnu.el (pcomplete/tar): Remove binding of
pcomplete-suffix-list, because it's not consulted in any of the
functions called here, and has had no effect since 2011.  If we
want to support not inserting a space after the = sign, we have to
implement that, but it's not currently done.
2019-06-19 15:30:22 +02:00
Lars Ingebrigtsen
d8c6fa84a0 Revert "Fix one of the tags/xref warnings in viper-ex.el"
This reverts commit 4f2f950497.

We can't mix calls to find-tag and xref-find-definitions
2019-06-19 15:21:20 +02:00
Lars Ingebrigtsen
816b91a61a Fix up the function/variable names in page-ext.el
* lisp/textmodes/page-ext.el (previous-page)
(search-pages)
(sort-pages-in-region)
(sort-pages-buffer)
(pages-sort-buffer)
(pages-set-delimiter): Rename to have pages- prefixes and make the
previous name into aliases for the new names.
(ctl-x-ctl-p-map): Use the new command names.
2019-06-19 15:10:51 +02:00
Lars Ingebrigtsen
7c1cbed1b4 Touch up the OKURI-NASI progress reporting
* lisp/international/ja-dic-cnv.el (skkdic-convert-okuri-ari)
(skkdic-convert-postfix, skkdic-convert-prefix)
(skkdic-collect-okuri-nasi): Use INFO progress reporting.
(skkdic-set-okuri-nasi): Use the progress reporter instead of a
per-1000 output.
2019-06-19 14:29:41 +02:00
Lars Ingebrigtsen
0837d9a4ea Tweak progess reporting in finder-compile-keywords
* lisp/finder.el (finder-compile-keywords): Use progress reporter
to report the processing.
2019-06-19 14:06:29 +02:00
Lars Ingebrigtsen
390b4bc1e2 Allow specifying the expected number of shift/reduce conflicts
* admin/grammars/grammar.wy: Add %expectedconflicts.

* lisp/cedet/semantic/grammar-wy.el
(semantic-grammar-wy--keyword-table): Ditto.

* lisp/cedet/semantic/grammar.el
(semantic-grammar-expected-conflicts): New function.
(semantic-grammar-insert-defconst-with-eval): New function.
(semantic-grammar-create-package): Output the number of expected
shift/reduce conflicts.

* lisp/cedet/semantic/wisent/comp.el (wisent-total-conflicts):
Don't output the warning if the number of shift/reduce conflicts
is expected.
(wisent-expected-conflicts): Made obsolete.
2019-06-19 13:48:49 +02:00
Lars Ingebrigtsen
eef48e124d Tweak progress reporting in update-directory-autoloads
* lisp/emacs-lisp/autoload.el (update-directory-autoloads): Use
progress reporter so say what percentage the progress is at.
2019-06-19 13:48:48 +02:00
Mattias Engdegård
d3a7f3e6cd Compile any subsequence of `cond' clauses to switch (bug#36139)
A single `cond' form can how be compiled to any number of switch ops,
optionally interspersed with non-switch conditions.
Previously, switch ops would only be used for whole `cond' forms
containing no other tests.

* lisp/emacs-lisp/bytecomp.el (byte-compile--cond-vars):
Rename from `byte-compile-cond-vars'.
(byte-compile--default-val): Remove.
(byte-compile--cond-switch-prefix):
Replace `byte-compile-cond-jump-table-info'; now also returns
trailing non-switch clauses.
(byte-compile-cond-jump-table): New arguments; no longer compiles
the default case.
(byte-compile-cond): Look for and compile switches at any place in the
list of clauses.
* test/lisp/emacs-lisp/bytecomp-tests.el (byte-opt-testsuite-arith-data):
Add test expression.
2019-06-19 11:22:21 +02:00
Mattias Engdegård
14a81524c2 Compile cond with heterogeneous tests into switch (bug#36139)
Allow any mixture of `eq', `eql' and `equal', `memq', `memql' and
`member' in a switch-like `cond' to be compiled into a single switch.

* lisp/emacs-lisp/bytecomp.el (byte-compile--common-test): New.
(byte-compile-cond-jump-table-info): Use most specific common test.
* test/lisp/emacs-lisp/bytecomp-tests.el (byte-opt-testsuite-arith-data):
Add test cases for multi-value clause cond forms.
2019-06-19 11:20:59 +02:00
Mattias Engdegård
b8c74742c0 Tighter pcase or-pattern member function selection (bug#36139)
* lisp/emacs-lisp/pcase.el (pcase--u1):
Use the most specific of `memq', `memql' and `member' in or-patterns
with constant cases.  This improves performance and may help the byte-code
compiler generate a switch.
* test/lisp/emacs-lisp/pcase-tests.el (pcase-tests-member):
Add mixed-type or-pattern test cases.
2019-06-19 11:20:58 +02:00
Mattias Engdegård
36ab408207 Compile list member functions in cond to switch (bug#36139)
* lisp/emacs-lisp/bytecomp.el (byte-compile-cond-jump-table-info):
Expand `memq', `memql' and `member' to their corresponding
equality tests.
(byte-compile-cond-jump-table): Cases now have multiple values.
* lisp/emacs-lisp/byte-opt.el (byte-decompile-bytecode-1)
(byte-optimize-lapcode): Don't assume switch hash tables to be injective.
2019-06-19 11:20:58 +02:00
Glenn Morris
ef23c8be70 Disable lexical-binding in ediff
Since it breaks the thing (bug#36157, bug#36281).
* lisp/vc/ediff-diff.el, lisp/vc/ediff-help.el, lisp/vc/ediff-hook.el:
* lisp/vc/ediff-init.el, lisp/vc/ediff-merg.el, lisp/vc/ediff-mult.el:
* lisp/vc/ediff-ptch.el, lisp/vc/ediff-vers.el, lisp/vc/ediff-wind.el:
* lisp/vc/ediff.el: Set lexical-binding to nil.
2019-06-18 15:47:49 -07:00
Lars Ingebrigtsen
4956e7610c Revert "Add a mechanism to specify expected shift/reduce .wy conflicts"
This reverts commit f21ec24524.

*sigh*  Revert again because this created a bootstrap problem in a different part of the process.
2019-06-18 16:08:47 +02:00
Lars Ingebrigtsen
f21ec24524 Add a mechanism to specify expected shift/reduce .wy conflicts
* admin/grammars/python.wy: Set the expected number of
shift/reduce conflicts to four.

* lisp/cedet/semantic/grammar.el
(semantic-grammar-expected-conflicts): New function.

* lisp/cedet/semantic/wisent/comp.el (wisent-total-conflicts): Use
it to suppress warnings about the expected number of shift/reduce
conflicts.
2019-06-18 16:05:08 +02:00
Lars Ingebrigtsen
90b44f336c Revert "Add a mechanism to specify expected shift/reduce .wy conflicts"
This reverts commit d715ae8788.

This commit led to a build error, so revert for now.
2019-06-18 15:59:16 +02:00
Lars Ingebrigtsen
d715ae8788 Add a mechanism to specify expected shift/reduce .wy conflicts
* admin/grammars/python.wy: Set the expected number of
shift/reduce conflicts to four.

* lisp/cedet/semantic/grammar.el
(semantic-grammar-expected-conflicts): New function.
* lisp/cedet/semantic/wisent/comp.el (wisent-total-conflicts): Use
it to suppress warnings about the expected number of shift/reduce
conflicts.
2019-06-18 15:56:18 +02:00
Lars Ingebrigtsen
e09fcc1ff3 Rename symbols in ind-util.el to have indian- prefixes
* lisp/language/ind-util.el (indian-ucs-to-is13194-regexp)
(indian-ucs-to-iscii-region, indian-iscii-to-ucs-region): Rename
unprefixed function to indian-*.
2019-06-18 15:35:16 +02:00
Lars Ingebrigtsen
6a02ca0b8c Report progress during custom-make-dependencies instead of file count
* lisp/cus-dep.el (custom-make-dependencies): Rewrite to use
reporter to report progress instead of how many files we've
processed.

* lisp/emacs-lisp/byte-run.el (byte-compile-info-string): New function.
(byte-compile-info-message): Use it.
2019-06-18 15:24:10 +02:00
Lars Ingebrigtsen
29ea0803d7 Make quail conversion output quieter
* lisp/international/quail.el (quail-update-leim-list-file): Ditto.
* lisp/international/titdic-cnv.el (tit-process-header)
(tit-process-body, miscdic-convert, batch-titdic-convert): Reduce
messaging.
2019-06-18 12:32:16 +02:00
Lars Ingebrigtsen
e040870e0b Fix compilation warning in bookmark.el
* lisp/bookmark.el (bookmarks-already-loaded): Move obsolete alias
definition to before its referent.

In toplevel form:
bookmark.el:279:1:Warning: Alias for `bookmark-bookmarks-timestamp' should be
    declared before its referent
2019-06-18 12:21:27 +02:00
Lars Ingebrigtsen
dc9b7b0068 Output progress reports when scanning for finder/custom
* lisp/cus-dep.el (custom-make-dependencies): Ditto.

* lisp/finder.el (finder-compile-keywords): Instead of outputting
the directories being scanned, output progress reports on the
number of files being scanned.  This makes the output more similar
to the autoload scraping.
2019-06-18 12:19:37 +02:00
Lars Ingebrigtsen
5da1230f61 Touch up the byte-compilation messaging in skkdic-set-okuri-nasi
* lisp/international/ja-dic-cnv.el (skkdic-set-okuri-nasi): Use
the "INFO" format for these informational messages, and be more
explicit in saying what they're doing.
2019-06-18 11:50:41 +02:00
Lars Ingebrigtsen
b441e8cd7c Silence spurious load message in latin-ltx.el
* lisp/leim/quail/latin-ltx.el (latin-ltx--define-rules): Silence
the `load' because it's not very informative.
2019-06-18 11:33:40 +02:00
Lars Ingebrigtsen
a5269a7fcf Tweak implementation of byte-compile-info-message
* lisp/emacs-lisp/byte-run.el (byte-compile-info-message): Clean
up implementation.
2019-06-18 10:36:14 +02:00
Roland Winkler
0f4d368f35 * bookmark.el: Watch bookmark file. Use lexical binding.
(bookmark-watch-bookmark-file): New user variable.
(bookmark-alist): Fix docstring.
(bookmark-bookmarks-timestamp): Renamed from bookmarks-already-loaded.
(bookmark-maybe-load-default-file, bookmark-save, bookmark-load):
Use bookmark-bookmarks-timestamp.
(bookmark-bmenu-mode-map): Define menu bar menu.
(bookmark-show-annotation, bookmark-show-all-annotations):
Make bookmarks buffer read-only.
(bookmark-bmenu-save): Use call-interactively.
2019-06-18 00:59:11 -05:00
Lars Ingebrigtsen
56a90c4234 Output progress messages when scraping autoloads during bootstrap
* lisp/emacs-lisp/byte-run.el (byte-compile-info-message): New
function to outout informational messages during byte compilation.

* lisp/emacs-lisp/autoload.el (update-directory-autoloads): Use it
to report progress when scraping autoloads during bootstrap (which
may take half a minute).
2019-06-18 01:05:58 +02:00
Lars Ingebrigtsen
8b8280ac7f Silence message in latin-ltx about the normal situation
* lisp/leim/quail/latin-ltx.el (latin-ltx--define-rules): Don't
output the summary message unless there are conflicts.
2019-06-18 00:56:45 +02:00
Alan Mackenzie
da6deda8d4 Move defvars of c-doc-line-join-re + two others from cc-fonts.el to cc-mode.el
This is because these variables are needed at runtime even when cc-fonts.el
hasn't been loaded, as in XEmacs when font locking hasn't been enabled.

* lisp/progmodes/cc-fonts.el (c-doc-line-join-re)
(c-doc-bright-comment-start-re, c-doc-line-join-end-ch): Move definitions to
cc-mode.el.
2019-06-17 20:22:06 +00:00
Lars Ingebrigtsen
aed6e2f7c6 Compilation work-around for obsolete eieio-object-set-name-string
* lisp/emacs-lisp/eieio-base.el (eieio-object-set-name-string):
Move the generic definition of this method to here from eieio.el
and place it after the cl-method definition.  This avoids a
warning about it being obsolete when doing macro expansion.
2019-06-17 21:53:22 +02:00
Lars Ingebrigtsen
f8efeee0e1 Work around warning from macroexpanding obsolete method
* lisp/emacs-lisp/eieio.el (object-print): Move method definition
to before generic definition because the generic definition
obsoletes the method, which will then output a warning from when
macroexpanding.
2019-06-17 21:40:12 +02:00
Alex Branham
1942f4ccba
Avoid a flyspell error if point is at beginning of buffer
* lisp/textmodes/flyspell.el (flyspell-generic-progmode-verify): Check
if point is at the beginning of the buffer.  This prevents an error
when e.g. 'flyspell-auto-correct-word' gets called with point at the
beginning of the buffer.

Bug#35967
2019-06-17 14:03:33 -05:00
Lars Ingebrigtsen
44a086e5cc Declare unknown slots to silence the compiler
* lisp/cedet/ede/config.el (classpath): Declare slot.
(ede-java-classpath): Revert previous hack.

* lisp/cedet/srecode/srt-mode.el (key): Declare slot.
(srecode-macro-help): Revert previous hack.
(srecode-parse-this-macro): Ditto.
2019-06-17 15:51:43 +02:00
Lars Ingebrigtsen
c0b322e33c Change the eieio-declare-slots function into a macro
* lisp/emacs-lisp/eieio-core.el (eieio-declare-slots): Change into
a compile-only macro.
2019-06-17 15:48:39 +02:00
Lars Ingebrigtsen
1250a24f8e New function eieio-declare-slots
* lisp/emacs-lisp/eieio-core.el (eieio-declare-slots): New
function to suppress compiler warnings about unknown slots.
2019-06-17 15:46:09 +02:00
Lars Ingebrigtsen
a07c647a2a Fix use of obsolete constructor in semantic/complete.el
* lisp/cedet/semantic/complete.el (make-instance): Use
make-instance instead of the obsolete constructor method...  which
didn't work, anyway.  The following would bug out
2019-06-17 13:30:30 +02:00
Lars Ingebrigtsen
0161a4ae09 Fix compilation warning by having ede-target inherit from eieio-named
* lisp/cedet/ede/base.el (ede-target): Inherit from eieio-named so
that if you're customizing objects via eieio-object-value-get, you
can set the name.

* lisp/emacs-lisp/eieio-custom.el (eieio-object-value-get): Don't
use obsolete function `eieio-object-set-name-string'.
2019-06-17 13:05:40 +02:00
Alan Mackenzie
7bf6592034 Remove the now unneeded c-font-lock-flush from CC Mode.
* lisp/progmodes/cc-defs.el (c-font-lock-flush): Delete this macro.

* lisp/progmodes/cc-engine.el (c-propertize-raw-string-opener): Delete the
call to the macro.
2019-06-17 11:00:55 +00:00
Lars Ingebrigtsen
e5a4d1a06f Make calc-macs.el lexical
* lisp/calc/calc-macs.el: Enable lexical binding.  This fixes a
build warning in calc.el (which is lexical).
2019-06-17 12:45:10 +02:00
Lars Ingebrigtsen
c287deb0b8 Suppress warning in isearchb about iswitchb being obsolete
* lisp/isearchb.el (obsolete): Suppress warning about package
being obsolete.  Instead, this has been reported to the bug
tracker, because it requires a rewrite of isearchb.
2019-06-17 12:37:02 +02:00
Lars Ingebrigtsen
e6f2f5ace1 Make do-after-load-evaluation check whether warnings are enabled.
* lisp/subr.el (do-after-load-evaluation): Heed
`byte-compile-warning-enabled-p', if defined.  This allows
suppressing the warning about packages being obsolete.
2019-06-17 12:36:01 +02:00
Lars Ingebrigtsen
c90fc19c6c Suppress compilation warning in srt-mode
* lisp/cedet/srecode/srt-mode.el (srecode-parse-this-macro): Check
for the existence of `key' in the macro before using it, and
suppress the warning.
2019-06-17 12:22:15 +02:00
Lars Ingebrigtsen
5e63ea1ff6 Suppress warning about out-of-tree Java class in cedet
* lisp/cedet/ede/config.el (ede-java-classpath): Hack to suppress
a compilation warning in glue code to out-of-tree code.
2019-06-17 12:19:44 +02:00
Lars Ingebrigtsen
a7417ddf5e Suppress warning about object-print in eieio.el
* lisp/emacs-lisp/eieio.el (obsolete): Suppress warning about
object-print being obsolete, because there are no in-tree
definitions any more.
2019-06-17 12:12:48 +02:00
Lars Ingebrigtsen
3ccc0d623a Add check for enabled warning before issuing
* lisp/emacs-lisp/bytecomp.el (byte-compile-function-warn): Check
whether we want the `obsolete' warning before issuing it.
2019-06-17 12:09:18 +02:00
Lars Ingebrigtsen
3820b77c9e Suppress warning about object-print in eieio.el
* lisp/emacs-lisp/eieio.el (cl-print-object): Suppress the warning
about object-print being obsolete, since there are no in-tree
methods like that any more.
2019-06-17 11:42:03 +02:00
Lars Ingebrigtsen
5a35377fed Make with-suppressed-warnings work in cl-defmethod
* lisp/emacs-lisp/cl-generic.el (cl-defmethod): Pass the symbol
name on to `byte-compile-warning-enabled-p' to make
with-suppressed-warnings work in cl-defmethods, too.
2019-06-17 11:39:56 +02:00
Lars Ingebrigtsen
1dfd6b4042 Rewrite object-print methods in cedet to be cl-print-object methods
* lisp/cedet/semantic/db-el.el (object-print): Ditto.
(object-print): Ditto.

* lisp/cedet/semantic/db-global.el (object-print): Ditto.

* lisp/cedet/semantic/db.el (object-print): Remove; unused.
* lisp/cedet/semantic/db.el (semanticdb-debug-info): New method.
(object-print): Rewritten to be cl-print-object.

* lisp/emacs-lisp/eieio.el (eieio-object-name): Allow the EXTRA
argument to be a list of strings.
2019-06-17 11:25:34 +02:00
Lars Ingebrigtsen
c89dc27c2c Add doc strings to the -at-point commands in vc-git
* lisp/vc/vc-git.el (vc-git-stash-delete-at-point)
(vc-git-stash-show-at-point, vc-git-stash-apply-at-point)
(vc-git-stash-pop-at-point): Add doc strings to these commands.
2019-06-17 11:25:34 +02:00
Roland Winkler
c028814589 * find-dired.el (find-dired-refine-function): Fix defcustom. 2019-06-16 23:02:12 -05:00