]> git.eshelyaron.com Git - emacs.git/log
emacs.git
5 years agoFix typo in previous erc.el change
Lars Ingebrigtsen [Wed, 19 Jun 2019 16:29:17 +0000 (18:29 +0200)]
Fix typo in previous erc.el change

* lisp/erc/erc.el (erc-send-input): Fix typo in previous checkin.

5 years agoUse add/remove-hook on erc-pre-send-functions
Lars Ingebrigtsen [Wed, 19 Jun 2019 16:20:22 +0000 (18:20 +0200)]
Use add/remove-hook on erc-pre-send-functions

* lisp/erc/erc-goodies.el (noncommands): Ditto.

* lisp/erc/erc-ring.el (ring): Use add/remove-hook.

5 years agoMove around defgeneric/defmethods in eieio
Lars Ingebrigtsen [Wed, 19 Jun 2019 15:12:29 +0000 (17:12 +0200)]
Move around defgeneric/defmethods in eieio

* lisp/emacs-lisp/eieio.el (object-print):
* lisp/emacs-lisp/eieio-base.el (eieio-object-set-name-string):
Move the defgeneric before the defmethod, because that makes more
sense.

5 years agoFix previous change to erc (where commands like /me wouldn't be sent)
Lars Ingebrigtsen [Wed, 19 Jun 2019 15:07:36 +0000 (17:07 +0200)]
Fix previous change to erc (where commands like /me wouldn't be sent)

* lisp/erc/erc-ring.el (erc-add-to-input-ring):
* lisp/erc/erc-goodies.el (erc-send-distinguish-noncommands): Pass
in a erc-input structure instead of a simple string.
* lisp/erc/erc.el (erc-pre-send-functions): Document the new
argument to the filter functions.
(erc-send-input): Use the new structure to allow the filter
functions to alter all three things: The string, whether to insert
the string, and whether to send the string.

5 years agoDon't have erc-goodies and erc-ring register functions multiple times
Lars Ingebrigtsen [Wed, 19 Jun 2019 14:42:02 +0000 (16:42 +0200)]
Don't have erc-goodies and erc-ring register functions multiple times

* lisp/erc/erc-goodies.el (noncommands): Don't register functions
twice.

* lisp/erc/erc-ring.el (ring): Ditto.

5 years ago(with-suppressed-warnings): Make it apply to macro-expansion as well
Stefan Monnier [Wed, 19 Jun 2019 14:47:55 +0000 (10:47 -0400)]
(with-suppressed-warnings): Make it apply to macro-expansion as well

* lisp/emacs-lisp/bytecomp.el (byte-compile-initial-macro-environment):
Change with-suppressed-warnings so it also affects the macro-expansion of
the body.

5 years agoRename function in completion.el to use completion- prefixes
Lars Ingebrigtsen [Wed, 19 Jun 2019 14:03:57 +0000 (16:03 +0200)]
Rename function in completion.el to use completion- prefixes

* lisp/completion.el (locate-completion-entry)
(completion-locate-entry, locate-completion-entry-retry)
(completion-locate-entry-retry, locate-completion-db-error):
Rename to use a completion- prefix and make the old names obsolete
aliases.
(add-completion-to-head, delete-completion): Use the new function
names.

5 years ago* lisp/textmodes/page-ext.el: Further cleanup
Stefan Monnier [Wed, 19 Jun 2019 13:53:06 +0000 (09:53 -0400)]
* 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`.

5 years agoFix compilation warning in pcmpl-gnu.el
Lars Ingebrigtsen [Wed, 19 Jun 2019 13:30:22 +0000 (15:30 +0200)]
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.

5 years agoRevert "Fix one of the tags/xref warnings in viper-ex.el"
Lars Ingebrigtsen [Wed, 19 Jun 2019 13:21:20 +0000 (15:21 +0200)]
Revert "Fix one of the tags/xref warnings in viper-ex.el"

This reverts commit 4f2f95049738be97df8647705a8fc05a029ed244.

We can't mix calls to find-tag and xref-find-definitions

5 years agoFix up the function/variable names in page-ext.el
Lars Ingebrigtsen [Wed, 19 Jun 2019 13:10:51 +0000 (15:10 +0200)]
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.

5 years agoTouch up the OKURI-NASI progress reporting
Lars Ingebrigtsen [Wed, 19 Jun 2019 12:29:41 +0000 (14:29 +0200)]
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.

5 years agoTweak progess reporting in finder-compile-keywords
Lars Ingebrigtsen [Wed, 19 Jun 2019 12:06:29 +0000 (14:06 +0200)]
Tweak progess reporting in finder-compile-keywords

* lisp/finder.el (finder-compile-keywords): Use progress reporter
to report the processing.

5 years agoAllow specifying the expected number of shift/reduce conflicts
Lars Ingebrigtsen [Wed, 19 Jun 2019 11:47:22 +0000 (13:47 +0200)]
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.

5 years agoTweak progress reporting in update-directory-autoloads
Lars Ingebrigtsen [Tue, 18 Jun 2019 14:13:54 +0000 (16:13 +0200)]
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.

5 years agoCompile any subsequence of `cond' clauses to switch (bug#36139)
Mattias Engdegård [Fri, 7 Jun 2019 15:04:10 +0000 (17:04 +0200)]
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.

5 years agoCompile cond with heterogeneous tests into switch (bug#36139)
Mattias Engdegård [Wed, 22 May 2019 10:36:03 +0000 (12:36 +0200)]
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.

5 years agoTighter pcase or-pattern member function selection (bug#36139)
Mattias Engdegård [Tue, 21 May 2019 10:19:38 +0000 (12:19 +0200)]
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.

5 years agoCompile list member functions in cond to switch (bug#36139)
Mattias Engdegård [Tue, 21 May 2019 09:56:14 +0000 (11:56 +0200)]
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.

5 years agoFix oversights of "support X core font driver on cairo" change
YAMAMOTO Mitsuharu [Wed, 19 Jun 2019 09:07:00 +0000 (18:07 +0900)]
Fix oversights of "support X core font driver on cairo" change

* src/Makefile.in (FONT_OBJ): Fix comment for USE_CAIRO.
* src/xfns.c (x_create_tip_frame) [USE_CAIRO]: Register xfont_driver.

5 years ago--with-cairo is no longer experimental
Paul Eggert [Wed, 19 Jun 2019 07:06:39 +0000 (00:06 -0700)]
--with-cairo is no longer experimental

Suggested by YAMAMOTO Mitsuharu in:
https://lists.gnu.org/r/emacs-devel/2019-06/msg00686.html
* configure.ac: Do not say --with-cairo is experimental.
* etc/NEWS: Say that --with-cairo is no longer experimental.

5 years agoDisable lexical-binding in ediff
Glenn Morris [Tue, 18 Jun 2019 22:47:49 +0000 (15:47 -0700)]
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.

5 years agoFix the handling of font backend supersedence on MS-Windows
Eli Zaretskii [Tue, 18 Jun 2019 17:21:40 +0000 (20:21 +0300)]
Fix the handling of font backend supersedence on MS-Windows

* src/w32font.c (syms_of_w32font): Don't make the Uniscribe
font backend "superceded" here, ...
* src/w32uniscribe.c (syms_of_w32uniscribe_for_pdumper):
... make it "superceded" here, only if the HarfBuzz DLL was
successfully loaded.  This is because Emacs compiled with
HarfBuzz support might run on a system without the DLL.
* src/w32fns.c (Fx_create_frame, w32_create_tip_frame):
Register the HarfBuzz font backend only if it is available.

5 years agoRevert "Add a mechanism to specify expected shift/reduce .wy conflicts"
Lars Ingebrigtsen [Tue, 18 Jun 2019 14:08:47 +0000 (16:08 +0200)]
Revert "Add a mechanism to specify expected shift/reduce .wy conflicts"

This reverts commit f21ec24524c705e18674a2e9e4db37b11fa3ebab.

*sigh*  Revert again because this created a bootstrap problem in a different part of the process.

5 years agoAdd a mechanism to specify expected shift/reduce .wy conflicts
Lars Ingebrigtsen [Tue, 18 Jun 2019 14:05:08 +0000 (16:05 +0200)]
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.

5 years agoRevert "Add a mechanism to specify expected shift/reduce .wy conflicts"
Lars Ingebrigtsen [Tue, 18 Jun 2019 13:59:16 +0000 (15:59 +0200)]
Revert "Add a mechanism to specify expected shift/reduce .wy conflicts"

This reverts commit d715ae8788e16b22f7f68cb82b51a40ad95c78c2.

This commit led to a build error, so revert for now.

5 years agoAdd a mechanism to specify expected shift/reduce .wy conflicts
Lars Ingebrigtsen [Tue, 18 Jun 2019 13:56:18 +0000 (15:56 +0200)]
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.

5 years agoRename symbols in ind-util.el to have indian- prefixes
Lars Ingebrigtsen [Tue, 18 Jun 2019 13:35:16 +0000 (15:35 +0200)]
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-*.

5 years agoReport progress during custom-make-dependencies instead of file count
Lars Ingebrigtsen [Tue, 18 Jun 2019 13:24:10 +0000 (15:24 +0200)]
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.

5 years agoMake quail conversion output quieter
Lars Ingebrigtsen [Tue, 18 Jun 2019 10:32:16 +0000 (12:32 +0200)]
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.

5 years agoFix compilation warning in bookmark.el
Lars Ingebrigtsen [Tue, 18 Jun 2019 10:21:27 +0000 (12:21 +0200)]
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

5 years agoOutput progress reports when scanning for finder/custom
Lars Ingebrigtsen [Tue, 18 Jun 2019 10:19:37 +0000 (12:19 +0200)]
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.

5 years agoTouch up the byte-compilation messaging in skkdic-set-okuri-nasi
Lars Ingebrigtsen [Tue, 18 Jun 2019 09:50:41 +0000 (11:50 +0200)]
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.

5 years agoAdd types to some no-type tokes in js.wy
Lars Ingebrigtsen [Tue, 18 Jun 2019 01:04:00 +0000 (03:04 +0200)]
Add types to some no-type tokes in js.wy

* admin/grammars/js.wy: Add types to the FALSE, TRUE and QUERY tokens.

Without the types, you'd get the warning

*Warning* default value of <<no-type>> tokens changed to QUERY, was NULL_TOKEN
*Warning* default value of <<no-type>> tokens changed to TRUE, was QUERY
*Warning* default value of <<no-type>> tokens changed to FALSE, was TRUE

I think this should be harmless, and it doesn't seem to break handling
.js files.

5 years agoComment out useless nonterminals from python.wy
Lars Ingebrigtsen [Tue, 18 Jun 2019 00:42:44 +0000 (02:42 +0200)]
Comment out useless nonterminals from python.wy

5 years agoRemove nonterminals that semantic claims are useless
Lars Ingebrigtsen [Tue, 18 Jun 2019 00:34:32 +0000 (02:34 +0200)]
Remove nonterminals that semantic claims are useless

* admin/grammars/js.wy (VariableStatement): Remove useless
nonterminals.

Debug output from wisent:

Useless nonterminals:

   StatementList
   BlockExpand

5 years agoSilence spurious load message in latin-ltx.el
Lars Ingebrigtsen [Mon, 17 Jun 2019 23:14:05 +0000 (01:14 +0200)]
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.

5 years agoTweak implementation of byte-compile-info-message
Lars Ingebrigtsen [Tue, 18 Jun 2019 08:36:06 +0000 (10:36 +0200)]
Tweak implementation of byte-compile-info-message

* lisp/emacs-lisp/byte-run.el (byte-compile-info-message): Clean
up implementation.

5 years ago* bookmark.el: Watch bookmark file. Use lexical binding.
Roland Winkler [Tue, 18 Jun 2019 05:59:11 +0000 (00:59 -0500)]
* 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.

5 years agoSupport font driver supersession
YAMAMOTO Mitsuharu [Tue, 18 Jun 2019 01:19:40 +0000 (10:19 +0900)]
Support font driver supersession

* src/font.c (font_update_drivers): If argument NEW_DRIVERS is t, then don't
use superseded drivers.
(syms_of_font) <Qfont_driver_superseded_by>: New DEFSYM.

* src/ftfont.c (syms_of_ftfont) [HAVE_HARFBUZZ]:
* src/ftcrfont.c (syms_of_ftcrfont) [HAVE_HARFBUZZ]:
* src/w32font.c (syms_of_w32font) [HAVE_HARFBUZZ]:
* src/xftfont.c (syms_of_xftfont) [HAVE_HARFBUZZ]: Make Harfbuzz variants
supersede non-Harfbuzz ones.

* src/w32fns.c (Fx_create_frame, w32_create_tip_frame): Remove font backend
determination code.

5 years agoOutput progress messages when scraping autoloads during bootstrap
Lars Ingebrigtsen [Mon, 17 Jun 2019 23:05:58 +0000 (01:05 +0200)]
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).

5 years agoSilence message in latin-ltx about the normal situation
Lars Ingebrigtsen [Mon, 17 Jun 2019 22:56:40 +0000 (00:56 +0200)]
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.

5 years ago* src/image.c (image_set_rotation): Do negation at compile-time.
Paul Eggert [Mon, 17 Jun 2019 22:46:36 +0000 (15:46 -0700)]
* src/image.c (image_set_rotation): Do negation at compile-time.

5 years agoMove defvars of c-doc-line-join-re + two others from cc-fonts.el to cc-mode.el
Alan Mackenzie [Mon, 17 Jun 2019 20:22:06 +0000 (20:22 +0000)]
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.

5 years agoCompilation work-around for obsolete eieio-object-set-name-string
Lars Ingebrigtsen [Mon, 17 Jun 2019 19:53:22 +0000 (21:53 +0200)]
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.

5 years agoWork around warning from macroexpanding obsolete method
Lars Ingebrigtsen [Mon, 17 Jun 2019 19:40:05 +0000 (21:40 +0200)]
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.

5 years agoAvoid a flyspell error if point is at beginning of buffer
Alex Branham [Fri, 14 Jun 2019 18:15:36 +0000 (13:15 -0500)]
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

5 years agoDeclare unknown slots to silence the compiler
Lars Ingebrigtsen [Mon, 17 Jun 2019 13:51:43 +0000 (15:51 +0200)]
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.

5 years agoChange the eieio-declare-slots function into a macro
Lars Ingebrigtsen [Mon, 17 Jun 2019 13:48:39 +0000 (15:48 +0200)]
Change the eieio-declare-slots function into a macro

* lisp/emacs-lisp/eieio-core.el (eieio-declare-slots): Change into
a compile-only macro.

5 years agoNew function eieio-declare-slots
Lars Ingebrigtsen [Mon, 17 Jun 2019 13:46:09 +0000 (15:46 +0200)]
New function eieio-declare-slots

* lisp/emacs-lisp/eieio-core.el (eieio-declare-slots): New
function to suppress compiler warnings about unknown slots.

5 years agoFix use of obsolete constructor in semantic/complete.el
Lars Ingebrigtsen [Mon, 17 Jun 2019 11:30:30 +0000 (13:30 +0200)]
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

5 years agoFix compilation warning by having ede-target inherit from eieio-named
Lars Ingebrigtsen [Mon, 17 Jun 2019 11:05:34 +0000 (13:05 +0200)]
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'.

5 years agoRemove the now unneeded c-font-lock-flush from CC Mode.
Alan Mackenzie [Mon, 17 Jun 2019 11:00:55 +0000 (11:00 +0000)]
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.

5 years agoMake calc-macs.el lexical
Lars Ingebrigtsen [Mon, 17 Jun 2019 10:45:10 +0000 (12:45 +0200)]
Make calc-macs.el lexical

* lisp/calc/calc-macs.el: Enable lexical binding.  This fixes a
build warning in calc.el (which is lexical).

5 years agoSuppress warning in isearchb about iswitchb being obsolete
Lars Ingebrigtsen [Mon, 17 Jun 2019 10:37:02 +0000 (12:37 +0200)]
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.

5 years agoMake do-after-load-evaluation check whether warnings are enabled.
Lars Ingebrigtsen [Mon, 17 Jun 2019 10:36:01 +0000 (12:36 +0200)]
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.

5 years agoSuppress compilation warning in srt-mode
Lars Ingebrigtsen [Mon, 17 Jun 2019 10:22:15 +0000 (12:22 +0200)]
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.

5 years agoSuppress warning about out-of-tree Java class in cedet
Lars Ingebrigtsen [Mon, 17 Jun 2019 10:19:44 +0000 (12:19 +0200)]
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.

5 years agoSuppress warning about object-print in eieio.el
Lars Ingebrigtsen [Mon, 17 Jun 2019 10:12:48 +0000 (12:12 +0200)]
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.

5 years agoAdd check for enabled warning before issuing
Lars Ingebrigtsen [Mon, 17 Jun 2019 10:09:18 +0000 (12:09 +0200)]
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.

5 years agoSuppress warning about object-print in eieio.el
Lars Ingebrigtsen [Mon, 17 Jun 2019 09:42:03 +0000 (11:42 +0200)]
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.

5 years agoMake with-suppressed-warnings work in cl-defmethod
Lars Ingebrigtsen [Mon, 17 Jun 2019 09:39:56 +0000 (11:39 +0200)]
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.

5 years agoRewrite object-print methods in cedet to be cl-print-object methods
Lars Ingebrigtsen [Mon, 17 Jun 2019 09:22:21 +0000 (11:22 +0200)]
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.

5 years agoAdd doc strings to the -at-point commands in vc-git
Lars Ingebrigtsen [Mon, 17 Jun 2019 08:35:05 +0000 (10:35 +0200)]
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.

5 years ago* find-dired.el (find-dired-refine-function): Fix defcustom.
Roland Winkler [Mon, 17 Jun 2019 04:02:12 +0000 (23:02 -0500)]
* find-dired.el (find-dired-refine-function): Fix defcustom.

5 years agoPrevent the Gnus registry from being loaded twice at startup
Eric Abrahamsen [Mon, 17 Jun 2019 02:14:25 +0000 (19:14 -0700)]
Prevent the Gnus registry from being loaded twice at startup

* lisp/gnus/gnus-registry.el (gnus-registry-load): Check if the
  registry is already loaded, and don't load again unless new optional
  FORCE argument is non-nil.
  (gnus-registry-clear): New function to clear the registry, added as
  a Gnus shutdown. Now that loading doesn't unilaterally reset the
  registry, we need to make sure it is reloaded when Gnus is.

5 years agoAvoid rounding error in image rotation
YAMAMOTO Mitsuharu [Mon, 17 Jun 2019 01:43:31 +0000 (10:43 +0900)]
Avoid rounding error in image rotation

* src/image.c (image_set_rotation): Halve translations as double values.

5 years agoTweak compilation mode used by byte-recompile-directory
Glenn Morris [Mon, 17 Jun 2019 00:36:52 +0000 (17:36 -0700)]
Tweak compilation mode used by byte-recompile-directory

* lisp/emacs-lisp/bytecomp.el (emacs-lisp-compilation-mode):
Doc fix.
(byte-recompile-directory): Use emacs-lisp-compilation-mode.

5 years agoDisable filling of warnings in a bytecomp test
Glenn Morris [Mon, 17 Jun 2019 00:35:36 +0000 (17:35 -0700)]
Disable filling of warnings in a bytecomp test

* test/lisp/emacs-lisp/bytecomp-tests.el (test-suppression):
Disable filling rather than working around it.

5 years agoTweak how byte-compile-print-syms fills
Glenn Morris [Mon, 17 Jun 2019 00:34:27 +0000 (17:34 -0700)]
Tweak how byte-compile-print-syms fills

* lisp/emacs-lisp/bytecomp.el (byte-compile-print-syms):
Use fill-column from the compile log buffer.

5 years agoDon't hard-code the fill-column for display-warning
Glenn Morris [Mon, 17 Jun 2019 00:31:49 +0000 (17:31 -0700)]
Don't hard-code the fill-column for display-warning

* lisp/emacs-lisp/warnings.el (warning-fill-column): New variable.
(display-warning): Use warning-fill-column.
* doc/lispref/display.texi (Warning Variables):
Mention warning-fill-column.

5 years ago* lisp/emacs-lisp/cl-generic.el (gv-setter): Move declaration.
Stefan Monnier [Sun, 16 Jun 2019 22:35:35 +0000 (18:35 -0400)]
* lisp/emacs-lisp/cl-generic.el (gv-setter): Move declaration.

Move it to those places where we know gv has been loaded.

5 years agoFix up the --no-print-directory changes in src/Makefile.in
Lars Ingebrigtsen [Sun, 16 Jun 2019 22:33:53 +0000 (00:33 +0200)]
Fix up the --no-print-directory changes in src/Makefile.in

* src/Makefile.in (AM_V_NO_PD): New macro written by Andreas
Schwab that can be either --no-print-directory or "".
(%.elc): Use it instead if the if statement.

5 years ago; Update admin notes re web pages
Glenn Morris [Sun, 16 Jun 2019 22:25:19 +0000 (15:25 -0700)]
; Update admin notes re web pages

5 years agoBump up max_specpdl_size to 1500. (Bug#36216)
Juanma Barranquero [Sun, 16 Jun 2019 21:14:51 +0000 (23:14 +0200)]
Bump up max_specpdl_size to 1500.  (Bug#36216)

* src/eval.c (init_eval_once): Set max_specpdl_size to 1500.
* doc/lispref/variables.texi (Local Variables): Document it.

5 years agoAdd comment to eieio-opt about why we're requiring cl-extra
Lars Ingebrigtsen [Sun, 16 Jun 2019 20:26:34 +0000 (22:26 +0200)]
Add comment to eieio-opt about why we're requiring cl-extra

* lisp/emacs-lisp/eieio-opt.el (cl-extra): Add comment about why
we're not requiring cl-lib.

5 years agoRevert "Simplify image transforms"
Alan Third [Sun, 16 Jun 2019 19:46:31 +0000 (20:46 +0100)]
Revert "Simplify image transforms"

This reverts commit cf3081d208814ea02fce33aac645abfc24f880a6.

; Pushed in error.

5 years agoSimplify image transforms
Alan Third [Sun, 16 Jun 2019 19:10:20 +0000 (20:10 +0100)]
Simplify image transforms

* src/image.c: (image_set_rotation, image_set_size,
image_set_transform): Combine into image_set_transform.
(image_set_crop): Remove function.
(lookup_image): Remove calls to removed functions and remove
transform_matrix.
* test/manual/image-transforms-tests.el (test-cropping): Remove
function.
(test-transforms): Remove reference to test-cropping.

5 years agoDocument image transforms
Alan Third [Tue, 11 Jun 2019 19:31:24 +0000 (20:31 +0100)]
Document image transforms

* doc/lispref/display.texi (Image Descriptors): Document :crop and
update :rotation.
* src/image.c: Describe the image transform matrix layout.
* test/manual/image-transforms-tests.el: New file.

5 years agoFix compilation warning about gv-setter in cl-generic
Lars Ingebrigtsen [Sun, 16 Jun 2019 15:58:31 +0000 (17:58 +0200)]
Fix compilation warning about gv-setter in cl-generic

* lisp/emacs-lisp/cl-generic.el (gv-setter): Declare to avoid a
compilation warning.

5 years agoCC Mode: Remedy recent loss in performance
Alan Mackenzie [Sun, 16 Jun 2019 15:46:12 +0000 (15:46 +0000)]
CC Mode: Remedy recent loss in performance

* lisp/progmodes/cc-engine.el (c-back-over-member-initializers): call
c-parse-state outside of the narrowing operation.

* lisp/progmodes/cc-fonts.el (c-get-fontification-context)
(c-font-lock-cut-off-declarators): Replace calls to c-determine-limit with
crude position calculations for speed.

5 years agoFix compilation warning i eieio-base
Lars Ingebrigtsen [Sun, 16 Jun 2019 14:48:34 +0000 (16:48 +0200)]
Fix compilation warning i eieio-base

* lisp/emacs-lisp/eieio-base.el (clone): Use eieio-object-class
instead of obsolete function class-of.

5 years agoFix compilation warning in ede.el
Lars Ingebrigtsen [Sun, 16 Jun 2019 14:39:28 +0000 (16:39 +0200)]
Fix compilation warning in ede.el

* lisp/cedet/ede/auto.el (ede-project-autoload): Inherit from
eieio-named, because we want to set the object name...

* lisp/cedet/ede.el (ede-new): ... which we do here, and fix the
compilation warning about the obsolete
eieio-object-set-name-string function.

5 years agoRevert "Fix compilation warning in ede.el"
Lars Ingebrigtsen [Sun, 16 Jun 2019 14:29:52 +0000 (16:29 +0200)]
Revert "Fix compilation warning in ede.el"

This reverts commit 7bbb56bc430465a6807a8129a322c704c89e3eba.

The commit led to a bootstrap error.

5 years agoFix compilation warning in ede.el
Lars Ingebrigtsen [Sun, 16 Jun 2019 14:23:25 +0000 (16:23 +0200)]
Fix compilation warning in ede.el

* lisp/cedet/ede.el (ede-new): ... which we do here, and fix the
compilation warning about the obsolete
eieio-object-set-name-string function.

* lisp/cedet/ede/auto.el (ede-project-autoload): Inherit from
eieio-named, because we want to set the object name...

5 years agoRemove obsolete name arg from two constructors
Lars Ingebrigtsen [Sun, 16 Jun 2019 14:06:34 +0000 (16:06 +0200)]
Remove obsolete name arg from two constructors

* lisp/cedet/semantic/grammar.el
(semantic-analyze-current-context): Remove obsolete name arg.

* lisp/cedet/srecode/insert.el (srecode--insert-into-buffer): Ditto.

5 years agoCompilation fix for previous change to eieio-opt
Lars Ingebrigtsen [Sun, 16 Jun 2019 14:04:51 +0000 (16:04 +0200)]
Compilation fix for previous change to eieio-opt

* lisp/emacs-lisp/eieio-opt.el (cl-extra): Require for
cl--describe-class.

5 years agoFix compilation warning in eieio-opt
Lars Ingebrigtsen [Sun, 16 Jun 2019 14:02:42 +0000 (16:02 +0200)]
Fix compilation warning in eieio-opt

* lisp/emacs-lisp/eieio-opt.el (eieio-help-constructor): Don't
use obsolete function eieio-help-class.

5 years agoAvoid "unknown slot" compilation warning in eieio-custom
Lars Ingebrigtsen [Sun, 16 Jun 2019 13:53:03 +0000 (15:53 +0200)]
Avoid "unknown slot" compilation warning in eieio-custom

* lisp/emacs-lisp/eieio-custom.el
(eieio-read-customization-group): Slot `name' may not exist in all
classes, so protect against that (and avoid a compilation warning
about it).

5 years agoAvoid a compilation warning in srt-mode.el
Lars Ingebrigtsen [Sun, 16 Jun 2019 13:42:30 +0000 (15:42 +0200)]
Avoid a compilation warning in srt-mode.el

* lisp/cedet/srecode/srt-mode.el (srecode-macro-help): Add hack to
avoid compilation warning about slot that has to exist at this
point.

5 years agoFix one of the tags/xref warnings in viper-ex.el
Lars Ingebrigtsen [Sun, 16 Jun 2019 13:21:10 +0000 (15:21 +0200)]
Fix one of the tags/xref warnings in viper-ex.el

* lisp/emulation/viper-ex.el (ex-tag): Avoid a compilation warning
about find-tag-other-window.

5 years agoDeclare function in esh-mode before #'-ing it
Lars Ingebrigtsen [Sun, 16 Jun 2019 13:14:26 +0000 (15:14 +0200)]
Declare function in esh-mode before #'-ing it

* lisp/eshell/esh-mode.el (ansi-color-apply-text-property-face):
Declare to avoid a compilation warning.

5 years agoAvoid obsolete function in reftex-global.el
Lars Ingebrigtsen [Sun, 16 Jun 2019 13:09:52 +0000 (15:09 +0200)]
Avoid obsolete function in reftex-global.el

* lisp/textmodes/reftex-global.el (reftex-query-replace-document):
Rewrite to use fileloop directly to avoid the obsolete function
tags-query-replace.

5 years agoUse fileloop directly in vc-dir to avoid obsolete function
Lars Ingebrigtsen [Sun, 16 Jun 2019 13:07:37 +0000 (15:07 +0200)]
Use fileloop directly in vc-dir to avoid obsolete function

* lisp/vc/vc-dir.el (vc-dir-query-replace-regexp): Rewrite to use
fileloop directly to avoid the obsolete function
tags-query-replace.

5 years agoMaintain c-syntax-table-hwm when changing syntax-table text properties
Alan Mackenzie [Sun, 16 Jun 2019 11:52:01 +0000 (11:52 +0000)]
Maintain c-syntax-table-hwm when changing syntax-table text properties

* lisp/progmodes/cc-defs.el: (c-syntax-table-hwm): Move the defvar to here
from cc-mode.el, since the variable is needed at compile time in
c-emacs-features.
(c-min-property-position): New macro.
(c-put-char-property, c-clear-char-property, c-clear-char-properties)
(c-clear-char-property-with-value-function)
(c-clear-char-property-with-value-on-char-function)
(c-put-char-properties-on-char): Adjust c-syntax-table-hwm appropriately when
syntax-table text properties are changed.

* lisp/progmodes/cc-engine.el (c-truncate-lit-pos-cache): Remove the now
unneeded setting of c-syntax-table-hwm, and the unneeded declaration of
c-syntax-table-hwm.

5 years agoSay how Tramp is packaged with Emacs
Michael Albinus [Sun, 16 Jun 2019 08:32:46 +0000 (10:32 +0200)]
Say how Tramp is packaged with Emacs

* doc/misc/tramp.texi (Obtaining Tramp):
Mention `customize-package-emacs-version-alist'.

5 years agoFix regressions in xref-find-definitions and ...-other-window
Dmitry Gutov [Sun, 16 Jun 2019 00:49:46 +0000 (03:49 +0300)]
Fix regressions in xref-find-definitions and ...-other-window

* lisp/progmodes/xref.el:
(xref--display-buffer-in-other-window)
(xref--display-buffer-in-window): New functions.
(xref--show-pos-in-buf): Use them (bug#33870)

5 years agoAdd MESSAGE string to bookmark-errors (bug#23408)
Stefan Kangas [Wed, 12 Jun 2019 16:42:46 +0000 (18:42 +0200)]
Add MESSAGE string to bookmark-errors (bug#23408)

* lisp/bookmark.el (bookmark-errors): Add MESSAGE parameter string.

5 years agoAlways try to display tree-widget with images (Bug#36147)
Noam Postavsky [Wed, 12 Jun 2019 11:31:23 +0000 (07:31 -0400)]
Always try to display tree-widget with images (Bug#36147)

Checking the result of display-images-p doesn't make sense if the
display capabilities when loading the file are different from the
display used to actually look at the widget (which is easily possible
now that Emacs supports both tty and graphic frames in the same
instance).
* lisp/tree-widget.el (tree-widget-image-enable): Default to t,
always.  This still shows text on displays that can't show images.

5 years agoAllow trailing whitespace in --eval argument (Bug#36219)
Noam Postavsky [Sat, 15 Jun 2019 12:40:23 +0000 (08:40 -0400)]
Allow trailing whitespace in --eval argument (Bug#36219)

* lisp/startup.el (command-line-1): Don't complain about trailing
garbage if it's only space, tab, or newline characters.