emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] master b1cf262 5/5: Merge from origin/emacs-26


From: Glenn Morris
Subject: [Emacs-diffs] master b1cf262 5/5: Merge from origin/emacs-26
Date: Wed, 20 Dec 2017 21:15:56 -0500 (EST)

branch: master
commit b1cf262a79463f28164ea1c2ffee3c657ce02ea4
Merge: a415a97 b3f4a3a
Author: Glenn Morris <address@hidden>
Commit: Glenn Morris <address@hidden>

    Merge from origin/emacs-26
    
    b3f4a3a (origin/emacs-26) Special-case %DUMBFW for GnuTLS between 3.2...
    c2ae057 Work around GnuTLS version issues with %DUMBFW (tiny change)
    2f9d9ef ; Remove the mention of "plain C code" in the docstring as well
    aca827b Merge branch 'widen-less' into emacs-26
    87548f5 ; Rephrase NEWS entry a bit
    da0d773 (emacs-26) ; * lisp/erc/erc.el: Update URL.
    3a60515 * lisp/erc/erc.el (erc-shorten-server-name): Silence compiler...
    471b6c1 ; Replace non-ascii quote characters in doc strings etc
    7af7f5e Fix some more aliases to user options
    79fb4b5 Fix some flymake aliases
    b9fbc03 (origin/widen-less) Widen in indent-for-tab-command in the no...
    446faf3 Replace the mention of c-indent-defun with js-indent-line
    7e9eef0 Consolidate 'widen' calls
    
    # Conflicts:
    #   etc/NEWS
    #   lisp/progmodes/flymake-proc.el
---
 admin/last-chance.el           |  24 +++----
 doc/lispref/text.texi          |  56 +++-------------
 etc/NEWS.26                    |  10 +--
 lisp/cus-edit.el               |   3 +-
 lisp/emacs-lisp/bytecomp.el    |   2 +-
 lisp/erc/erc.el                |  18 +++---
 lisp/gnus/message.el           |   6 +-
 lisp/indent.el                 |  17 +++--
 lisp/progmodes/flymake-proc.el | 141 +++++++++++++++++++++--------------------
 lisp/progmodes/flymake.el      |   6 +-
 lisp/progmodes/prog-mode.el    |  49 ++------------
 lisp/progmodes/python.el       |  72 ++++++++-------------
 lisp/progmodes/ruby-mode.el    |   1 -
 lisp/textmodes/mhtml-mode.el   |   4 +-
 lisp/winner.el                 |   2 +-
 src/gnutls.c                   |  49 ++++++++++----
 test/lisp/mouse-tests.el       |   7 +-
 test/src/emacs-module-tests.el |   5 +-
 test/src/eval-tests.el         |   4 +-
 test/src/fns-tests.el          |   2 +-
 test/src/regex-tests.el        |   4 +-
 21 files changed, 211 insertions(+), 271 deletions(-)

diff --git a/admin/last-chance.el b/admin/last-chance.el
index 76b8bcf..cd3f78b 100644
--- a/admin/last-chance.el
+++ b/admin/last-chance.el
@@ -25,13 +25,13 @@
 ;;; Commentary:
 
 ;; Late 2016.  In a recent build, the date in a ChangeLog file
-;; is not fontified.  Turns out the face ‘change-log-date-face’
+;; is not fontified.  Turns out the face `change-log-date-face'
 ;; was declared obsolete since 22.1 and removed 2016-06-23.
 ;; (compile "git show c430f7e23fc2c22f251ace4254e37dea1452dfc3")
 ;;
-;; This library provides a command ‘last-chance’, which is a small
+;; This library provides a command `last-chance', which is a small
 ;; combination of "git grep" and some regexp filtering.  For example,
-;; if point is on the symbol ‘change-log-date-face’ in the form:
+;; if point is on the symbol `change-log-date-face' in the form:
 ;;
 ;;  (define-obsolete-face-alias 'change-log-date-face ...)
 ;;
@@ -39,7 +39,7 @@
 ;;
 ;;  M-x last-chance RET
 ;;
-;; will show you any references to ‘change-log-date-face’ in the
+;; will show you any references to `change-log-date-face' in the
 ;; *.el files in a new buffer (in Grep mode).  Hopefully you see
 ;; only the obsolete declaration and can proceed w/ its removal.
 ;; If not, please DTRT and refrain from the removal until those
