summaryrefslogtreecommitdiff
path: root/lisp
diff options
context:
space:
mode:
Diffstat (limited to 'lisp')
-rw-r--r--lisp/ChangeLog4
-rw-r--r--lisp/emacs-lisp/checkdoc.el9
2 files changed, 7 insertions, 6 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index 021ae0db2c0..04cbca0e721 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,5 +1,9 @@
2009-11-24 Kevin Ryde <user42@zip.com.au>
+ * emacs-lisp/checkdoc.el (checkdoc-proper-noun-regexp): Build
+ value with regexp-opt instead of explicit joining loop. (My
+ Bug#4927.)
+
* emacs-lisp/elint.el (elint-add-required-env): Better error message
when .el source file not found or other error.
diff --git a/lisp/emacs-lisp/checkdoc.el b/lisp/emacs-lisp/checkdoc.el
index 7140c997283..5e8d2e084ff 100644
--- a/lisp/emacs-lisp/checkdoc.el
+++ b/lisp/emacs-lisp/checkdoc.el
@@ -334,12 +334,9 @@ This should be set in an Emacs Lisp file's local variables."
;; "[.!?]" is for noun at end of a sentence, since those chars
;; are symbol syntax in emacs-lisp-mode and so don't match \\_>.
;; The \" allows it to be the last sentence in a docstring too.
- (let ((expr "\\_<\\(")
- (l checkdoc-proper-noun-list))
- (while l
- (setq expr (concat expr (car l) (if (cdr l) "\\|" ""))
- l (cdr l)))
- (concat expr "\\)\\(\\_>\\|[.!?][ \t\n\"]\\)"))
+ (concat "\\_<"
+ (regexp-opt checkdoc-proper-noun-list t)
+ "\\(\\_>\\|[.!?][ \t\n\"]\\)")
"Regular expression derived from `checkdoc-proper-noun-regexp'.")
(defvar checkdoc-common-verbs-regexp nil