aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMattias EngdegÄrd2020-06-21 21:11:17 +0200
committerMattias EngdegÄrd2020-06-22 09:51:17 +0200
commit62426057310b2332037a26e6f70cd5cc8b2e3a11 (patch)
tree3379cf1077cd25b4c04f1a02956d3344ce3f8ad8
parent73daab99914b4972a7cd167b03102be4c68e83e5 (diff)
downloademacs-62426057310b2332037a26e6f70cd5cc8b2e3a11.tar.gz
emacs-62426057310b2332037a26e6f70cd5cc8b2e3a11.zip
Fix spurious error in beginning-of-defun in pascal-mode (bug#41740)
* lisp/progmodes/pascal.el (pascal-beg-of-defun): Ignore errors in forward-sexp. * test/lisp/progmodes/pascal-tests.el (pascal-beg-of-defun): New test.
-rw-r--r--lisp/progmodes/pascal.el2
-rw-r--r--test/lisp/progmodes/pascal-tests.el8
2 files changed, 9 insertions, 1 deletions
diff --git a/lisp/progmodes/pascal.el b/lisp/progmodes/pascal.el
index b0191c029b9..fce059bafc7 100644
--- a/lisp/progmodes/pascal.el
+++ b/lisp/progmodes/pascal.el
@@ -589,7 +589,7 @@ See also `pascal-comment-area'."
589 (interactive) 589 (interactive)
590 (catch 'found 590 (catch 'found
591 (if (not (looking-at (concat "\\s \\|\\s)\\|" pascal-defun-re))) 591 (if (not (looking-at (concat "\\s \\|\\s)\\|" pascal-defun-re)))
592 (forward-sexp 1)) 592 (ignore-errors (forward-sexp 1)))
593 (let ((nest 0) (max -1) (func 0) 593 (let ((nest 0) (max -1) (func 0)
594 (reg (concat pascal-beg-block-re "\\|" 594 (reg (concat pascal-beg-block-re "\\|"
595 pascal-end-block-re "\\|" 595 pascal-end-block-re "\\|"
diff --git a/test/lisp/progmodes/pascal-tests.el b/test/lisp/progmodes/pascal-tests.el
index 10d6e0433d0..ed4c6fb03e0 100644
--- a/test/lisp/progmodes/pascal-tests.el
+++ b/test/lisp/progmodes/pascal-tests.el
@@ -52,4 +52,12 @@
52 (should (equal completions nil)) 52 (should (equal completions nil))
53 (should (equal point-before point-after)))))) 53 (should (equal point-before point-after))))))
54 54
55(ert-deftest pascal-beg-of-defun ()
56 (with-temp-buffer
57 (pascal-mode)
58 (insert "program test; procedure p(")
59 (forward-char -1)
60 (pascal-beg-of-defun)
61 (should (equal (point) 15))))
62
55(provide 'pascal-tests) 63(provide 'pascal-tests)