1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-04-27 08:43:40 -07:00
Commit graph

141600 commits

Author SHA1 Message Date
Andrea Corallo
d85b803b78 * src/comp.c (native-comp-unit-set-file): New function. 2020-04-12 13:31:38 +01:00
Andrea Corallo
62f956970f * src/comp.c (native-comp-unit-file): Better parameter name. 2020-04-12 13:31:38 +01:00
Andrea Corallo
4abb8c822c Merge remote-tracking branch 'savannah/master' into HEAD 2020-04-06 18:06:29 +01:00
Andrea Corallo
32a079aef2 * lisp/emacs-lisp/comp.el (comp-c-func-name): Fix for M-x disassemble 2020-04-06 20:03:34 +01:00
Andrea Corallo
a04c960a35 * src/comp.c (emit_FIXNUMP): Don't emit a shift when unnecessary. 2020-04-06 19:04:43 +01:00
Michael Albinus
3dc2f50e5b Fix case that $PATH is longer than 4096 chars in Tramp
* lisp/net/tramp-sh.el (tramp-set-remote-path): Use `tramp-send-command'
directly.

* test/lisp/net/tramp-tests.el (tramp-test-vec): New defconst.
(tramp--test-enabled, tramp--test-message)
(tramp--test-backtrace, tramp-test03-file-name-host-rules)
(tramp-test18-file-attributes, tramp-test20-file-modes)
(tramp-test26-file-name-completion)
(tramp-test33-environment-variables, tramp-test35-remote-path)
(tramp-test36-vc-registered, )
(tramp-test43-asynchronous-requests): Use it.
(tramp-test29-start-file-process, tramp-test30-make-process)
(tramp-test33-environment-variables): Remove Hydra specific result.
(tramp-test35-remote-path): Rewrite partially.
2020-04-06 14:26:49 +02:00
Yuan Fu
fd4ee36139 Unify and improve gdb-mi source buffer display logic
Unify the behavior of source buffer display for gdb-mi.  Before this
change, stepping and other gdb command handlers use 'gud-display-line',
and 'gdb-goto-breakpoint' uses 'gdb-display-source-buffer'.  Now whenever
gdb-mi code tries to open a source buffer, 'gdb-display-source-buffer'
is used.  Also, simplify the logic in 'gdb-display-source-buffer' and
add a feature to limit the maximum number of source windows.

* doc/emacs/building.texi (GDB User Interface Layout): Explain source
file display in GDB.
* etc/NEWS (gdb-mi): Add news about source display.
* lisp/progmodes/gdb-mi.el (gdb-source-window): Remove variable,
change to 'gdb-source-window-list'.
(gdb-source-window-list): New variable.
(gdb-display-source-buffer-action,
gdb-max-source-window-count): New options.
(gdb-init-1, gdb-setup-windows, gdb-load-window-configuration,
gdb-restore-windows): Use 'gdb-source-window' rather than
'gdb-source-window-list'.
(gdb-save-window-configuration): Use 'gdb-source-window' rather than
'gdb-source-window-list'.  And consider any buffer that is not a
command or function buffer as a source buffer.
(gdb-display-source-buffer): Use new logic.
(gdb-goto-breakpoint): Remove 'display-buffer' call
and don't set 'gdb-source-buffer' anymore.
* lisp/progmodes/gud.el (gud-display-line): If used by gdb-mi, use
'gdb-display-source-buffer' rather than 'display-buffer'.  Don't set
'gdb-source-buffer' anymore.
2020-04-06 09:56:15 +02:00
Martin Rudalics
981cea9b62 Fix problems when dragging frames with the mouse
Re-implement 'mouse-drag-frame' via two new functions -
'mouse-drag-frame-resize' and 'mouse-drag-frame-move'.  This is
needed because with some toolkits the notifications for frame
movement and resizing arrive asynchronously, breaking any
calculations using intermediate frame sizes and positions.

* lisp/mouse.el (mouse-drag-mode-line, mouse-drag-left-edge)
(mouse-drag-top-left-corner, mouse-drag-top-edge)
(mouse-drag-top-right-corner, mouse-drag-right-edge)
(mouse-drag-bottom-right-corner, mouse-drag-bottom-edge)
(mouse-drag-bottom-left-corner): Call 'mouse-drag-frame-resize'
instead of 'mouse-drag-frame'.
(mouse-drag-frame): Split into two new functions -
'mouse-drag-frame-move' and 'mouse-drag-frame-resize'.
(mouse-drag-frame-resize, mouse-drag-frame-move): New functions
to implement functionality of the removed 'mouse-drag-frame'.
2020-04-06 09:46:24 +02:00
Andrea Corallo
3608623eba Merge remote-tracking branch 'savannah/master' into HEAD 2020-04-05 22:08:17 +01:00
Andrea Corallo
4263f2fd15 * src/comp.c (emit_XFIXNUM): Fix for LSB_TAG plus annotate a FIXME. 2020-04-05 22:05:53 +01:00
Andrea Corallo
346d50989a * src/comp.c (emit_const_lisp_obj, emit_mvar_val): Fix. 2020-04-05 21:11:07 +01:00
Andrea Corallo
598380416c * src/comp.c (hash_native_abi): Fix assertion. 2020-04-05 21:11:05 +01:00
Andrea Corallo
7009e8af05 * src/comp.c (emit_binary_op): New function.
Wrap gcc_jit_context_new_binary_op within emit_binary_op to make sure
input type are coherent and save a slew of code.
2020-04-05 21:11:02 +01:00
Andrea Corallo
e3dff709b7 * src/comp.c: Emit cast only when necessary.
Coerce only when the destination type is different from the current
one.
2020-04-05 21:10:59 +01:00
Andrea Corallo
49a3790e68 * src/comp.c: Add MSB TAG and wide int support. 2020-04-05 21:10:56 +01:00
Andrea Corallo
70cb964481 * src/comp.c: Clean-up unnecessary field declaration. 2020-04-05 21:10:52 +01:00
Andrea Corallo
37a9d1e42b * lisp/emacs-lisp/comp.el (native-compile): Better documentation. 2020-04-05 21:10:49 +01:00
Paul Eggert
24c3fa9607 * src/coding.c (code_convert_string): Fix type mismatches. 2020-04-05 10:45:44 -07:00
Eli Zaretskii
507f26d532 Fix a recent change in bignum.c
* src/bignum.c (check_int_nonnegative): Fix a recent change.
Reported by Glenn Morris <rgm@gnu.org>.
2020-04-05 19:51:09 +03:00
Michael Albinus
c40b72389e Fix thinko in tramp-cache.el
* lisp/net/tramp-cache.el (tramp-set-connection-property)
(tramp-flush-connection-property)
(tramp-flush-connection-properties): Use `tramp-file-name-p'.
2020-04-05 18:29:10 +02:00
Glenn Morris
333f63d537 Merge from origin/emacs-27
6de20c7eab (origin/emacs-27) Fix syntax error in man page.
f8607d3c03 Handle filling of indented ChangeLog function entries
7e78f0d1b2 Fix void-variable n-reb in re-builder (Bug#40409)
452d776a5d Fix small bug in copy_string_contents.
fa823653ff Fix invocations of gpg from Gnus
d4f51d0a2e Don't draw GTK's internal border and tab bar on top of eac...
38731d504e ; * src/buffer.c (syms_of_buffer) <inhibit-read-only>: Doc...
44ac9e48bb Tweak htmlfontify's generated output
2020-04-05 07:50:15 -07:00
Glenn Morris
0e18fdd1b6 ; Merge from origin/emacs-27
The following commit was skipped:

b2f2d0d2c4 (emacs-27) ; Auto-commit of loaddefs files.
2020-04-05 07:50:15 -07:00
Glenn Morris
94b6b0b5c5 Merge from origin/emacs-27
ac3da1dd96 Handle project--files-in-directory finding no files better
650a664ccd Let imenu to work on the menu bar when its list is a singl...
2020-04-05 07:50:15 -07:00
Stefan Monnier
a32c55bd9f * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Avoid known cl-defsubst breakage 2020-04-05 09:54:53 -04:00
Mattias Engdegård
4ed39549e3 Avoid expensive recoding for ASCII identity cases (bug#40407)
Optimise for the common case of encoding or decoding an ASCII-only
string using an ASCII-compatible coding, for file names in particular.

* src/coding.c (string_ascii_p): New function.
(code_convert_string): Return the input string for ASCII-only inputs
and ASCII-compatible codings.
* test/src/coding-tests.el (coding-nocopy-ascii): New test.
2020-04-05 15:37:55 +02:00
Mattias Engdegård
c7ac76603f Suppress relint diagnostics in rx-tests.el
* test/lisp/emacs-lisp/rx-tests.el (rx-char-any, rx-any):
Suppress relint complaints; these regexps are intentionally bad.
2020-04-05 15:16:32 +02:00
Mattias Engdegård
962562cde4 Fix inverted NOCOPY encode/decode parameter (bug#40407)
In {encode,decode}-coding-string, the NOCOPY parameter had the
opposite effect to what was intended and documented.  This 18 year old
bug (introduced in 4031e2bf0a) only affected calls with CODING-SYSTEM
being nil.

* src/coding.c (code_convert_string): Correct use of NOCOPY.
* test/src/coding-tests.el (coding-nocopy-trivial): New test.
2020-04-05 11:39:52 +02:00
Paul Eggert
bec5cfee76 Improve integer range checking
* src/bignum.c (check_integer_range, check_uinteger_max)
(check_int_nonnegative): New functions.
* src/frame.c (check_frame_pixels): New function.
(Fset_frame_height, Fset_frame_width, Fset_frame_size): Use it.
* src/lisp.h (CHECK_RANGED_INTEGER, CHECK_TYPE_RANGED_INTEGER):
Remove these macros.  Unless otherwise specified, all callers
replaced by calls to check_integer_range, check_uinteger_range,
check_int_nonnegative.
* src/frame.c (gui_set_right_divider_width)
(gui_set_bottom_divider_width):
* src/nsfns.m (ns_set_internal_border_width):
* src/xfns.c (x_set_internal_border_width):
Using check_int_nonnegative means these functions no longer
incorrectly reject negative bignums; they treat them as 0,
just like negative fixnums.
2020-04-05 01:24:36 -07:00
Philipp Stephani
6de20c7eab Fix syntax error in man page.
* doc/man/emacs.1.in: Fix syntax of --script argument.  The Info
manual states that --script has to be followed by a space, and the
syntax with the equals sign doesn't actually work.
2020-04-05 10:19:31 +02:00
Paul Eggert
9b8dacdb26 * src/lisp.h: Update overly-optimistic comment. 2020-04-05 01:00:35 -07:00
Stefan Monnier
95a7c6ec58 * lisp/arc-mode.el: Rewrite displaying the summaries
Completely rewrite the code that displayes the summaries, so all
backends share the same code.

(archive--summarize-descs): New function.
(archive-arc-summarize, archive-lzh-summarize, archive-zip-summarize)
(archive-zoo-summarize, archive-rar-summarize, archive-7z-summarize)
(archive-ar-summarize): Use it.
(archive-hidden-columns): New custom.
(archive-alternate-hidden-columns): New const.
(archive-mode-map): Always enable `archive-alternate-display`.
(archive-alternate-display): Set `archive-hidden-columns`.
(archive-hideshow-column): New command.
(archive--fit, archive--fit2, archive--enabled-p): New aux functions.
2020-04-04 22:46:42 -04:00
Stefan Monnier
83f9094316 * lisp/arc-mode.el: Remove make-(local-variable|variable-buffer-local)
(archive-file-list-start, archive-file-list-end)
(archive-proper-file-start, archive-file-name-indent, archive-remote)
(archive-member-coding-system, archive-alternate-display)
(archive-file-name-coding-system, archive-files): Use `defvar-local`.
(archive-extract): Use `setq-local`.
(archive-get-descr): Use `user-error` when clicking on a directory.
2020-04-04 22:46:42 -04:00
Paul Eggert
e6b5cd0eda Avoid SAFE_ALLOCA in Fstring, Funibyte_string
* src/character.c (Fstring, Funibyte_string):
Redo to avoid the need for a temporary array allocation
and then a copying from that array to the destination.
2020-04-04 18:27:11 -07:00
Noam Postavsky
f8607d3c03 Handle filling of indented ChangeLog function entries
* lisp/vc/log-edit.el (log-edit-fill-entry): Relax regexp a bit to
recognize function entries with leading blanks.
* test/lisp/vc/log-edit-tests.el: New test.
2020-04-04 20:08:02 -04:00
Stefan Monnier
c09457e6ed * lisp/arc-mode.el (archive--file-desc): Add fields from other structs
Add fields `size`, `time` (used by all backends) as well as
`pos`, `ratio`, `uid`, and `gid` (used only be some backends).

(archive-arc--file-desc, archive-rar--file-desc, archive-ar--file-desc)
(archive-lzh--file-desc, archive-zip--file-desc, archive-7z--file-desc):
Remove defstructs.
(archive-arc-summarize): Record size and time in the descrs.
(archive-lzh-summarize): Record size, time, uid, and gid in the descrs.
(archive-zip-summarize): Record size and time in the descrs.
(archive-zoo-summarize): Record size and time in the descrs.
(archive-rar-summarize): Adjust to use of `archive--file-desc`.
(archive-7z-summarize): Adjust to new constructor.
(archive-ar-summarize): Adjust to use of `archive--file-desc`.

(archive-ar-write-file-member): Remove mode-to-int hack.
(archive-get-descr): Directory entries aren't regular members.
2020-04-04 20:06:55 -04:00
Noam Postavsky
7e78f0d1b2 Fix void-variable n-reb in re-builder (Bug#40409)
* lisp/emacs-lisp/re-builder.el (reb-while): Take the current value of
the counter instead of its name.
(reb-mark-non-matching-parenthesis): Bind n-reb to 0 at the start and
don't wrongly treat it as dynamicly bound.
2020-04-04 20:06:54 -04:00
Paul Eggert
4b4da58e8c Revert unneeded part of gcc -Og change
* configure.ac (DEFINE_KEY_OPS_AS_MACROS):
Undo this recent change to configure.ac; it’s not needed.
2020-04-04 17:05:05 -07:00
Paul Eggert
02b06216b7 * lib-src/Makefile.in (LINK_CFLAGS): Remove; unused. 2020-04-04 16:57:43 -07:00
Paul Eggert
15853707c8 Default gcc -Og to inlining key ops
Problem reported by Martin Rudalics in:
https://lists.gnu.org/r/emacs-devel/2020-04/msg00195.html
* configure.ac (DEFINE_KEY_OPS_AS_MACROS): Define if -Og.
* src/Makefile.in (KEY_OPS_CFLAGS): New macro.
(EMACS_CFLAGS): Use it.
* src/lisp.h (DEFINE_KEY_OPS_AS_MACROS): Let the gcc command line
specify it.  Remove use of undocumented INLINING macro.
2020-04-04 16:57:43 -07:00
Eli Zaretskii
f71afd600a Support the "explore" command in gdb-mi.el
* lisp/progmodes/gdb-mi.el (gdb-control-commands-regexp): Add
support for "explore", "explore value", and "explore type".
Allow more than one word after control commands.
(gdb-gdb): Decrease gdb-control-level when we get the "(gdb)"
prompt, which signals that "explore" exited.  (Bug#40250)
2020-04-04 14:15:41 +03:00
Eli Zaretskii
05d365d310 Fix face spec handling for 'default' "terminal class"
* lisp/faces.el (face-spec-choose): Reverse order of 'defaults'
and 'result' when generating attribute list, so that the spec for
'default' "terminal class" is indeed overridden by the actual
class's spec, per the documentation.  (Bug#40336)
2020-04-04 09:59:16 +03:00
Stefan Monnier
fd38c9c0af * lisp/arc-mode.el: Remove unused struct fields
(archive--file-desc): Remove `case-fiddled`.
Change all subtypes's constructors as their callers accordingly.
(archive--file-desc-case-fiddled): New function.
(archive-int-to-mode): Accept a nil input.
Make all callers take advantage of it.
(archive-arc-rename-entry): Use `make-string`.
(archive-zip--file-desc): Change `pos+len` field into `pos` field.
(archive-zip-chmod-entry): Simplify accordingly.
(archive-zip-summarize): Don't bother with `lheader` which was not used.
(archive-zoo--file-desc): Delete struct; use archive--file-desc instead.
(archive-7z--file-desc): Remove `user` and `group` fields.
Adjust constructor and its caller.
(archive-ar-summarize): Use `archive-int-to-mode`.
2020-04-03 18:11:52 -04:00
Stefan Monnier
c640be60d9 * lisp/arc-mode.el: Use cl-structs rather than vectors
(archive--file-desc, archive--file-summary, archive-arc--file-desc)
(archive-lzh--file-desc, archive-zip--file-desc)
(archive-zoo--file-desc, archive-rar--file-desc)
(archive-7z--file-desc, archive-ar--file-desc): New structs.

(archive-get-descr, archive-mode, archive-summarize-files)
(archive-maybe-copy, archive-extract, archive-*-write-file-member)
(archive-expunge, archive-arc-summarize, archive-arc-rename-entry)
(archive-lzh-summarize, archive-lzh-rename-entry, archive-lzh-ogm)
(archive-zip-summarize, archive-zip-write-file-member)
(archive-zip-chmod-entry, archive-zoo-summarize)
(archive-rar-summarize, archive-7z-summarize, archive-ar-summarize)
(archive-ar-write-file-member): Use struct constructors and accessors
instead of `vector` and `aref`.

(archive-calc-mode): Remove `error` arg which was always non-nil;
adjust all callers.
Rewrite using `string-to-number` and `file-modes-symbolic-to-number`.
2020-04-03 16:45:54 -04:00
Alan Mackenzie
9b995320c8 C++ Mode: recognize brace blocks without the hitherto required = sign
* lisp/progmodes/cc-engine.el (c-looking-at-or-maybe-in-bracelist): Add code
to recognize a literal brace expression following an array declaration for
C++.
(c-looking-at-inexpr-block): Replace c-symbol-chars with c-symbol-char-key,
fixing a coding error.
2020-04-03 20:37:31 +00:00
Philipp Stephani
452d776a5d Fix small bug in copy_string_contents.
* src/emacs-module.c (module_copy_string_contents): Fix incorrect
variable use.  In this branch 'lisp_str_utf8' is always nil, so it
makes little sense to add it as error data.
2020-04-03 21:49:59 +02:00
Andrea Corallo
fcce8dd361 Merge remote-tracking branch 'savannah/master' into HEAD 2020-04-03 19:06:57 +01:00
Andrea Corallo
9bf9550836 src/comp.c: Fix i386
In i386 ABI parameter passing of structs (and unions) is done as
pointer + size.  Surprisingly this is done *always* even if the
structure is known to be word size.
2020-04-03 19:05:15 +01:00
Stefan Monnier
b318e58d28 * lisp/arc-mode.el (archive-ar-write-file-member): New function
(archive-ar--name): New funtion, extracted from `archive-ar-summarize`.
(archive-ar-extract): Use it.
(archive-ar-summarize): Use it.  Put the extname in the slot 0 of the
desc vectors.
2020-04-03 13:58:33 -04:00
Stefan Monnier
702a97ffb2 * lisp/arc-mode.el: Remove redundant :groups
(archive-arc, archive-lzh, archive-zip, archive-zoo): Move them
to their corresponding defcustom.
(archive-7z): New group, that used to be missing.
2020-04-03 13:58:33 -04:00
Stefan Monnier
9b6d252a18 * lisp/arc-mode.el: Use lexical-binding
(arc-insert-unibyte): Simplify.
(archive--mode-revert): Rename from `archive-mode-revert` and adjust
for use as an :around advice.
(archive-mode): Use setq-local.  Use `add-function` to hook into
`revert-buffer-function`.
(archive-summarize): Don't use `set` on a hook.
2020-04-03 13:58:28 -04:00