aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* | | Allow underscore in defun-prompt-regex names for sh-scriptOla Nilsson2019-06-271-2/+2
| | | | | | | | | | | | | | | * lisp/progmodes/sh-script.el (defun-prompt-regexp): Allow underscore in function names.
* | | Improve ‘equal’ and array docPaul Eggert2019-06-271-6/+9
| | | | | | | | | | | | | | | | | | | | | * doc/lispref/objects.texi (Array Type): Array sizes are nonnegative fixnums, not arbitrary integers. (Equality Predicates): Do not say that ‘eq’ equals ‘=’ on bignums. Do not imply that ‘equal’ must signal an error on circular lists.
* | | * src/xfaces.c (resolve_face_name): Simplify.Paul Eggert2019-06-271-1/+1
| | |
* | | Remove unnecessary tortoise checks.Pip Cet2019-06-272-11/+0
| | | | | | | | | | | | | | | | | | * src/fns.c (Fplist_get, Fplist_put, Flax_plist_get) (Flax_plist_put, Fplist_member): Remove unnecessary check. * src/json.c (lisp_to_json_toplevel_1): Remove unnecessary check.
* | | Work around Cygwin bug with O_PATHPaul Eggert2019-06-272-0/+8
| | | | | | | | | | | | | | | Problem reported by Ken Brown (Bug#36405). * src/dired.c, src/fileio.c (O_PATH) [__CYGWIN__]: Undef.
* | | Omit a few minor unnecessary range checksPaul Eggert2019-06-273-9/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Based on Pip Cet’s review (Bug#36370#19). * src/fileio.c (Fdo_auto_save): * src/image.c (lookup_image): * src/textprop.c (Fnext_single_char_property_change): Prefer XFIXNUM to XFIXNAT for clarity and consistency with neighboring code, and to avoid unnecessary range checks. * src/image.c (lookup_image): Omit unnecessary range checks.
* | | Improve XFIXNUM cleanup a bitPaul Eggert2019-06-273-17/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Based on Pip Cet’s review (Bug#36370#13). * src/ccl.c (Fccl_execute_on_string): Use clearer indexing. * src/dosfns.c (Fint86, Fdos_memput): Avoid runtime checks for negative fixnums when debugging. This restores the earlier machine code. * src/lisp.h (XFIXNUM, XUFIXNUM): Use eassert, not eassume. (XFIXNAT): At the start, merely eassert FIXNUMP rather than eassuming FIXNATP. At the end, eassume that the result is nonnegative. This restores help to the compiler that the previous patch mistakenly removed.
* | | Clean up use of XFIXNUM etc.Paul Eggert2019-06-2710-65/+67
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A few bits of the code were relying on the fact that XFIXNUM, XFIXNAT, and XUFIXNUM do something even with arguments that are not fixnums/fixnats. Separate these rare uses out into XFIXNUM_RAW and XUFIXNUM_RAW. Problem and original patch reported by Pip Cet (Bug#36370). * src/ccl.c (Fccl_execute_on_string): * src/fileio.c (Finsert_file_contents, a_write) (Fdo_auto_save): * src/process.c (conv_lisp_to_sockaddr): * src/textprop.c (Fnext_single_char_property_change) (Fprevious_single_char_property_change) (Fnext_property_change, Fnext_single_property_change) (Fprevious_property_change) (Fprevious_single_property_change): Don’t assume fixnums are nonnegative. * src/ccl.c (Fccl_execute_on_string): Fix range-checking bug if AREF (status, i) is out of int range. * src/data.c (arith_driver): Use XFIXNUM_RAW as we want efficient garbage if the value is not a fixnum. * src/dosfns.c (Fint86, Fdos_memput): Check that args are nonnegative. * src/image.c (lookup_image): Check that args are in range. * src/lisp.h (lisp_h_XHASH): Use XUFIXNUM_RAW, since this is for hashing. (lisp_h_XFIXNAT, XFIXNAT) [USE_LSB_TAG]: Remove macros. (lisp_h_XFIXNUM_RAW, XFIXNUM_RAW) [USE_LSB_TAG]: New macros, with the semantics of the old macros without _RAW. (XFIXNUM_RAW, XUFIXNUM_RAW): New inline functions, with the semantics of the old functions without _RAW. (FIXNUMP): Move definition up to avoid forward use. (XFIXNUM, XFIXNAT, XUFIXNUM): Use eassume to add a runtime check (when debugging) that the argument has the proper form. (XFIXNUM, XFIXNAT): Now inline functions only, since they refer to their arguments more than once now that they use eassume. * src/textprop.c (Fprevious_single_char_property_change): Avoid fixnum overflow with invalid input. (set_text_properties): Fix unlikely failure to validate arguments, by using EQ instead of XFIXNAT. * src/w32term.c (w32_draw_glyph_string): * src/xterm.c (x_draw_glyph_string): Treat negative minimums as 0 rather than as garbage patterns.
* | | Catch duplicate keywords in image specsPaul Eggert2019-06-271-23/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | * src/image.c (struct image_keyword.count): Now bool, not int, since it is either 0 or 1. (parse_image_spec, xpm_image_p): Use bool for boolean. (parse_image_spec): Fix a bug introduced in 2011-09-21T17:41:20!eggert@cs.ucla.edu that reported only triplicate (or more) keywords, not duplicates.
* | | Mention the new emacsclient -a/--eval behaviourLars Ingebrigtsen2019-06-271-0/+6
| | |
* | | emacsclient: ignore --eval parameters when starting alternate editorLars Ingebrigtsen2019-06-271-1/+5
| | | | | | | | | | | | | | | | | | * lib-src/emacsclient.c (fail): If the user said --eval, don't pass those arguments to the alternate editor as file names. Suggested by a patch from Scott Turner (bug#11474).
* | | Allow for retrieving profiler logs after stoppingVasilij Schneidermann2019-06-271-24/+35
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * lisp/profiler.el (profiler-cpu-log, profiler-memory-log): New variables. (profiler-cpu-profile): Work even if the profiler is no longer running (bug#22114). (profiler-memory-profile): Ditto. (profiler-stop): Save the data. (profiler-reset): Clear the saved data. (profiler-report-cpu, profiler-report-memory): Report on the saved data. (profiler-report): Save the data here, too.
* | | Include the date in the bzr annotation bufferDan Nicolaescu2019-06-271-43/+7
| | | | | | | | | | | | | | | | | | | | | * lisp/vc/vc-bzr.el (vc-bzr-annotate-command) (vc-bzr-annotate-time) (vc-bzr-annotate-extract-revision-at-line): Include a date in the bzr annotation buffer (bug#5428).
* | | Add new ispell-change-dictionary-hook (Bug#1110)Stefan Kangas2019-06-272-2/+15
| | | | | | | | | | | | | | | * lisp/textmodes/ispell.el (ispell-change-dictionary-hook): New hook. (ispell-change-dictionary): Call new hook (bug#1110).
* | | Add a new regexp variable to control boring winner buffersThierry Volpiatto2019-06-273-15/+27
| | | | | | | | | | | | | | | | | | | | | | | | * doc/emacs/windows.texi (Window Convenience): Mention it. * lisp/winner.el (winner-boring-buffers-regexp): New variable. * lisp/winner.el (winner-set): Use it (bug#11151).
* | | Fix invoking Emacs via a symlink on CygwinKen Brown2019-06-271-1/+1
| | | | | | | | | | | | * src/emacs.c (load_pdump) [CYGWIN]: Strip ".exe" suffix.
* | | Add more fontification to regexp builder modeLennart Borgman2019-06-271-4/+141
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * lisp/emacs-lisp/re-builder.el (reb-copy): Work in the presence of newlines in the regexps. (reb-change-syntax): Use a dedicated history variable. (reb-fontify-string-re): Fontify sub-matches. (reb-regexp-grouping-backslash, reb-regexp-grouping-construct): New faces. (reb-string-font-lock-keywords): New variable. (reb-mark-non-matching-parenthesis): Match parenthesis. (reb-restart-font-lock): New function. * lisp/emacs-lisp/re-builder.el (reb-mode-map): Add divider some dividers (bug#6347).
* | | Rename displayor to displayer in CEDETLars Ingebrigtsen2019-06-273-179/+228
| | | | | | | | | | | | | | | | | | | | | | | | | | | * doc/misc/sem-user.texi (Idle Completions Mode): Rename displayor->displayer throughout. (Idle Completions Mode): Ditto. * lisp/cedet/semantic/complete.el: Rename displayor->displayer throughout and add aliases for all the methods that used that name.
* | | Use `default-indent-new-line' instead of `indent-new-comment-line'Dmitry Gutov2019-06-273-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * lisp/simple.el (default-indent-new-line): Doc string fix. * lisp/textmodes/refill.el (refill-post-command-function): Make default-indent-new-line work as indent-new-comment-line. * lisp/textmodes/refill.el (refill-post-command-function): Bind `M-C-j' and `M-j' to default-indent-new-line instead of indent-new-comment-line to allow overriding via `comment-line-break-function' (bug#12413).
* | | Revert "Apply font-lock in hexl-mode buffers"Lars Ingebrigtsen2019-06-271-2/+0
| | | | | | | | | | | | | | | | | | This reverts commit 573de396f03684efa89ead24a371b0f4c9bf8d5d. The change wasn't necessary -- the hexl-mode buffer is automatically fontified.
* | | Allow generating wiki and mediawiki tablesAaron S. Hawley2019-06-273-17/+38
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * lisp/textmodes/table.el (table--generate-source-prologue) (table--generate-source-epilogue) (table--generate-source-scan-rows) (table--generate-source-cells-in-a-row): Insert the wiki/mediawiki separators. * lisp/textmodes/table.el (table-source-languages): Add support for wiki and mediawiki tables (bug#13287). 2019-06-27 Lars Ingebrigtsen <larsi@gnus.org> * doc/emacs/text.texi (Table Misc): Mention the new wiki and mediawiki formats.
* | | Apply font-lock in hexl-mode buffersWilfred Hughes2019-06-271-0/+2
| | | | | | | | | | | | | | | | | | * lisp/hexl.el (hexl-mode): After setting font-lock-defaults, we need to call `font-lock-ensure' to apply hexl-mode faces (bug#24645).
* | | Add :local specifier to defcustomJuanma Barranquero2019-06-272-0/+13
| | | | | | | | | | | | | | | | | | * lisp/custom.el (custom-declare-variable): Allow the new :local parameter (bug#14591). (defcustom): Document it.
* | | Tweak ‘error’ and ‘user-error’ doc stringsPaul Eggert2019-06-272-15/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * lisp/net/tramp.el (tramp-user-error): * lisp/subr.el (user-error): Say that user errors are sometimes called pilot errors. * lisp/subr.el (error, user-error): Reorder wording to discuss mechanism first, then formatting advice, rather than going back and forth between the two topics. Tighten up the wording a bit.
* | | Clarify error and user-error docstringsStefan Kangas2019-06-272-6/+11
| | | | | | | | | | | | | | | | | | * lisp/subr.el (error, user-error) * lisp/net/tramp.el (tramp-user-error): Change "pilot error" to "user error" and improve documentation.
* | | Remove gnus-bug from report-emacs-bug TODO entryBasil L. Contovounesios2019-06-271-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | For discussion, see the following thread: https://lists.gnu.org/archive/html/emacs-devel/2019-04/msg01196.html https://lists.gnu.org/archive/html/emacs-devel/2019-06/msg00967.html * etc/TODO: Remove gnus-bug from list of obsolete bug-reporting commands now that it is implemented in terms of report-emacs-bug.
* | | Document bug in `replace-regexp-in-string'Mattias Engdegård2019-06-262-3/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | `replace-regexp-in-string' omits the first START characters of the input string in its return value. This is a clear bug, but fixing it probably causes more trouble; document the behaviour instead (bug#36372). * doc/lispref/searching.texi (Search and Replace) * lisp/subr.el (replace-regexp-in-string): Document current behaviour.
* | | * lisp/textmodes/page-ext.el (sort-pages-buffer): Fix typoStefan Monnier2019-06-261-25/+25
| | | | | | | | | | | | | | | | | | | | | Reported by Marco Wahl <marcowahlsoft@gmail.com>. Update `Commentary:` to use the new command names. (pages--ctl-x-ctl-p-map): Fix `mark-page` binding. (pages-directory-mode-map): Update `add-new-page` => `pages-add-new-page`.
* | | Support invoking Emacs via a symlink on MS-WindowsEli Zaretskii2019-06-262-4/+22
| | | | | | | | | | | | | | | | | | | | | | | | * src/w32.c (w32_my_exename): Resolve symlinks in the executable name, to support searching for the pdumper file when the executable is found via a symlink. * src/emacs.c (load_pdump): Add a comment about symlink resolution on Windows.
* | | Fix redisplay of registers in gdb-miAndrzej P2019-06-261-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | * lisp/progmodes/gdb-mi.el (gdb-update): Call gdb-get-changed-registers before updating the GDB-MI buffers. (Bug#16366) Copyright-paperwork-exempt: yes
* | | Restrict indirect lookups in Fdocumentation_propertyLars Ingebrigtsen2019-06-261-3/+5
| | | | | | | | | | | | | | | * src/doc.c (Fdocumentation_property): Only look up indirect variables if we've been asked for the variable documentation.
* | | Merge branch 'master' of git+ssh://git.sv.gnu.org/srv/git/emacs into trunkStefan Monnier2019-06-261-0/+12
|\ \ \
| * | | Fdocumentation_property: Return doc string for indirect variablesLars Ingebrigtsen2019-06-261-0/+12
| | | | | | | | | | | | | | | | | | | | | | | | * src/doc.c (Fdocumentation_property): When dealing with indirect variables (i.e., aliases), also check the symbol being pointed to for the doc string (bug #17180).
* | | | * lisp/calc/calc-ext.el (math-scalarp): Fix typoBruce Stephens2019-06-261-1/+1
|/ / /
* | | Revert "* lisp/calc/calc-ext.el (math-scalarp): Fix typo"Stefan Monnier2019-06-2659-915/+818
| | | | | | | | | | | | This reverts commit 698ff554ac2699ec48fefc85a1307cbc4a183b0d.
* | | help-C-file-name shouldn't error out if we can't find the nameJohan Claesson2019-06-261-14/+20
| | | | | | | | | | | | | | | | | | | | | | | | * lisp/help-fns.el (help-C-file-name): Make help-C-file-name return nil instead of signalling an error if we can't find the file name (bug#17250). Copyright-paperwork-exempt: yes
* | | * test/lisp/calc/calc-tests.el (test-math-bignum, test-calc-23889): DisableStefan Monnier2019-06-261-6/+6
| | | | | | | | | | | | Not applicable any more with native bignums.
* | | * lisp/calc/calc-ext.el (math-scalarp): Fix typoStefan Monnier2019-06-2659-818/+915
| | |
* | | Fix (rx-to-string (and (literal STR) (regexp STR)) regressionNoam Postavsky2019-06-262-2/+6
| | | | | | | | | | | | | | | | | | * lisp/emacs-lisp/rx.el (rx-regexp, rx-literal): Check the cadr of the form for stringness, not the form itself. * test/lisp/emacs-lisp/rx-tests.el (rx-to-string-lisp-forms): New test.
* | | Merge consecutive constant `concat' args (bug#14769)Mattias Engdegård2019-06-261-0/+29
| | | | | | | | | | | | | | | | | | | | | Suggested by Shigeru Fukaya <shigeru.fukaya@gmail.com> * lisp/emacs-lisp/byte-opt.el (byte-optimize-concat): New. (concat): Add byte-optimizer.
* | | * lisp/calc/calc.el: Take advantage of native bignums.Stefan Monnier2019-06-2511-936/+168
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Remove redundant :group args. (calc-trail-mode): Use inhibit-read-only. (math-bignum-digit-length, math-bignum-digit-size) (math-small-integer-size): Delete constants. (math-normalize): Use native bignums. (math-bignum, math-bignum-big): Delete functions. (math-make-float): The mantissa can't be a calc bignum any more. (math-neg, math-scale-left, math-scale-right, math-scale-rounding) (math-add, math-sub, math-mul, math-idivmod, math-quotient) (math-format-number, math-read-number, math-read-number-simple): Don't bother handling calc bignums. (math-div10-bignum, math-scale-left-bignum, math-scale-right-bignum) (math-add-bignum, math-sub-bignum, math-mul-bignum, math-mul-bignum-digit) (math-div-bignum, math-div-bignum-digit, math-div-bignum-big) (math-div-bignum-part, math-div-bignum-try, math-format-bignum) (math-format-bignum-decimal, math-read-bignum): Delete functions. (math-numdigs): Don't presume that native ints are small enough to use a slow algorithm. * lisp/calc/calc-aent.el (calc-do-quick-calc): * lisp/calc/calc-vec.el (calcFunc-vunpack): * lisp/calc/calc-alg.el (math-beforep): Don't bother handling calc bignums. * lisp/calc/calc-bin.el (math-bignum-logb-digit-size) (math-bignum-digit-power-of-two): Remove constants. (calcFunc-and, math-binary-arg, calcFunc-or, calcFunc-xor) (calcFunc-diff, calcFunc-not, math-clip, math-format-twos-complement): Use Emacs's builtin bignums. (math-and-bignum, math-or-bignum, math-xor-bignum, math-diff-bignum) (math-not-bignum, math-clip-bignum) (math-format-bignum-radix, math-format-bignum-binary) (math-format-bignum-octal, math-format-bignum-hex): Delete functions. (math-format-binary): Fix old copy&paste error. * lisp/calc/calc-comb.el (calc-prime-factors): Adjust for unused arg. (math-prime-test): math-fixnum is now the identity. * lisp/calc/calc-ext.el: Require cl-lib. (math-oddp): Use cl-oddp. Don't bother with calc bignums. (math-integerp, math-natnump, math-ratp, math-realp, math-anglep) (math-numberp, math-scalarp, math-vectorp, math-objvecp, math-primp) (math-num-natnump, math-objectp, math-check-integer, math-compare): Don't bother handling calc bignums. (math-check-fixnum): Use fixnump. (math-fixnum, math-fixnum-big, math-bignum-test): Remove functions. (math--format-integer-fancy): Rename from math-format-bignum-fancy. Adjust for internal bignums. * lisp/calc/calc-funcs.el (calcFunc-besJ): Use cl-isqrt. * lisp/calc/calc-macs.el (Math-zerop, Math-integer-negp) (Math-integer-posp, Math-negp, Math-posp, Math-integerp) (Math-natnump, Math-ratp, Math-realp, Math-anglep, Math-numberp) (Math-scalarp, Math-vectorp, Math-objectp, Math-objvecp) (Math-integer-neg, Math-primp, Math-num-integerp): Don't bother handling calc bignums. (Math-bignum-test): Delete function. * lisp/calc/calc-math.el (math-use-emacs-fn): Remove unused `fx`. (math-isqrt, math-sqrt): Use cl-isqrt. Don't bother handling calc bignums. (math-isqrt-bignum, math-isqrt-bignum-iter, math-isqrt-small): Delete function. * lisp/calc/calc-misc.el (math-fixnump, math-fixnatnump): Use fixnump. (math-evenp): Use cl-evenp. (math-zerop, math-negp, math-posp, math-div2): Don't bother handling calc bignums. (math-div2-bignum): Delete function.
* | | Merge from emacs-26Noam Postavsky2019-06-2510-55/+78
|\ \ \ | |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | e62ad04963 Fix sgml-mode handling of quotes within parens (Bug#36347) 06b35b2f92 ; * lisp/frame.el: Enhance add-variable-watcher commentary. 572e34bb6f Rename 'make-symbolic-link' argument NEWNAME to LINKNAME 04477adedc Check that length of data returned by sysctl is non-zero 81535eeadb * test/lisp/progmodes/python-tests.el (python-virt-bin): D... 9d48979ca8 Fix Python tests depending on system-type fcf6cc3177 Fix problem with wdired test when symlinks cannot be created. 4701e0663e Improve wording of documentation of click events # Conflicts: # lisp/textmodes/sgml-mode.el # test/lisp/textmodes/sgml-mode-tests.el
| * | Fix sgml-mode handling of quotes within parens (Bug#36347)Noam Postavsky2019-06-252-4/+28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * lisp/textmodes/sgml-mode.el (sgml-syntax-propertize): Use syntax-ppss-table if set. This is only needed on the release branch, on master the caller (syntax-propertize) already does this. (sgml-mode): Set syntax-ppss-table to sgml-tag-syntax-table. This correctly classifies parens as punctuation, so they won't confuse the parser. * test/lisp/textmodes/sgml-mode-tests.el (sgml-tests--quotes-syntax): New test copied from master, with two cases added for this bug.
| * | ; * lisp/frame.el: Enhance add-variable-watcher commentary.Noam Postavsky2019-06-251-1/+3
| | |
| * | Rename 'make-symbolic-link' argument NEWNAME to LINKNAMEJuanma Barranquero2019-06-212-9/+9
| | | | | | | | | | | | | | | * src/fileio.c (Fmake_symbolic_link): Fix docstring. * doc/lispref/files.texi (Changing Files): Doc fix.
| * | Check that length of data returned by sysctl is non-zeroRobert Pluim2019-06-202-6/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The length of the data returned by sysctl can be zero, which was not checked for. This could cause crashes, e.g. when querying non-existent processes. (Bug#36279) * src/sysdep.c (list_system_processes) [DARWIN_OS || __FreeBSD__]: (system_process_attributes) [__FreeBSD__]: (system_process_attributes) [DARWIN_OS]: * src/filelock.c (get_boot_time) [CTL_KERN && KERN_BOOTTIME]: Check for zero length data returned by sysctl.
| * | * test/lisp/progmodes/python-tests.el (python-virt-bin): Doc fix.Juanma Barranquero2019-06-171-1/+1
| | |
| * | Fix Python tests depending on system-typeJuanma Barranquero2019-06-171-5/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | * test/lisp/progmodes/python-tests.el (python-virt-bin): New function. (python-shell-calculate-exec-path-2) (python-shell-calculate-exec-path-3) (python-shell-calculate-exec-path-4) (python-shell-with-environment-1, python-shell-with-environment-2): Use it.
| * | Fix problem with wdired test when symlinks cannot be created.Juanma Barranquero2019-06-161-1/+5
| | | | | | | | | | | | | | | | | | * test/lisp/wdired-tests.el (wdired-test-symlink-name): Skip test if 'make-symbolic-link' fails for whatever reason; that's not what's being tested.
| * | Improve wording of documentation of click eventsEli Zaretskii2019-06-161-33/+37
| | | | | | | | | | | | | | | * doc/lispref/commands.texi (Click Events, Accessing Mouse): Improve and clarify wording. (Bug#36232)