1. 18 May, 2019 1 commit
  2. 17 May, 2019 2 commits
  3. 16 May, 2019 1 commit
  4. 15 May, 2019 1 commit
    • Mattias Engdegård's avatar
      Add standard unmatchable regexp · 26f735ff
      Mattias Engdegård authored
      Add `regexp-unmatchable' as a standard unmatchable regexp, defined as
      "\\`a\\`".  Use it where such a regexp is needed, replacing slower
      expressions in several places.
      From a suggestion by Philippe Schnoebelen.
      
      * lisp/subr.el (regexp-unmatchable): New defconst.
      * etc/NEWS (Lisp Changes): Mention `regexp-unmatchable'.
      * doc/lispref/searching.texi (Regexp Functions): Document it.
      * lisp/emacs-lisp/regexp-opt.el (regexp-opt)
      * lisp/progmodes/cc-defs.el (cc-conditional-require-after-load)
      (c-make-keywords-re)
      * lisp/progmodes/cc-engine.el (c-beginning-of-statement-1)
      (c-forward-<>-arglist-recur, c-forward-decl-or-cast-1)
      (c-looking-at-decl-block)
      * lisp/progmodes/cc-fonts.el (c-doc-line-join-re)
      (c-doc-bright-comment-start-re)
      * lisp/progmodes/cc-langs.el (c-populate-syntax-table)
      (c-assignment-op-regexp)
      (c-block-comment-ender-regexp, c-font-lock-comment-end-skip)
      (c-block-comment-start-regexp, c-line-comment-start-regexp)
      (c-doc-comment-start-regexp, c-decl-start-colon-kwd-re)
      (c-type-decl-prefix-key, c-type-decl-operator-prefix-key)
      (c-pre-id-bracelist-key, c-enum-clause-introduction-re)
      (c-nonlabel-token-2-key)
      * lisp/progmodes/cc-mode.el (c-doc-fl-decl-start, c-doc-fl-decl-end)
      * lisp/progmodes/cc-vars.el (c-noise-macro-with-parens-name-re)
      (c-noise-macro-name-re, c-make-noise-macro-regexps)
      * lisp/progmodes/octave.el (octave-help-mode)
      * lisp/vc/vc-bzr.el (vc-bzr-log-view-mode, vc-bzr-revision-completion-table)
      * lisp/vc/vc-git.el (vc-git-log-view-mode)
      * lisp/vc/vc-hg.el (vc-hg-log-view-mode)
      * lisp/vc/vc-mtn.el (vc-mtn-log-view-mode):
      Use `regexp-unmatchable'.
      * lisp/textmodes/ispell.el (ispell-non-empty-string):
      Use `regexp-unmatchable', fixing a broken never-match regexp.
      26f735ff
  5. 12 May, 2019 1 commit
  6. 09 May, 2019 1 commit
  7. 08 May, 2019 2 commits
  8. 07 May, 2019 1 commit
  9. 06 May, 2019 1 commit
  10. 05 May, 2019 1 commit
  11. 01 May, 2019 1 commit
  12. 25 Apr, 2019 1 commit
  13. 24 Apr, 2019 1 commit
  14. 23 Apr, 2019 1 commit
  15. 22 Apr, 2019 1 commit
  16. 21 Apr, 2019 1 commit
  17. 20 Apr, 2019 3 commits
  18. 19 Apr, 2019 1 commit
    • Philipp Stephani's avatar
      Make warning about unescaped character literals more helpful. · 0b4b380c
      Philipp Stephani authored
      See Bug#31676.
      
      * lisp/emacs-lisp/byte-run.el
      (byte-run--unescaped-character-literals-warning): New defun.
      
      * src/lread.c (load_warn_unescaped_character_literals): Use new defun.
      (syms_of_lread): Define symbol for new defun.
      
      * lisp/emacs-lisp/bytecomp.el (byte-compile-from-buffer): Use new
      defun.
      
      * test/src/lread-tests.el (lread-tests--unescaped-char-literals):
      test/lisp/emacs-lisp/bytecomp-tests.el
      (bytecomp-tests--unescaped-char-literals): Adapt unit tests.
      0b4b380c
  19. 16 Apr, 2019 1 commit
    • Noam Postavsky's avatar
      Properly bracket concat of comment-start-skip (Bug#34805) · 7a382383
      Noam Postavsky authored
      * lisp/emacs-lisp/smie.el (smie-indent-fixindent):
      * lisp/cedet/semantic/doc.el (semantic-doc-snarf-comment-for-tag):
      * lisp/progmodes/fortran.el (fortran-previous-statement)
      (fortran-next-statement)
      (fortran-fill-statement):
      * lisp/progmodes/vhdl-mode.el (vhdl-beginning-of-statement): Bracket
      comment-start-skip and comment-end-skip to avoid unexpected regexp
      operator precedence.
      7a382383
  20. 13 Apr, 2019 1 commit
    • Paul Eggert's avatar
      Omit/rewrite useless regexp repetitions · 7ddd08bd
      Paul Eggert authored
      Problem reported by Mattias Engdegård in:
      https://lists.gnu.org/r/emacs-devel/2019-04/msg00527.html
      * lisp/align.el (align-rules-list):
      * lisp/cedet/srecode/srt-mode.el (srecode-font-lock-keywords):
      * lisp/emacs-lisp/copyright.el (copyright-regexp):
      * lisp/erc/erc-backend.el (JOIN):
      * lisp/erc/erc-goodies.el (erc-unmorse):
      * lisp/mail/mail-extr.el (mail-extr-telephone-extension-pattern):
      * lisp/net/tramp-adb.el (tramp-adb-prompt):
      * lisp/org/org-table.el (org-table-range-regexp):
      * lisp/progmodes/idlwave.el (idlwave-where):
      * lisp/progmodes/verilog-mode.el (verilog-declaration-re-2-no-macro)
      (verilog-declaration-re-2-macro, verilog-delete-auto-buffer)
      (verilog-auto-inst-port):
      * lisp/url/url-misc.el (url-data):
      Omit or rewrite useless repetitions that risk being very slow in
      the backtracking regexp engine in Emacs.
      7ddd08bd
  21. 12 Apr, 2019 1 commit
  22. 08 Apr, 2019 1 commit
  23. 02 Apr, 2019 2 commits
    • Stefan Monnier's avatar
      * lisp/emacs-lisp/cl-macs.el: Don't always inline struct functions · 144b2243
      Stefan Monnier authored
      (cl--struct-inline): New var.
      (cl-defstruct): Obey it along with a new :noinline keyword argument.
      144b2243
    • Stefan Monnier's avatar
      * lisp/subr.el (prog2): Define as a macro · 84616144
      Stefan Monnier authored
      * src/eval.c (Fprog2): Delete function.
      (syms_of_eval): Don't register it.
      
      * lisp/emacs-lisp/byte-opt.el (byte-optimize-form-code-walker):
      * lisp/emacs-lisp/generator.el (cps--transform-1): Remove `prog2` case.
      
      * lisp/emacs-lisp/bytecomp.el (prog2): Remove handlers.
      (byte-compile-prog2): Delete.
      
      * lisp/emacs-lisp/lisp-mode.el (prog2): Remove property.
      84616144
  24. 01 Apr, 2019 1 commit
    • Stefan Monnier's avatar
      * lisp/subr.el (setq-default): Define as a macro · 197fbfc7
      Stefan Monnier authored
      * lisp/emacs-lisp/bytecomp.el (byte-compile-setq-default): Delete.
      (byte-compile-set-default): Inline the part that it used.
      
      * lisp/emacs-lisp/edebug.el (setq-default): Remove the debug spec.
      
      * src/data.c (Fsetq_default): Delete.
      (syms_of_data): Don't register.
      197fbfc7
  25. 28 Mar, 2019 1 commit
    • Mattias Engdegård's avatar
      Use memql instead of memq in pcase · eb6bbd9f
      Mattias Engdegård authored
      * lisp/emacs-lisp/pcase.el (pcase--u1):
      Use memql instead of memq to work with bignums (Bug#34781).
      * test/lisp/emacs-lisp/pcase-tests.el (pcase-tests-member): Test the above.
      eb6bbd9f
  26. 27 Mar, 2019 2 commits
  27. 26 Mar, 2019 1 commit
  28. 22 Mar, 2019 3 commits
  29. 21 Mar, 2019 2 commits
    • NicolasPetton's avatar
    • NicolasPetton's avatar
      New seq-contains-p predicate (Bug#34852) · 287cc58f
      NicolasPetton authored
      * lisp/emacs-lisp/seq.el (seq-contains-p): New predicate function.  It
      is a replacement for seq-contains which cannot be used as a predicate
      when a sequence contains nil values as it returns the element found.
      (seq-contains): Make obsolete.
      
      * test/lisp/emacs-lisp/seq-tests.el (test-seq-contains-p):
      (test-seq-intersection-with-nil, test-seq-set-equal-p-with-nil,
      test-difference-with-nil): Add regression tests.
      
      * doc/lispref/sequences.texi (Sequence Functions): Document
      seq-contains-p.
      287cc58f
  30. 19 Mar, 2019 2 commits
    • Mattias Engdegård's avatar
      Disallow reversed char ranges in `rx' · 3ed1621d
      Mattias Engdegård authored
      (any "a-Z0-9") generated "[0-9]", and (any (?9 . ?0)) generated "[9-0]".
      Reversed ranges are either mistakes or abuse.  Neither should be allowed.
      
      etc/NEWS: Explain the change.
      lisp/emacs-lisp/rx.el (rx): Document.
      (rx-check-any-string, rx-check-any): Add error checks for reversed ranges.
      test/lisp/emacs-lisp/rx-tests.el (rx-char-any-range-bad): New test.
      3ed1621d
    • Eli Zaretskii's avatar
      Fix downloading updates for packages with non-ASCII descriptions · 5ed05fbf
      Eli Zaretskii authored
      * lisp/emacs-lisp/package.el (package--download-one-archive):
      Make sure archive contents are written using UTF-8 encoding.
      (Bug#34909)
      (list-packages): Set buffer's encoding to UTF-8.
      5ed05fbf