branch: externals/relint
commit 0627d4dbf56de54ddd0508a77d794a8b56ce34f9
Author: Mattias Engdegård <matti...@acm.org>
Commit: Mattias Engdegård <matti...@acm.org>

    Simplify (and speed up) string scanning regexp
    
    By trusting the strings to be lexically correct, we don't need an
    elaborate pattern for handling \C-\M-something. This reduces backtracking.
---
 relint.el | 12 ++++--------
 1 file changed, 4 insertions(+), 8 deletions(-)

diff --git a/relint.el b/relint.el
index 6c67dcc..f0557c4 100644
--- a/relint.el
+++ b/relint.el
@@ -2198,14 +2198,10 @@ STRING-START is the start of the string literal (first 
double quote)."
         (goto-char (match-end 0))
         (while (not (looking-at (rx (or ?\" eot))))
           (when (looking-at
-                 (rx (1+ (or (seq
-                              ?\\ (any "0-9" "xuUN" "abfnrtv"
-                                       "des" "^" " "
-                                       ?\\ ?\n ?\"))
-                             (seq
-                              (1+ ?\\ (any "CM") "-")
-                              (or (not (any ?\\))
-                                  (seq ?\\ anything)))
+                 (rx (1+ (or (seq ?\\ (any "0-9" "xuUN" "abfnrtv"
+                                           "des" "^" " "
+                                           ?\\ ?\n ?\"
+                                           "CM"))
                              (not (any ?\\ ?\"))))))
             (goto-char (match-end 0)))
           (when (eq (following-char) ?\\)

Reply via email to