@@ -59,17 +59,17 @@ This should include -n, -H, -F.")
 (defvar last-chance-uninteresting-regexps
   '("ChangeLog[.0-9]*:"
     "NEWS[-.0-9]*:"
-    ;; Add more ‘flush-lines’ args here.
+    ;; Add more `flush-lines' args here.
     )
   "List of regexps that match uninteresting \"git grep\" hits.")
 
 (defvar-local last-chance-symbol nil
-  "Symbol set by ‘last-chance’ for ‘last-chance-cleanup’ to DTRT.")
+  "Symbol set by `last-chance' for `last-chance-cleanup' to DTRT.")
 
 (defun last-chance-cleanup (buffer status)
   "Filter lines in BUFFER; append STATUS and count of removed lines.
-If BUFFER does not seem to be one created by ‘last-chance’, do nothing.
-This function is intended to be added to ‘compilation-finish-functions’."
+If BUFFER does not seem to be one created by `last-chance', do nothing.
+This function is intended to be added to `compilation-finish-functions'."
   (let ((name (buffer-local-value 'last-chance-symbol buffer))
         bef aft)
     (when name
@@ -90,10 +90,10 @@ This function is intended to be added to 
‘compilation-finish-functions’."
 
 (defun last-chance (symbol)
   "Grep the repo for SYMBOL, filtering the hits.
-This uses ‘last-chance-grep-command’ to do the grep and the
-regexps in ‘last-chance-uninteresting-regexps’ to filter the hits.
-Grepping is recursive starting under the dir that ‘vc-root-dir’
-finds (or the default directory if ‘vc-root-dir’ finds nothing).
+This uses `last-chance-grep-command' to do the grep and the
+regexps in `last-chance-uninteresting-regexps' to filter the hits.
+Grepping is recursive starting under the dir that `vc-root-dir'
+finds (or the default directory if `vc-root-dir' finds nothing).
 Output goes to the *grep* buffer.
 
 Interactively, Emacs queries for a symbol,
diff --git a/doc/lispref/text.texi b/doc/lispref/text.texi
index 9592702..561ad80 100644
--- a/doc/lispref/text.texi
+++ b/doc/lispref/text.texi
@@ -2397,57 +2397,31 @@ text at point (@pxref{Completion in Buffers}).
 syntax belongs to a different major mode.  Examples include
 @dfn{literate programming} source files that combine documentation and
 snippets of source code, Yacc/Bison programs that include snippets of
-plain C code, etc.  To correctly indent the embedded chunks, the major
+Python or JS code, etc.  To correctly indent the embedded chunks, the primary
 mode needs to delegate the indentation to another mode's indentation
-engine (e.g., call @code{c-indent-defun} for C code or
+engine (e.g., call @code{js-indent-line} for JS code or
 @code{python-indent-line} for Python), while providing it with some
-context to guide the indentation.  The following facilities support
-such multi-mode indentation.
+context to guide the indentation.  Major modes, for their part, should
+avoid calling @code{widen} in their indentation code and obey
address@hidden
 
 @defvar prog-indentation-context
 This variable, when address@hidden, holds the indentation context for
 the sub-mode's indentation engine provided by the superior major mode.
-The value should be a list of the form @code{(@var{first-column}
address@hidden(@var{start} . @var{end})} @code{prev-chunk})}.  The members of 
the
-list have the following meaning:
+The value should be a list of the form @code{(@var{first-column} . @var{rest}}.
+The members of the list have the following meaning:
 
 @table @var
 @item first-column
 The column to be used for top-level constructs.  This replaces the
 default value of the top-level column used by the sub-mode, usually
 zero.
address@hidden start
address@hidden end
-The region of the code chunk to be indented by the sub-mode.  The
-value of @var{end} can be @code{nil}, which stands for the value of
address@hidden
address@hidden prev-chunk
-If this is address@hidden, it should provide the sub-mode's
-indentation engine with a virtual context of the code chunk.  Valid
-values include:
-
address@hidden @minus
address@hidden
-A string whose contents is the text the sub-mode's indentation engine
-should consider to precede the code chunk.  The sub-mode's indentation
-engine can add text properties to that string, to be reused in
-repeated calls with the same string, thus using it as a cache.  An
-example where this is useful is code chunks that need to be indented
-as function bodies, but lack the function's preamble---the string
-could then include that missing preamble.
address@hidden
-A function.  It is expected to be called with the start position of
-the current chunk, and should return a cons cell
address@hidden@code{(@var{prev-start} . @var{prev-end})}} that specifies the
-region of the previous code chunk, or @code{nil} if there is no previous
-chunk.  This is useful in literate-programming sources, where code is
-split into chunks, and correct indentation needs to access previous
-chunks.
address@hidden itemize
address@hidden rest
+This value is currently unused.
 @end table
 @end defvar
 
-The following convenience functions should be used by major mode's
+The following convenience function should be used by major mode's
 indentation engine in support of invocations as sub-modes of another
 major mode.
 
@@ -2458,16 +2432,6 @@ function's value is the column number to use for 
top-level constructs.
 When no superior mode is in effect, this function returns zero.
 @end defun
 
address@hidden prog-widen
-Call this function instead of @code{widen} to remove any restrictions
-imposed by the mode's indentation engine and restore the restrictions
-recorded in @code{prog-indentation-context}.  This prevents the
-indentation engine of a sub-mode from inadvertently operating on text
-outside of the chunk it was supposed to indent, and preserves the
-restriction imposed by the superior mode.  When no superior mode is in
-effect, this function just calls @code{widen}.
address@hidden defun
-
 
 @node Region Indent
 @subsection Indenting an Entire Region
diff --git a/etc/NEWS.26 b/etc/NEWS.26
index 784c608..d751add 100644
--- a/etc/NEWS.26
+++ b/etc/NEWS.26
@@ -1119,11 +1119,11 @@ This allows better indentation support in modes that 
support multiple
 programming languages in the same buffer, like literate programming
 environments or ANTLR programs with embedded Python code.
 
-A major mode can provide indentation context for a sub-mode through
-the 'prog-indentation-context' variable.  To support this, modes that
-provide indentation should use 'prog-widen' instead of 'widen' and
-'prog-first-column' instead of a literal zero.  See the node
-"(elisp) Mode-Specific Indent" in the ELisp manual for more details.
+A major mode can provide indentation context for a sub-mode.  To
+support this, modes should use 'prog-first-column' instead of a
+literal zero and avoid calling 'widen' in their indentation functions.
+See the node "(elisp) Mode-Specific Indent" in the ELisp manual for
+more details.
 
 ** ERC
 
diff --git a/lisp/cus-edit.el b/lisp/cus-edit.el
index e0a00d4..f9f4063 100644
--- a/lisp/cus-edit.el
+++ b/lisp/cus-edit.el
@@ -4825,6 +4825,8 @@ If several parents are listed, go to the first of them."
               (parent (downcase (widget-get  button :tag))))
          (customize-group parent)))))
 
+(define-obsolete-variable-alias 'custom-mode-hook 'Custom-mode-hook "23.1")
+
 (defcustom Custom-mode-hook nil
   "Hook called when entering Custom mode."
   :type 'hook
@@ -4853,7 +4855,6 @@ If several parents are listed, go to the first of them."
     (setq-local widget-link-suffix ""))
   (setq show-trailing-whitespace nil))
 
-(define-obsolete-variable-alias 'custom-mode-hook 'Custom-mode-hook "23.1")
 (define-derived-mode Custom-mode nil "Custom"
   "Major mode for editing customization buffers.
 
diff --git a/lisp/emacs-lisp/bytecomp.el b/lisp/emacs-lisp/bytecomp.el
index 25f738c..e08e0d9 100644
--- a/lisp/emacs-lisp/bytecomp.el
+++ b/lisp/emacs-lisp/bytecomp.el
@@ -1253,7 +1253,7 @@ function directly; use `byte-compile-warn' or
 (defun byte-compile-report-error (error-info &optional fill)
   "Report Lisp error in compilation.
 ERROR-INFO is the error data, in the form of either (ERROR-SYMBOL . DATA)
-or STRING.  If FILL is non-nil, set ‘warning-fill-prefix’ to four spaces
+or STRING.  If FILL is non-nil, set `warning-fill-prefix' to four spaces
 when printing the error message."
   (setq byte-compiler-error-flag t)
   (byte-compile-log-warning
diff --git a/lisp/erc/erc.el b/lisp/erc/erc.el
index bda8dc1..493d69b 100644
--- a/lisp/erc/erc.el
+++ b/lisp/erc/erc.el
@@ -36,7 +36,7 @@
 
 ;; For more information, see the following URLs:
 ;; * https://sv.gnu.org/projects/erc/
-;; * http://www.emacswiki.org/cgi-bin/wiki/ERC
+;; * https://www.emacswiki.org/emacs/ERC
 
 
 
@@ -77,12 +77,12 @@
 (require 'erc-compat)
 
 (defvar erc-official-location
-  "https://emacswiki.org/cgi-bin/wiki/ERC (mailing list: address@hidden)"
+  "https://www.emacswiki.org/emacs/ERC (mailing list: address@hidden)"
   "Location of the ERC client on the Internet.")
 
 (defgroup erc nil
   "Emacs Internet Relay Chat client."
-  :link '(url-link "http://www.emacswiki.org/cgi-bin/wiki/ERC";)
+  :link '(url-link "https://www.emacswiki.org/emacs/ERC";)
   :link '(custom-manual "(erc) Top")
   :prefix "erc-"
   :group 'applications)
@@ -124,8 +124,6 @@
   "Running scripts at startup and with /LOAD"
   :group 'erc)
 
-(require 'erc-backend)
-
 ;; compatibility with older ERC releases
 
 (define-obsolete-variable-alias 'erc-announced-server-name
@@ -137,6 +135,8 @@
 (define-obsolete-function-alias 'erc-send-command
   'erc-server-send "ERC 5.1")
 
+(require 'erc-backend)
+
 ;; tunable connection and authentication parameters
 
 (defcustom erc-server nil
@@ -6260,11 +6260,11 @@ This should be a string with substitution variables 
recognized by
   :group 'erc-mode-line-and-header
   :type 'string)
 
-(defun erc-shorten-server-name (server-name)
-  "Shorten SERVER-NAME according to `erc-common-server-suffixes'."
-  (if (stringp server-name)
+(defun erc-shorten-server-name (server)
+  "Shorten SERVER name according to `erc-common-server-suffixes'."
+  (if (stringp server)
       (with-temp-buffer
-        (insert server-name)
+        (insert server)
         (let ((alist erc-common-server-suffixes))
           (while alist
             (goto-char (point-min))
diff --git a/lisp/gnus/message.el b/lisp/gnus/message.el
index 6053d33..c4bbf3c 100644
--- a/lisp/gnus/message.el
+++ b/lisp/gnus/message.el
@@ -6246,14 +6246,14 @@ they are."
 (declare-function beginning-of-visual-line "simple" (&optional n))
 
 (defun message-beginning-of-header (handle-folded)
-  "Move point to beginning of header’s value.
+  "Move point to beginning of header's value.
 
 When point is at the first header line, moves it after the colon
 and spaces separating header name and header value.
 
 When point is in a continuation line of a folded header (i.e. the
 line starts with a space), the behavior depends on HANDLE-FOLDED
-argument.  If it’s nil, function moves the point to the start of
+argument.  If it's nil, function moves the point to the start of
 the header continuation; otherwise, function locates the
 beginning of the header and moves point past the colon as is the
 case of single-line headers.
@@ -6261,7 +6261,7 @@ case of single-line headers.
 No check whether point is inside of a header or body of the
 message is performed.
 
-Returns point or nil if beginning of header’s value could not be
+Returns point or nil if beginning of header's value could not be
 found.  In the latter case, the point is still moved to the
 beginning of line (possibly after attempting to move it to the
 beginning of a folded header)."
diff --git a/lisp/indent.el b/lisp/indent.el
index d5ba0bd..400280f 100644
--- a/lisp/indent.el
+++ b/lisp/indent.el
@@ -69,6 +69,8 @@ variable is `indent-relative' or `indent-relative-maybe', 
handle
 it specially (since those functions are used for tabbing); in
 that case, indent by aligning to the previous non-blank line."
   (interactive)
+  (save-restriction
+    (widen)
   (syntax-propertize (line-end-position))
   (if (memq indent-line-function
            '(indent-relative indent-relative-maybe))
@@ -84,7 +86,7 @@ that case, indent by aligning to the previous non-blank line."
            (indent-line-to column)
          (save-excursion (indent-line-to column))))
     ;; The normal case.
-    (funcall indent-line-function)))
+    (funcall indent-line-function))))
 
 (defun indent--default-inside-comment ()
   (unless (or (> (current-column) (current-indentation))
@@ -140,11 +142,11 @@ prefix argument is ignored."
          (old-indent (current-indentation)))
 
       ;; Indent the line.
-      (or (not (eq (funcall indent-line-function) 'noindent))
+      (or (not (eq (indent--funcall-widened indent-line-function) 'noindent))
           (indent--default-inside-comment)
           (when (or (<= (current-column) (current-indentation))
                     (not (eq tab-always-indent 'complete)))
-            (funcall (default-value 'indent-line-function))))
+            (indent--funcall-widened (default-value 'indent-line-function))))
 
       (cond
        ;; If the text was already indented right, try completion.
@@ -166,6 +168,11 @@ prefix argument is ignored."
                        (< (point) end-marker))
               (indent-rigidly (point) end-marker indentation-change))))))))))
 
+(defun indent--funcall-widened (func)
+  (save-restriction
+    (widen)
+    (funcall func)))
+
 (defun insert-tab (&optional arg)
   (let ((count (prefix-numeric-value arg)))
     (if (and abbrev-mode
@@ -538,7 +545,9 @@ column to indent to; if it is nil, use one of the three 
methods above."
          (forward-line 1)))))
    ;; Use indent-region-function is available.
    (indent-region-function
-    (funcall indent-region-function start end))
+    (save-restriction
+      (widen)
+      (funcall indent-region-function start end)))
    ;; Else, use a default implementation that calls indent-line-function on
    ;; each line.
    (t (indent-region-line-by-line start end)))
diff --git a/lisp/progmodes/flymake-proc.el b/lisp/progmodes/flymake-proc.el
index e207de5..b11ae09 100644
--- a/lisp/progmodes/flymake-proc.el
+++ b/lisp/progmodes/flymake-proc.el
@@ -45,11 +45,17 @@
 
 (require 'flymake)
 
+(define-obsolete-variable-alias 'flymake-compilation-prevents-syntax-check
+  'flymake-proc-compilation-prevents-syntax-check "26.1")
+
 (defcustom flymake-proc-compilation-prevents-syntax-check t
   "If non-nil, don't start syntax check if compilation is running."
   :group 'flymake
   :type 'boolean)
 
+(define-obsolete-variable-alias 'flymake-xml-program
+  'flymake-proc-xml-program "26.1")
+
 (defcustom flymake-proc-xml-program
   (if (executable-find "xmlstarlet") "xmlstarlet" "xml")
   "Program to use for XML validation."
@@ -57,11 +63,17 @@
   :group 'flymake
   :version "24.4")
 
+(define-obsolete-variable-alias 'flymake-master-file-dirs
+  'flymake-proc-master-file-dirs "26.1")
+
 (defcustom flymake-proc-master-file-dirs '("." "./src" "./UnitTest")
   "Dirs where to look for master files."
   :group 'flymake
   :type '(repeat (string)))
 
+(define-obsolete-variable-alias 'flymake-master-file-count-limit
+  'flymake-proc-master-file-count-limit "26.1")
+
 (defcustom flymake-proc-master-file-count-limit 32
   "Max number of master files to check."
   :group 'flymake
@@ -74,6 +86,9 @@ Overrides `flymake-proc-allowed-file-name-masks'."
   :type '(repeat (regexp))
   :version "27.1")
 
+(define-obsolete-variable-alias 'flymake-allowed-file-name-masks
+  'flymake-proc-allowed-file-name-masks "26.1")
+
 (defcustom flymake-proc-allowed-file-name-masks
   '(("\\.\\(?:c\\(?:pp\\|xx\\|\\+\\+\\)?\\|CC\\)\\'"
      flymake-proc-simple-make-init
@@ -1133,76 +1148,62 @@ Use CREATE-TEMP-F for creating temp copy."
 
 ;;;;
 
-(progn
-  (define-obsolete-variable-alias 'flymake-compilation-prevents-syntax-check
-    'flymake-proc-compilation-prevents-syntax-check "26.1")
-  (define-obsolete-variable-alias 'flymake-xml-program
-    'flymake-proc-xml-program "26.1")
-  (define-obsolete-variable-alias 'flymake-master-file-dirs
-    'flymake-proc-master-file-dirs "26.1")
-  (define-obsolete-variable-alias 'flymake-master-file-count-limit
-    'flymake-proc-master-file-count-limit "26.1"
-    "Max number of master files to check.")
-  (define-obsolete-variable-alias 'flymake-allowed-file-name-masks
-    'flymake-proc-allowed-file-name-masks "26.1")
-  (define-obsolete-variable-alias 'flymake-check-file-limit
-    'flymake-proc-check-file-limit "26.1")
-  (define-obsolete-function-alias 
'flymake-reformat-err-line-patterns-from-compile-el
-    'flymake-proc-reformat-err-line-patterns-from-compile-el "26.1")
-  (define-obsolete-variable-alias 'flymake-err-line-patterns
-    'flymake-proc-err-line-patterns "26.1")
-  (define-obsolete-function-alias 'flymake-parse-line
-    'flymake-proc-parse-line "26.1")
-  (define-obsolete-function-alias 'flymake-get-include-dirs
-    'flymake-proc-get-include-dirs "26.1")
-  (define-obsolete-function-alias 'flymake-stop-all-syntax-checks
-    'flymake-proc-stop-all-syntax-checks "26.1")
-  (define-obsolete-function-alias 'flymake-compile
-    'flymake-proc-compile "26.1")
-  (define-obsolete-function-alias 'flymake-create-temp-inplace
-    'flymake-proc-create-temp-inplace "26.1")
-  (define-obsolete-function-alias 'flymake-create-temp-with-folder-structure
-    'flymake-proc-create-temp-with-folder-structure "26.1")
-  (define-obsolete-function-alias 'flymake-init-create-temp-buffer-copy
-    'flymake-proc-init-create-temp-buffer-copy "26.1")
-  (define-obsolete-function-alias 'flymake-simple-cleanup
-    'flymake-proc-simple-cleanup "26.1")
-  (define-obsolete-function-alias 'flymake-get-real-file-name
-    'flymake-proc-get-real-file-name "26.1")
-  (define-obsolete-function-alias 'flymake-master-cleanup
-    'flymake-proc-master-cleanup "26.1")
-  (define-obsolete-function-alias 'flymake-get-make-cmdline
-    'flymake-proc-get-make-cmdline "26.1")
-  (define-obsolete-function-alias 'flymake-get-ant-cmdline
-    'flymake-proc-get-ant-cmdline "26.1")
-  (define-obsolete-function-alias 'flymake-simple-make-init-impl
-    'flymake-proc-simple-make-init-impl "26.1")
-  (define-obsolete-function-alias 'flymake-simple-make-init
-    'flymake-proc-simple-make-init "26.1")
-  (define-obsolete-function-alias 'flymake-master-make-init
-    'flymake-proc-master-make-init "26.1")
-  (define-obsolete-function-alias 'flymake-find-make-buildfile
-    'flymake-proc--find-make-buildfile "26.1")
-  (define-obsolete-function-alias 'flymake-master-make-header-init
-    'flymake-proc-master-make-header-init "26.1")
-  (define-obsolete-function-alias 'flymake-simple-make-java-init
-    'flymake-proc-simple-make-java-init "26.1")
-  (define-obsolete-function-alias 'flymake-simple-ant-java-init
-    'flymake-proc-simple-ant-java-init "26.1")
-  (define-obsolete-function-alias 'flymake-simple-java-cleanup
-    'flymake-proc-simple-java-cleanup "26.1")
-  (define-obsolete-function-alias 'flymake-perl-init
-    'flymake-proc-perl-init "26.1")
-  (define-obsolete-function-alias 'flymake-php-init
-    'flymake-proc-php-init "26.1")
-  (define-obsolete-function-alias 'flymake-simple-tex-init
-    'flymake-proc-simple-tex-init "26.1")
-  (define-obsolete-function-alias 'flymake-master-tex-init
-    'flymake-proc-master-tex-init "26.1")
-  (define-obsolete-function-alias 'flymake-xml-init
-    'flymake-proc-xml-init "26.1"))
-
-
+(define-obsolete-variable-alias 'flymake-check-file-limit
+  'flymake-proc-check-file-limit "26.1")
+(define-obsolete-function-alias 
'flymake-reformat-err-line-patterns-from-compile-el
+  'flymake-proc-reformat-err-line-patterns-from-compile-el "26.1")
+(define-obsolete-variable-alias 'flymake-err-line-patterns
+  'flymake-proc-err-line-patterns "26.1")
+(define-obsolete-function-alias 'flymake-parse-line
+  'flymake-proc-parse-line "26.1")
+(define-obsolete-function-alias 'flymake-get-include-dirs
+  'flymake-proc-get-include-dirs "26.1")
+(define-obsolete-function-alias 'flymake-stop-all-syntax-checks
+  'flymake-proc-stop-all-syntax-checks "26.1")
+(define-obsolete-function-alias 'flymake-compile
+  'flymake-proc-compile "26.1")
+(define-obsolete-function-alias 'flymake-create-temp-inplace
+  'flymake-proc-create-temp-inplace "26.1")
+(define-obsolete-function-alias 'flymake-create-temp-with-folder-structure
+  'flymake-proc-create-temp-with-folder-structure "26.1")
+(define-obsolete-function-alias 'flymake-init-create-temp-buffer-copy
+  'flymake-proc-init-create-temp-buffer-copy "26.1")
+(define-obsolete-function-alias 'flymake-simple-cleanup
+  'flymake-proc-simple-cleanup "26.1")
+(define-obsolete-function-alias 'flymake-get-real-file-name
+  'flymake-proc-get-real-file-name "26.1")
+(define-obsolete-function-alias 'flymake-master-cleanup
+  'flymake-proc-master-cleanup "26.1")
+(define-obsolete-function-alias 'flymake-get-make-cmdline
+  'flymake-proc-get-make-cmdline "26.1")
+(define-obsolete-function-alias 'flymake-get-ant-cmdline
+  'flymake-proc-get-ant-cmdline "26.1")
+(define-obsolete-function-alias 'flymake-simple-make-init-impl
+  'flymake-proc-simple-make-init-impl "26.1")
+(define-obsolete-function-alias 'flymake-simple-make-init
+  'flymake-proc-simple-make-init "26.1")
+(define-obsolete-function-alias 'flymake-master-make-init
+  'flymake-proc-master-make-init "26.1")
+(define-obsolete-function-alias 'flymake-find-make-buildfile
+  'flymake-proc--find-make-buildfile "26.1")
+(define-obsolete-function-alias 'flymake-master-make-header-init
+  'flymake-proc-master-make-header-init "26.1")
+(define-obsolete-function-alias 'flymake-simple-make-java-init
+  'flymake-proc-simple-make-java-init "26.1")
+(define-obsolete-function-alias 'flymake-simple-ant-java-init
+  'flymake-proc-simple-ant-java-init "26.1")
+(define-obsolete-function-alias 'flymake-simple-java-cleanup
+  'flymake-proc-simple-java-cleanup "26.1")
+(define-obsolete-function-alias 'flymake-perl-init
+  'flymake-proc-perl-init "26.1")
+(define-obsolete-function-alias 'flymake-php-init
+  'flymake-proc-php-init "26.1")
+(define-obsolete-function-alias 'flymake-simple-tex-init
+  'flymake-proc-simple-tex-init "26.1")
+(define-obsolete-function-alias 'flymake-master-tex-init
+  'flymake-proc-master-tex-init "26.1")
+(define-obsolete-function-alias 'flymake-xml-init
+  'flymake-proc-xml-init "26.1")
 
 (provide 'flymake-proc)
 ;;; flymake-proc.el ends here
diff --git a/lisp/progmodes/flymake.el b/lisp/progmodes/flymake.el
index f23af82..6080742 100644
--- a/lisp/progmodes/flymake.el
+++ b/lisp/progmodes/flymake.el
@@ -124,15 +124,15 @@ If nil, never start checking buffer automatically like 
this."
 (make-obsolete-variable 'flymake-gui-warnings-enabled
                        "it no longer has any effect." "26.1")
 
+(define-obsolete-variable-alias 'flymake-start-syntax-check-on-find-file
+  'flymake-start-on-flymake-mode "26.1")
+
 (defcustom flymake-start-on-flymake-mode t
   "Start syntax check when `flymake-mode' is enabled.
 Specifically, start it when the buffer is actually displayed."
   :version "26.1"
   :type 'boolean)
 
-(define-obsolete-variable-alias 'flymake-start-syntax-check-on-find-file
-  'flymake-start-on-flymake-mode "26.1")
-
 (defcustom flymake-log-level -1
   "Obsolete and ignored variable."
   :type 'integer)
diff --git a/lisp/progmodes/prog-mode.el b/lisp/progmodes/prog-mode.el
index f727e45..f46e6da 100644
--- a/lisp/progmodes/prog-mode.el
+++ b/lisp/progmodes/prog-mode.el
@@ -53,8 +53,8 @@
   "When non-nil, provides context for indenting embedded code chunks.
 
 There are languages where part of the code is actually written in
-a sub language, e.g., a Yacc/Bison or ANTLR grammar also consists
-of plain C code.  This variable enables the major mode of the
+a sub language, e.g., a Yacc/Bison or ANTLR grammar can also include
+JS or Python code.  This variable enables the primary mode of the
 main language to use the indentation engine of the sub-mode for
 lines in code chunks written in the sub-mode's language.
 
@@ -64,37 +64,13 @@ mode, it should bind this variable to non-nil around the 
call.
 
 The non-nil value should be a list of the form:
 
-   (FIRST-COLUMN (START . END) PREVIOUS-CHUNKS)
+   (FIRST-COLUMN . REST)
 
 FIRST-COLUMN is the column the indentation engine of the sub-mode
 should use for top-level language constructs inside the code
 chunk (instead of 0).
 
-START and END specify the region of the code chunk.  END can be
-nil, which stands for the value of `point-max'.  The function
-`prog-widen' uses this to restore restrictions imposed by the
-sub-mode's indentation engine.
-
-PREVIOUS-CHUNKS, if non-nil, provides the indentation engine of
-the sub-mode with the virtual context of the code chunk.  Valid
-values are:
-
- - A string containing text which the indentation engine can
-   consider as standing in front of the code chunk.  To cache the
-   string's calculated syntactic information for repeated calls
-   with the same string, the sub-mode can add text-properties to
-   the string.
-
-   A typical use case is for grammars with code chunks which are
-   to be indented like function bodies -- the string would contain
-   the corresponding function preamble.
-
- - A function, to be called with the start position of the current
-   chunk.  It should return either the region of the previous chunk
-   as (PREV-START . PREV-END), or nil if there is no previous chunk.
-
-   A typical use case are literate programming sources -- the
-   function would successively return the previous code chunks.")
+REST is currently unused.")
 
 (defun prog-indent-sexp (&optional defun)
   "Indent the expression after point.
@@ -113,23 +89,6 @@ instead."
   "Return the indentation column normally used for top-level constructs."
   (or (car prog-indentation-context) 0))
 
-(defun prog-widen ()
-  "Remove restrictions (narrowing) from current code chunk or buffer.
-This function should be used instead of `widen' in any function used
-by the indentation engine to make it respect the value of
-`prog-indentation-context'.
-
-This function (like `widen') is useful inside a
-`save-restriction' to make the indentation correctly work when
-narrowing is in effect."
-  (let ((chunk (cadr prog-indentation-context)))
-    (if chunk
-        ;; No call to `widen' is necessary here, as narrow-to-region
-        ;; changes (not just narrows) the existing restrictions
-        (narrow-to-region (car chunk) (or (cdr chunk) (point-max)))
-      (widen))))
-
-
 (defvar-local prettify-symbols-alist nil
   "Alist of symbol prettifications.
 Each element looks like (SYMBOL . CHARACTER), where the symbol
diff --git a/lisp/progmodes/python.el b/lisp/progmodes/python.el
index 035d93f..a72a55d 100644
--- a/lisp/progmodes/python.el
+++ b/lisp/progmodes/python.el
@@ -287,10 +287,6 @@
 ;;; 24.x Compat
 
 
-(unless (fboundp 'prog-widen)
-  (defun prog-widen ()
-    (widen)))
-
 (unless (fboundp 'prog-first-column)
   (defun prog-first-column ()
     0))
@@ -725,12 +721,18 @@ It makes underscores and dots word constituent chars.")
 
 ;;; Indentation
 
+(define-obsolete-variable-alias
+  'python-indent 'python-indent-offset "24.3")
+
 (defcustom python-indent-offset 4
   "Default indentation offset for Python."
   :group 'python
   :type 'integer
   :safe 'integerp)
 
+(define-obsolete-variable-alias
+  'python-guess-indent 'python-indent-guess-indent-offset "24.3")
+
 (defcustom python-indent-guess-indent-offset t
   "Non-nil tells Python mode to guess `python-indent-offset' value."
   :type 'boolean
@@ -750,12 +752,6 @@ It makes underscores and dots word constituent chars.")
   :type '(repeat symbol)
   :group 'python)
 
-(define-obsolete-variable-alias
-  'python-indent 'python-indent-offset "24.3")
-
-(define-obsolete-variable-alias
-  'python-guess-indent 'python-indent-guess-indent-offset "24.3")
-
 (defvar python-indent-current-level 0
   "Deprecated var available for compatibility.")
 
@@ -785,7 +781,7 @@ work on `python-indent-calculate-indentation' instead."
   (interactive)
   (save-excursion
     (save-restriction
-      (prog-widen)
+      (widen)
       (goto-char (point-min))
       (let ((block-end))
         (while (and (not block-end)
@@ -883,8 +879,6 @@ keyword
 :at-dedenter-block-start
  - Point is on a line starting a dedenter block.
  - START is the position where the dedenter block starts."
-  (save-restriction
-    (prog-widen)
     (let ((ppss (save-excursion
                   (beginning-of-line)
                   (syntax-ppss))))
@@ -1022,7 +1016,7 @@ keyword
                       (looking-at (python-rx block-ender)))
                     :after-block-end)
                    (t :after-line))
-             (point)))))))))
+             (point))))))))
 
 (defun python-indent--calculate-indentation ()
   "Internal implementation of `python-indent-calculate-indentation'.
@@ -1030,8 +1024,6 @@ May return an integer for the maximum possible 
indentation at
 current context or a list of integers.  The latter case is only
 happening for :at-dedenter-block-start context since the
 possibilities can be narrowed to specific indentation points."
-  (save-restriction
-    (prog-widen)
     (save-excursion
       (pcase (python-indent-context)
         (`(:no-indent . ,_) (prog-first-column)) ; usually 0
@@ -1081,7 +1073,7 @@ possibilities can be narrowed to specific indentation 
points."
         (`(,(or :inside-paren-newline-start-from-block) . ,start)
          ;; Add two indentation levels to make the suite stand out.
          (goto-char start)
-         (+ (current-indentation) (* python-indent-offset 2)))))))
+         (+ (current-indentation) (* python-indent-offset 2))))))
 
 (defun python-indent--calculate-levels (indentation)
   "Calculate levels list given INDENTATION.
@@ -2042,6 +2034,9 @@ executed through tramp connections."
   :type '(repeat string)
   :group 'python)
 
+(define-obsolete-variable-alias
+  'python-shell-virtualenv-path 'python-shell-virtualenv-root "25.1")
+
 (defcustom python-shell-virtualenv-root nil
   "Path to virtualenv root.
 This variable, when set to a string, makes the environment to be
@@ -2050,9 +2045,6 @@ virtualenv."
   :type '(choice (const nil) string)
   :group 'python)
 
-(define-obsolete-variable-alias
-  'python-shell-virtualenv-path 'python-shell-virtualenv-root "25.1")
-
 (defcustom python-shell-setup-codes nil
   "List of code run by `python-shell-send-setup-codes'."
   :type '(repeat symbol)
@@ -3289,14 +3281,6 @@ def __PYTHON_EL_get_completions(text):
   :type 'string
   :group 'python)
 
-(defcustom python-shell-completion-string-code
-  "';'.join(__PYTHON_EL_get_completions('''%s'''))"
-  "Python code used to get a string of completions separated by semicolons.
-The string passed to the function is the current python name or
-the full statement in the case of imports."
-  :type 'string
-  :group 'python)
-
 (define-obsolete-variable-alias
   'python-shell-completion-module-string-code
   'python-shell-completion-string-code
@@ -3309,6 +3293,14 @@ the full statement in the case of imports."
   "25.1"
   "Completion string code must work for (i)pdb.")
 
+(defcustom python-shell-completion-string-code
+  "';'.join(__PYTHON_EL_get_completions('''%s'''))"
+  "Python code used to get a string of completions separated by semicolons.
+The string passed to the function is the current python name or
+the full statement in the case of imports."
+  :type 'string
+  :group 'python)
+
 (defcustom python-shell-completion-native-disabled-interpreters
   ;; PyPy's readline cannot handle some escape sequences yet.  Native
   ;; completion was found to be non-functional for IPython (see
@@ -4040,6 +4032,9 @@ JUSTIFY should be used (if applicable) as in 
`fill-paragraph'."
 
 ;;; Skeletons
 
+(define-obsolete-variable-alias
+  'python-use-skeletons 'python-skeleton-autoinsert "24.3")
+
 (defcustom python-skeleton-autoinsert nil
   "Non-nil means template skeletons will be automagically inserted.
 This happens when pressing \"if<SPACE>\", for example, to prompt for
@@ -4048,9 +4043,6 @@ the if condition."
   :group 'python
   :safe 'booleanp)
 
-(define-obsolete-variable-alias
-  'python-use-skeletons 'python-skeleton-autoinsert "24.3")
-
 (defvar python-skeleton-available '()
   "Internal list of available skeletons.")
 
@@ -4593,7 +4585,7 @@ Optional argument INCLUDE-TYPE indicates to include the 
type of the defun.
 This function can be used as the value of `add-log-current-defun-function'
 since it returns nil if point is not inside a defun."
   (save-restriction
-    (prog-widen)
+    (widen)
     (save-excursion
       (end-of-line 1)
       (let ((names)
@@ -4791,12 +4783,10 @@ likely an invalid python file."
   "Message the first line of the block the current statement closes."
   (let ((point (python-info-dedenter-opening-block-position)))
     (when point
-      (save-restriction
-        (prog-widen)
         (message "Closes %s" (save-excursion
                                (goto-char point)
                                (buffer-substring
-                                (point) (line-end-position))))))))
+                                (point) (line-end-position)))))))
 
 (defun python-info-dedenter-statement-p ()
   "Return point if current statement is a dedenter.
@@ -4812,8 +4802,6 @@ statement."
   "Return non-nil if current line ends with backslash.
 With optional argument LINE-NUMBER, check that line instead."
   (save-excursion
-    (save-restriction
-      (prog-widen)
       (when line-number
         (python-util-goto-line line-number))
       (while (and (not (eobp))
@@ -4822,14 +4810,12 @@ With optional argument LINE-NUMBER, check that line 
instead."
                   (not (equal (char-before (point)) ?\\)))
         (forward-line 1))
       (when (equal (char-before) ?\\)
-        (point-marker)))))
+        (point-marker))))
 
 (defun python-info-beginning-of-backslash (&optional line-number)
   "Return the point where the backslashed line starts.
 Optional argument LINE-NUMBER forces the line number to check against."
   (save-excursion
-    (save-restriction
-      (prog-widen)
       (when line-number
         (python-util-goto-line line-number))
       (when (python-info-line-ends-backslash-p)
@@ -4838,15 +4824,13 @@ Optional argument LINE-NUMBER forces the line number to 
check against."
                  (python-syntax-context 'paren))
           (forward-line -1))
         (back-to-indentation)
-        (point-marker)))))
+        (point-marker))))
 
 (defun python-info-continuation-line-p ()
   "Check if current line is continuation of another.
 When current line is continuation of another return the point
 where the continued line ends."
   (save-excursion
-    (save-restriction
-      (prog-widen)
       (let* ((context-type (progn
                              (back-to-indentation)
                              (python-syntax-context-type)))
@@ -4872,7 +4856,7 @@ where the continued line ends."
                (python-util-forward-comment -1)
                (when (and (equal (1- line-start) (line-number-at-pos))
                           (python-info-line-ends-backslash-p))
-                 (point-marker))))))))
+                 (point-marker)))))))
 
 (defun python-info-block-continuation-line-p ()
   "Return non-nil if current line is a continuation of a block."
diff --git a/lisp/progmodes/ruby-mode.el b/lisp/progmodes/ruby-mode.el
index 1c7df7e..cc5cbbc 100644
--- a/lisp/progmodes/ruby-mode.el
+++ b/lisp/progmodes/ruby-mode.el
@@ -1364,7 +1364,6 @@ delimiter."
                                              "\\)\\>")))
                     (eq (ruby-deep-indent-paren-p t) 'space)
                     (not (bobp)))
-                   (widen)
                    (goto-char (or begin parse-start))
                    (skip-syntax-forward " ")
                    (current-column))
diff --git a/lisp/textmodes/mhtml-mode.el b/lisp/textmodes/mhtml-mode.el
index 3e37ede..883eadd 100644
--- a/lisp/textmodes/mhtml-mode.el
+++ b/lisp/textmodes/mhtml-mode.el
@@ -341,9 +341,7 @@ This is used by `mhtml--pre-command'.")
              ((eq mhtml-tag-relative-indent 'ignore)
               (setq base-indent 0)))
             (narrow-to-region region-start (point-max))
-            (let ((prog-indentation-context (list base-indent
-                                                  (cons (point-min) nil)
-                                                  nil)))
+            (let ((prog-indentation-context (list base-indent)))
               (mhtml--with-locals submode
                 ;; indent-line-function was rebound by
                 ;; mhtml--with-locals.
diff --git a/lisp/winner.el b/lisp/winner.el
index 6bc2748..041e925 100644
--- a/lisp/winner.el
+++ b/lisp/winner.el
@@ -353,7 +353,7 @@ You may want to include buffer names such as *Help*, 
*Apropos*,
   "Toggle Winner mode on or off.
 With a prefix argument ARG, enable Winner mode if ARG is
 positive, and disable it otherwise.  If called from Lisp, enable
-the mode if ARG is omitted or nil, and toggle it if ARG is ‘toggle’.
+the mode if ARG is omitted or nil, and toggle it if ARG is `toggle'.
 
 Winner mode is a global minor mode that records the changes in
 the window configuration (i.e. how the frames are partitioned
diff --git a/src/gnutls.c b/src/gnutls.c
index 8db201a..c21421f 100644
--- a/src/gnutls.c
+++ b/src/gnutls.c
@@ -46,6 +46,14 @@ along with GNU Emacs.  If not, see 
<https://www.gnu.org/licenses/>.  */
 # define HAVE_GNUTLS_MAC_GET_NONCE_SIZE
 #endif
 
+#if GNUTLS_VERSION_NUMBER >= 0x030501
+# define HAVE_GNUTLS_EXT_GET_NAME
+#endif
+
+#if GNUTLS_VERSION_NUMBER >= 0x030205
+# define HAVE_GNUTLS_EXT__DUMBFW
+#endif
+
 #ifdef HAVE_GNUTLS
 
 # ifdef WINDOWSNT
@@ -237,6 +245,9 @@ DEF_DLL_FN (int, gnutls_hash_get_len, 
(gnutls_digest_algorithm_t));
 DEF_DLL_FN (int, gnutls_hash, (gnutls_hash_hd_t, const void *, size_t));
 DEF_DLL_FN (void, gnutls_hash_deinit, (gnutls_hash_hd_t, void *));
 DEF_DLL_FN (void, gnutls_hash_output, (gnutls_hash_hd_t, void *));
+#   ifdef HAVE_GNUTLS_EXT_GET_NAME
+DEF_DLL_FN (const char *, gnutls_ext_get_name, (unsigned int));
+#   endif
 #  endif        /* HAVE_GNUTLS3 */
 
 
@@ -356,6 +367,9 @@ init_gnutls_functions (void)
   LOAD_DLL_FN (library, gnutls_hash);
   LOAD_DLL_FN (library, gnutls_hash_deinit);
   LOAD_DLL_FN (library, gnutls_hash_output);
+#   ifdef HAVE_GNUTLS_EXT_GET_NAME
+  LOAD_DLL_FN (library, gnutls_ext_get_name);
+#   endif
 #  endif        /* HAVE_GNUTLS3 */
 
   max_log_level = global_gnutls_log_level;
@@ -469,8 +483,12 @@ init_gnutls_functions (void)
 #  define gnutls_hash fn_gnutls_hash
 #  define gnutls_hash_deinit fn_gnutls_hash_deinit
 #  define gnutls_hash_output fn_gnutls_hash_output
+#   ifdef HAVE_GNUTLS_EXT_GET_NAME
+#    define gnutls_ext_get_name fn_gnutls_ext_get_name
+#   endif
 #  endif        /* HAVE_GNUTLS3 */
 
+
 /* This wrapper is called from fns.c, which doesn't know about the
    LOAD_DLL_FN stuff above.  */
 int
@@ -2425,6 +2443,18 @@ Any GnuTLS extension with ID up to 100
 
 #ifdef HAVE_GNUTLS
 
+# ifdef WINDOWSNT
+  Lisp_Object found = Fassq (Qgnutls, Vlibrary_cache);
+  if (CONSP (found))
+    return XCDR (found);
+
+  /* Load the GnuTLS DLL and find exported functions.  The external
+     library cache is updated after the capabilities have been
+     determined.  */
+  if (!init_gnutls_functions ())
+    return Qnil;
+# endif /* WINDOWSNT */
+
   capabilities = Fcons (intern("gnutls"), capabilities);
 
 # ifdef HAVE_GNUTLS3
@@ -2437,8 +2467,8 @@ Any GnuTLS extension with ID up to 100
 #  endif
 
   capabilities = Fcons (intern("macs"), capabilities);
-# endif          /* HAVE_GNUTLS3 */
 
+#  ifdef HAVE_GNUTLS_EXT_GET_NAME
   for (unsigned int ext=0; ext < 100; ext++)
     {
       const char* name = gnutls_ext_get_name(ext);
@@ -2447,18 +2477,15 @@ Any GnuTLS extension with ID up to 100
           capabilities = Fcons (intern(name), capabilities);
         }
     }
+#  endif
+# endif          /* HAVE_GNUTLS3 */
+
+#  ifdef HAVE_GNUTLS_EXT__DUMBFW
+  capabilities = Fcons (intern("ClientHello Padding"), capabilities);
+#  endif
 
 # ifdef WINDOWSNT
-  Lisp_Object found = Fassq (Qgnutls, Vlibrary_cache);
-  if (CONSP (found))
-    return XCDR (found);
-  else
-    {
-      Lisp_Object status;
-      status = init_gnutls_functions () ? capabilities : Qnil;
-      Vlibrary_cache = Fcons (Fcons (Qgnutls, status), Vlibrary_cache);
-      return status;
-    }
+  Vlibrary_cache = Fcons (Fcons (Qgnutls, capabilities), Vlibrary_cache);
 # endif /* WINDOWSNT */
 #endif /* HAVE_GNUTLS */
 
diff --git a/test/lisp/mouse-tests.el b/test/lisp/mouse-tests.el
index f8c9100..170df4a 100644
--- a/test/lisp/mouse-tests.el
+++ b/test/lisp/mouse-tests.el
@@ -26,8 +26,7 @@
 ;;; Code:
 
 (ert-deftest bug23288-use-return-value ()
-  "If ‘mouse-on-link-p’ returns a string, its first character is
-used."
+  "If `mouse-on-link-p' returns a string, its first character is used."
   (cl-letf ((last-input-event '(down-mouse-1 nil 1))
             (unread-command-events '((mouse-1 nil 1)))
             (mouse-1-click-follows-link t)
@@ -37,8 +36,8 @@ used."
     (should (equal unread-command-events '(?a)))))
 
 (ert-deftest bug23288-translate-to-mouse-2 ()
-  "If ‘mouse-on-link-p’ doesn’t return a string or vector,
-translate ‘mouse-1’ events into ‘mouse-2’ events."
+  "If `mouse-on-link-p' doesn't return a string or vector,
+translate `mouse-1' events into `mouse-2' events."
   (cl-letf ((last-input-event '(down-mouse-1 nil 1))
             (unread-command-events '((mouse-1 nil 1)))
             (mouse-1-click-follows-link t)
diff --git a/test/src/emacs-module-tests.el b/test/src/emacs-module-tests.el
index 4b41fc2..767d87a 100644
--- a/test/src/emacs-module-tests.el
+++ b/test/src/emacs-module-tests.el
@@ -231,10 +231,9 @@ must evaluate to a regular expression string."
                                   (point) (point-max))))))))
 
 (ert-deftest module--test-assertions--load-non-live-object ()
-  "Check that -module-assertions verify that non-live objects
-aren’t accessed."
+  "Check that -module-assertions verify that non-live objects aren't accessed."
   (skip-unless (file-executable-p mod-test-emacs))
-  ;; This doesn’t yet cause undefined behavior.
+  ;; This doesn't yet cause undefined behavior.
   (should (eq (mod-test-invalid-store) 123))
   (module--test-assertion (rx "Emacs value not found in "
                               (+ digit) " values of "
diff --git a/test/src/eval-tests.el b/test/src/eval-tests.el
index 7ff60dd..15b2fdf 100644
--- a/test/src/eval-tests.el
+++ b/test/src/eval-tests.el
@@ -28,14 +28,14 @@
 (require 'ert)
 
 (ert-deftest eval-tests--bug24673 ()
-  "Checks that Bug#24673 has been fixed."
+  "Check that Bug#24673 has been fixed."
   ;; This should not crash.
   (should-error (funcall '(closure)) :type 'invalid-function))
 
 (defvar byte-compile-debug)
 
 (ert-deftest eval-tests--bugs-24912-and-24913 ()
-  "Checks that Emacs doesn’t accept weird argument lists.
+  "Check that Emacs doesn't accept weird argument lists.
 Bug#24912 and Bug#24913."
   (dolist (args '((&optional) (&rest) (&optional &rest) (&rest &optional)
                   (&optional &rest a) (&optional a &rest)
diff --git a/test/src/fns-tests.el b/test/src/fns-tests.el
index 705d02f..4d8228b 100644
--- a/test/src/fns-tests.el
+++ b/test/src/fns-tests.el
@@ -548,7 +548,7 @@
   (should-error (nconc (cyc2 1 2) 'tail) :type 'circular-list))
 
 (ert-deftest plist-get/odd-number-of-elements ()
-  "Test that ‘plist-get’ doesn’t signal an error on degenerate plists."
+  "Test that `plist-get' doesn't signal an error on degenerate plists."
   (should-not (plist-get '(:foo 1 :bar) :bar)))
 
 (ert-deftest lax-plist-get/odd-number-of-elements ()
diff --git a/test/src/regex-tests.el b/test/src/regex-tests.el
index b1f1ea7..220d42c 100644
--- a/test/src/regex-tests.el
+++ b/test/src/regex-tests.el
@@ -27,13 +27,13 @@
   "Path to regex-resources directory next to the \"regex-tests.el\" file.")
 
 (ert-deftest regex-word-cc-fallback-test ()
-  "Test that ‘[[:cc:]]*x’ matches ‘x’ (bug#24020).
+  "Test that \"[[:cc:]]*x\" matches \"x\" (bug#24020).
 
 Test that a regex of the form \"[[:cc:]]*x\" where CC is
 a character class which matches a multibyte character X, matches
 string \"x\".
 
-For example, ‘[[:word:]]*\u2620’ regex (note: \u2620 is a word
+For example, \"[[:word:]]*\u2620\" regex (note: \u2620 is a word
 character) must match a string \"\u2420\"."
   (dolist (class '("[[:word:]]" "\\sw"))
     (dolist (repeat '("*" "+"))



reply via email to

[Prev in Thread] Current Thread [Next in Thread]